采用的一个开源的用于生成图像修复的框架,主要基于 Contextual Attention (CVPR 2018)和 Gated Convolution (ICCV 2019 Oral)
作者源码地址:https://github.com/JiahuiYu/generative_inpainting
1.准备
安装说明如下:
本文只用已经训练好的网络实践该方法的效果,不对该网络进行训练,因此值实践第0和3步。
关于预训练好的网络,作者说明如下:
下载代码文件夹并解压,路径为:"C:\DEV\python\generative_inpainting-master"
预训练好的模型Place2下载后放在其中的model_logs文件夹下
2.运行
打开python文件夹,进入Windows PowerShell
输入如下命令:
其中,运行测试文件的代码行与github上作者给出的说明有所不同,作者再github上给出的代码为:
pthon test.py --image examples/input.png --mask examples/mask.png --output examples/output.png --checkpoint model_logs/your_model_dir
以上这句代码中的蓝色部分分别为图片路径和掩膜图片的路径,在windows运行条件下只认绝对路径,所以要使用绝对路径。橙色部分分别为输出修复后图像的路径和模型的路径,是以使用相对路径的。这里我们使用的是预先训练好的模型Place2,要把其对应的路径model_logs/Places2替换到—checkpoint后边。
图片路径和掩膜图片的路径为:"C:\DEV\python\generative_inpainting-master\examples\places2\case1_output.png"如下图所示:
Input:
Mask:(这里mask背景是透明的,只有被涂抹的水印处是白色)
在对应路径处会生成output
Output如图: