From Stamped to Clean: Transforming Watermarked Images into Clear Visuals

Have you wondered how you can remove watermarks from images using Python? It’s very simple! You should know Python and have a basic knowledge of computer vision models like CNN & TensorFlow DL framework to follow architectures if you are interested!! Please make sure that you read the copyright laws of the images you want to remove watermarks before you run the code.


Steps to follow –

  1. Create a new Google Colab notebook. Change the runtime to T4 GPU to enhance computing power to run the inference pipeline.

  2. Install Conda packages, create and activate the Conda environment
    Since Google Colab uses the latest Tensorflow & Python versions and this project uses tensorflow=1.15.0 which is supported by Python 3.6, install miniconda inside the Colab environment

<span># set pythonpath </span><span>%</span><span>env</span> <span>PYTHONPATH</span> <span>=</span> <span># /env/python </span>
<span># Set up miniconda and set the path '/usr/local' </span><span>!</span><span>wget</span> <span>https</span><span>:</span><span>//</span><span>repo</span><span>.</span><span>anaconda</span><span>.</span><span>com</span><span>/</span><span>miniconda</span><span>/</span><span>Miniconda3</span><span>-</span><span>py38_4</span><span>.</span><span>12.0</span><span>-</span><span>Linux</span><span>-</span><span>x86_64</span><span>.</span><span>sh</span>
<span>!</span><span>chmod</span> <span>+</span><span>x</span> <span>Miniconda3</span><span>-</span><span>py38_4</span><span>.</span><span>12.0</span><span>-</span><span>Linux</span><span>-</span><span>x86_64</span><span>.</span><span>sh</span>
<span>!</span><span>.</span><span>/</span><span>Miniconda3</span><span>-</span><span>py38_4</span><span>.</span><span>12.0</span><span>-</span><span>Linux</span><span>-</span><span>x86_64</span><span>.</span><span>sh</span> <span>-</span><span>b</span> <span>-</span><span>f</span> <span>-</span><span>p</span> <span>/</span><span>usr</span><span>/</span><span>local</span>
<span>import</span> <span>sys</span>
<span>sys</span><span>.</span><span>path</span><span>.</span><span>append</span><span>(</span><span>'</span><span>/usr/local/lib/python3.8/site-packages</span><span>'</span><span>)</span>
<span># create a new conda environment using Python 3.3 </span><span>!</span><span>conda</span> <span>create</span> <span>-</span><span>n</span> <span>myenv</span> <span>python</span><span>=</span><span>3.6</span>
<span># set pythonpath </span><span>%</span><span>env</span> <span>PYTHONPATH</span> <span>=</span> <span># /env/python </span>
<span># Set up miniconda and set the path '/usr/local' </span><span>!</span><span>wget</span> <span>https</span><span>:</span><span>//</span><span>repo</span><span>.</span><span>anaconda</span><span>.</span><span>com</span><span>/</span><span>miniconda</span><span>/</span><span>Miniconda3</span><span>-</span><span>py38_4</span><span>.</span><span>12.0</span><span>-</span><span>Linux</span><span>-</span><span>x86_64</span><span>.</span><span>sh</span>
<span>!</span><span>chmod</span> <span>+</span><span>x</span> <span>Miniconda3</span><span>-</span><span>py38_4</span><span>.</span><span>12.0</span><span>-</span><span>Linux</span><span>-</span><span>x86_64</span><span>.</span><span>sh</span>
<span>!</span><span>.</span><span>/</span><span>Miniconda3</span><span>-</span><span>py38_4</span><span>.</span><span>12.0</span><span>-</span><span>Linux</span><span>-</span><span>x86_64</span><span>.</span><span>sh</span> <span>-</span><span>b</span> <span>-</span><span>f</span> <span>-</span><span>p</span> <span>/</span><span>usr</span><span>/</span><span>local</span>

<span>import</span> <span>sys</span>
<span>sys</span><span>.</span><span>path</span><span>.</span><span>append</span><span>(</span><span>'</span><span>/usr/local/lib/python3.8/site-packages</span><span>'</span><span>)</span>

<span># create a new conda environment using Python 3.3 </span><span>!</span><span>conda</span> <span>create</span> <span>-</span><span>n</span> <span>myenv</span> <span>python</span><span>=</span><span>3.6</span>
# set pythonpath %env PYTHONPATH = # /env/python # Set up miniconda and set the path '/usr/local' !wget https://repo.anaconda.com/miniconda/Miniconda3-py38_4.12.0-Linux-x86_64.sh !chmod +x Miniconda3-py38_4.12.0-Linux-x86_64.sh !./Miniconda3-py38_4.12.0-Linux-x86_64.sh -b -f -p /usr/local import sys sys.path.append('/usr/local/lib/python3.8/site-packages') # create a new conda environment using Python 3.3 !conda create -n myenv python=3.6

Enter fullscreen mode Exit fullscreen mode

3.Install Packages inside Env.

<span>%%</span><span>shell</span>
<span>eval</span> <span>"</span><span>$(conda shell.bash hook)</span><span>"</span>
<span>conda</span> <span>activate</span> <span>myenv</span>
<span>conda</span> <span>install</span> <span>-</span><span>y</span> <span>tensorflow</span><span>==</span><span>1.15</span> <span>pillow</span> <span>opencv</span> <span>matplotlib</span> <span>pyyaml</span>
<span>conda</span> <span>install</span> <span>-</span><span>y</span> <span>tensorflow</span><span>-</span><span>gpu</span>
<span>pip</span> <span>install</span> <span>--</span><span>upgrade</span> <span>pip</span>
<span>pip</span> <span>install</span> <span>git</span><span>+</span><span>https</span><span>:</span><span>//</span><span>github</span><span>.</span><span>com</span><span>/</span><span>JiahuiYu</span><span>/</span><span>neuralgym</span>
<span>%%</span><span>shell</span>
<span>eval</span> <span>"</span><span>$(conda shell.bash hook)</span><span>"</span>
<span>conda</span> <span>activate</span> <span>myenv</span>
<span>conda</span> <span>install</span> <span>-</span><span>y</span> <span>tensorflow</span><span>==</span><span>1.15</span> <span>pillow</span> <span>opencv</span> <span>matplotlib</span> <span>pyyaml</span>
<span>conda</span> <span>install</span> <span>-</span><span>y</span> <span>tensorflow</span><span>-</span><span>gpu</span>

<span>pip</span> <span>install</span> <span>--</span><span>upgrade</span> <span>pip</span>
<span>pip</span> <span>install</span> <span>git</span><span>+</span><span>https</span><span>:</span><span>//</span><span>github</span><span>.</span><span>com</span><span>/</span><span>JiahuiYu</span><span>/</span><span>neuralgym</span>
%%shell eval "$(conda shell.bash hook)" conda activate myenv conda install -y tensorflow==1.15 pillow opencv matplotlib pyyaml conda install -y tensorflow-gpu pip install --upgrade pip pip install git+https://github.com/JiahuiYu/neuralgym

Enter fullscreen mode Exit fullscreen mode

4.Clone Repo

<span>!</span><span>git</span> <span>clone</span> <span>https</span><span>:</span><span>//</span><span>github</span><span>.</span><span>com</span><span>/</span><span>zuruoke</span><span>/</span><span>watermark</span><span>-</span><span>removal</span>
<span>!</span><span>git</span> <span>clone</span> <span>https</span><span>:</span><span>//</span><span>github</span><span>.</span><span>com</span><span>/</span><span>zuruoke</span><span>/</span><span>watermark</span><span>-</span><span>removal</span>
!git clone https://github.com/zuruoke/watermark-removal

Enter fullscreen mode Exit fullscreen mode

5.Download Model Files from drive and paste them into the /watermark-removal/model directory.

6.Execute Python code to remove the watermark from your istock image. If you have Alamy, Shutterstock, or your custom watermarked images, please add mask.png inside utils/<watermark-type>/<image-type>.

<span>%%</span><span>shell</span>
<span>eval</span> <span>"</span><span>$(conda shell.bash hook)</span><span>"</span>
<span>conda</span> <span>activate</span> <span>myenv</span>
<span>cd</span> <span>watermark</span><span>-</span><span>removal</span>
<span>python</span> <span>main</span><span>.</span><span>py</span> <span>--</span><span>image</span> <span>path</span><span>-</span><span>to</span><span>-</span><span>input</span><span>-</span><span>image</span> <span>--</span><span>output</span> <span>path</span><span>-</span><span>to</span><span>-</span><span>output</span><span>-</span><span>image</span> <span>--</span><span>checkpoint_dir</span> <span>model</span><span>/</span> <span>--</span><span>watermark_type</span> <span>istock</span>
<span>%%</span><span>shell</span>
<span>eval</span> <span>"</span><span>$(conda shell.bash hook)</span><span>"</span>
<span>conda</span> <span>activate</span> <span>myenv</span>

<span>cd</span> <span>watermark</span><span>-</span><span>removal</span>
<span>python</span> <span>main</span><span>.</span><span>py</span> <span>--</span><span>image</span> <span>path</span><span>-</span><span>to</span><span>-</span><span>input</span><span>-</span><span>image</span> <span>--</span><span>output</span> <span>path</span><span>-</span><span>to</span><span>-</span><span>output</span><span>-</span><span>image</span> <span>--</span><span>checkpoint_dir</span> <span>model</span><span>/</span> <span>--</span><span>watermark_type</span> <span>istock</span>
%%shell eval "$(conda shell.bash hook)" conda activate myenv cd watermark-removal python main.py --image path-to-input-image --output path-to-output-image --checkpoint_dir model/ --watermark_type istock

Enter fullscreen mode Exit fullscreen mode


Reference

原文链接:From Stamped to Clean: Transforming Watermarked Images into Clear Visuals

© 版权声明
THE END
喜欢就支持一下吧
点赞14 分享
Don’t hurry say have no choice, perhaps, next intersection will meet hope.
不要急着说别无选择,也许、下个路口就会遇见希望
评论 抢沙发

请登录后发表评论

    暂无评论内容