会议:CVPR 2019
论文中心思想:将图像修复的过程分为:边界预测(待修复区域覆盖前景、背景区域时,前景物体边界缺失,需要进行精确的预测),内容修复,
概述:
现在的图像修复方法主要的通过周围像素来修复,当修复区域与前景区域有交叠时,由于修复区域缺失前景与背景的时间内容导致修复结果不理想。 为解决该问题,作者提出了a foreground-aware image inpainting system,可明确区分结构推断和内容修复。模型首先预测前景轮廓,然后根据预测发前景轮廓进行区域修复。
1.介绍
现在的的深度学习图像修复都认为,不通过精确的模型结构或前景/背景层去学习,一个生成网路能够预测或理解图像隐藏的结构。
我们的模型明确区分结构推断和内容修复,通过精确的预测边界来指导图像修复,边界修复模块能够在待修复区域推断出合理的结构,图像修复模块根据预测边界来生成图像内容。
论文贡献:1.提出确区分结构推断和内容修复的模型
2.为了推断图像结构(图像边界),提出了边界修复模型来参数精确的图像边界
3.为了高效率完成模型的训练,我们采用curriculum的训练方法来训练结构推断和内容修复的模型
4.实验结果表明修复结果由于现在的模型
2.相关工作
《Image inpainting for irregular holes using partial convolutions.》通过部分卷积的方法预测缺失的像素点
《Free-form image inpainting with gated convolution》通过gated convolutions来自动学习蒙版,实现好的图像修复
《Spg-net: Segmentation prediction and guidance network for image inpainting.》通过语义分割获取前景蒙版,来修复图像
3.方法
由三个模型组成incomplete contour detection module、contour completion module 、image completion module
incomplete contour detection module:自动检测待修复图像的边界
contour completion module:预测损失部分的边界
image completion module:将待修复图像和完整的边界作为输入,预测最终的修复后的图像
3.1数据采集和孔的生成
数据集
由于我们的模型需要训练边界预测模型,所以需要具有边界的数据集;
从已数据集中选择15762张包含至少一个明显物体的自然图像,每张图片都带有精确的语义分割的MASK,将12609张作为训练集,3153张作为测试集,然后通过Sobel在分割的MASK上获得物体边界:
首先:获取 filtered mask Cf
然后:进行简单的二值化处理
孔的制作:任意形状的孔、受限制的任意形状的孔
3.2边界检测
通过DeepCut( A neural network architecture for accurate image segmentation)生成一个具有精确边界的物体蒙版;
由于图像上孔的存在,导致生成的语义分割模板带有噪声,使用二值化孔洞蒙版的方式移除蒙版中被误分类为物体的像素点,再通过连接成分分析进一步移除小集群来获得前景蒙版;
再通过Sobel获得物体的不完整边界;
3.3生成完整边界的模型(生成对抗网络)
目标是生成完整的孔区域(待修复区域)内部缺失的物体边界,
输入:待修复的图像、生成的非完整边界、孔的蒙版
输出:完整的物体边界
生成网络由Coarse Network 和 Refine Network两个网络组成;
损失函数:由于边界图像的稀疏,导致计算损失函数存在不平衡问题,通过计算边界所对应原图来计算损失函数
3.3.1 curriculum的训练方法
问题点:网络训练难度较大
首先,通过内容损失训练完整边界模型,生成一个粗略的边界,再使用对抗损失与内容损失为0.01:1进行训练网络,最后,使用对抗损失与内容损失为1:1进行训练网络。
3.4图像生成模块
输入:待修复的图像、完整的边界、孔蒙版
损失函数
内容损失:
对抗损失(对抗损失仅在Refine Network使用)
3.4.1训练方法
首先、在Places2数据集上进行无完整边界指导的网络训练;
然后、结合完整边界的指导在特定数据集上进行微调;