基于深度学习的图像修复—心中无码

一、前言

图像修复在应用上非常吸引人,通常设计师需要使用 Photoshop 根据图像周围修复空缺部分。这一过程非常耗时和细致,因此很早就有研究尝试使用机器学习模型自动化这一过程。
这篇文章介绍了 DeepCreamPy 项目,它可以自动修复漫画图像中的空缺部分和马赛克。该项目使用部分卷积修复图像不规则空缺的研究。
项目Github:https://github.com/deeppomf/DeepCreamPy
图像修复任务可用图像编辑:移除不需要的图像内容,用合理的图像内容填补移除后的空缺。之前的深度学习方法都聚焦在图像中心的矩形区域,往往依赖昂贵的后处理。而 DeepCreamPy 项目基于的方法提出一种图像修复的新模型,可在不规则的空缺模式上鲁棒地生成有意义的预测(如下图 ),预测结果与图像其余部分完美契合,无需进行额外的后处理或混合操作(blending operation)。
在这里插入图片描述
近期不使用深度学习技术的图像修复方法均使用图像剩余部分的统计信息来填补空缺。

  • PatchMatch [3] 迭代地搜索最适合的图像块来填补空缺。
  • 深度神经网络以端到端的方式学习语义优先(semantic prior)和有意义的隐藏表征
    在这里插入图片描述
    预构建模型下载地址:https://github.com/deeppomf/DeepCreamPy/releases

预训练模型地址:https://drive.google.com/open?id=1byrmn6wp0r27lSXcT9MC4j-RQ2R04P1Z

二、DeepCreamPy 使用方法

2.1. 修复条形空缺

对于你想修复的每个图像,使用图像编辑软件(如 Photoshop 或 GIMP)将你想修复的区域的颜色涂成绿色 (0,255,0)。强烈推荐使用铅笔工具,不要用刷子。如果你没用铅笔,那么确保你所使用的工具关闭了抗锯齿(ANTI-ALIASING)功能。

作者自己使用的是 wand selection 工具(关闭了抗锯齿功能)来选择空缺区域。然后稍微扩展选中区域,并在选中区域上使用绿色 (0,255,0) 的油漆桶工具。

要在 Photoshop 中扩展选中区域,可以执行该操作:Selection > Modify > Expand 或 Contract。要在 GIMP 中扩展选中区域,可执行该操作:Select > Grow。将这些图像保存为 PNG 格式,并保存到 decensor_input 文件夹中。

  • A. 使用二进制编译文件(Windows)
    双击 decensor 文件来修复图像。
  • B. 从头开始运行
    运行以下行进行图像修复:
    $ python decensor.py
    修复后图像将保存至 decensor_output 文件夹。每张图像的修复需要几分钟。
2.2. 修复马赛克空缺部分

和修复条形空缺一样,执行同样的着色步骤,将着色后图像放入 decensor_input 文件夹。此外,将原始、未着色图像放入 decensor_input_original 文件夹,并确保每个原始图像和着色后版本名称一样。

例如,如果原始图像名是 mermaid.jpg,你将其放入 decensor_input_original 文件夹;着色后的图像命名为 mermaid.png,放入 decensor_input 文件夹。

  • A. 使用 binary
    双击 decensor_mosaic 文件修复图像。
  • B. 从头开始运行
    运行以下行进行图像修复:
    $ python decensor.py --is_mosaic=True
    修复后图像将保存至 decensor_output 文件夹。每张图像的修复需要几分钟。

疑难解答
如果你的 decensor 输出如下,则修复区域未能正确着色。
以下是一些好的和坏的着色图像示例。

论文:Image Inpainting for Irregular Holes Using Partial Convolutions
论文链接:https://arxiv.org/pdf/1804.07723.pdf

猜你喜欢

转载自blog.csdn.net/wsp_1138886114/article/details/83591835