Generative Image Inpainting with Contextual Attention
作者:Jiahui Yu1^11 Zhe Lin2^22 Jimei Yang2^22 Xiaohui Shen2^22 Xin Lu2^22 Thomas S. Huang1^11
单位:1^11University of Illinois at Urbana-Champaign 2^22Adobe Research
会议:CVPR 2018

Abstract
最近的基于深度学习的方法已经显示出了很有前景的结果,用于填补图像中的大缺失区域的挑战性任务。这些方法可以生成视觉上可信的图像结构和纹理,但往往会产生与周围区域不一致的扭曲结构或模糊纹理。这主要是由于卷积神经网络不能从遥远的空间位置显式地借用或复制信息。另一方面,当需要从周围区域借用纹理时,传统的纹理和patch合成方法特别适合。基于这些观察,我们提出了一种新的基于深度生成模型的方法,该方法不仅可以合成新的图像结构,而且在网络训练中会明确地利用周围的图像特征作为参考,从而做出更好的预测。该模型是一种前馈、全卷积神经网络,可以在测试时间内处理任意位置和不同尺寸的多hole图像。在人脸(CelebA, CelebA- hq)、纹理(DTD)和自然图像(ImageNet, Places2)等多个数据集上的实验表明,本文提出的方法比现有方法产生了更高质量的填充结果。代码,demo和模型在https://github.com/JiahuiYu/generative_inpainting。
1. Introduction
不幸的是,这些基于CNN的方法经常会产生与周围区域不一致的边界伪影、扭曲的结构和模糊的纹理。我们发现,这可能是由于卷积神经网络在 建模(model) 远程上下文信息(远离缺失区域的上下文信息)和缺失区域之间的长期相关性(long-term correlations)时变得无效。例如,要允许一个像素受64个像素之外的内容的影响,它至少需要6层3 × 3的卷积,其膨胀系数为2或等效于[15,40]。然而,膨胀卷积从规则和对称网格(regular and symmetric grid)中采样特征,因此可能无法权衡感兴趣的特征。注意,最近的一个工作[38]试图通过优化 生成的patch和已知区域中匹配的patch 之间的纹理相似性来解决外观差异。虽然提高了视觉质量,但该方法需要数百次梯度下降迭代,在GPU上处理分辨率为512 × 512的图像需要花费几分钟时间。
我们为图像修复提出了一个统一的前馈生成网络与一个新颖的上下文注意层(a novel contextual attention layer)。我们提出的网络包括两个阶段。第一阶段是简单的膨胀卷积网络,用重构损失训练出缺失内容。第二阶段协调了上下文的注意(contextual attention)。contextual attention的核心思想是利用已知patch的特征作为卷积过滤器来处理生成的patch。通过卷积将生成的patch与已知的上下文patch进行匹配,通道级(channel-wise)的softmax对相关patch进行加权,依据上下文patch通过反卷积将生成的patch进行重构。contextual attention模块还具有空间传播层,以促进attention的空间一致性。为了让网络产生新内容,我们有与contextual attention平行的另一个卷积通道。这两条路径被聚合并馈入单个解码器以获得最终输出。对整个网络进行从端到端的训练,其中有重构损失和两个Wasserstein GAN损失[1,12],其中一个loss关注全局图像,而另一个则关注缺失区域的局部patch。
我们的贡献总结如下:
- 我们提出了一个新的contextual attention层来明确地联系上遥远空间位置的相关特征patch。
- 在当前生成图像修复网络[15]的基础上,介绍了修复网络增强、全局和局部wgan[12]以及空间discounted重构损失等技术,以提高训练的稳定性和速度。因此,我们可以在一周内训练网络,而不是两个月。
- 我们统一的前馈生成网络在各种具有挑战性的数据集上实现了高质量的修复结果,包括CelebA faces [26], celebaq faces [20], DTD textures [6], ImageNet[32]和Places2[41]。
2. Related Work
2.1. Image Inpainting
2.2. Attention Modeling
3. Improved Generative Inpainting Network
我们首先通过对最新的修复模型[15]进行复制和改进,构建了我们的基线生成图像修复网络,[15]在修复人脸、建筑和自然图像方面显示了很好的视觉效果。
Coarse-to-fine network architecture 改进后的模型的网络架构如图2所示。我们按照[15]中相同的输入输出配置进行训练和测试,即生成网络以一张带有白色像素hole的图像和一个表示hole区域的二进制掩码作为输入对,输出为修复完成的图像。我们将输入与相应的二进制掩模配对,以处理大小、形状和位置不同的hole。网络的输入是一幅256 × 256的图像,在训练过程中随机采样一个矩形缺失区域,然后训练好的模型的输入可以为带有多个hole的不同大小的图像。

在图像修复任务中,接受域的大小应该足够大,Iizuka et al.[15]为此采用了膨胀卷积。为了进一步扩大接受域以及稳定训练,我们引入了两阶段的粗到细网络结构,其中第一个网络进行初始粗预测,第二个网络以粗预测作为输入,预测精细化结果。粗网络采用显式的重构损失训练,精化网络采用重构损失和GAN损失进行训练。从直观上看,细化网络可以看到比缺少区域的原始图像更完整的场景,因此其编码器会学到比粗网络更好的特征表示。这种两阶段网络架构类似于残差学习[14]或深度监督[22]。
此外,为了提高效率,我们的修复网络采用了thin and deep(薄和深的)方案,比[15]的修复网络参数更少。在层实现方面,我们对所有卷积层使用镜像填充(mirror padding),并删除批处理归一化层[16] (我们发现它会破坏颜色一致性)。此外,我们使用ELUs[7]作为激活函数,而不是在[15]中使用的ReLU,并裁剪输出滤波器的值,而不是使用tanh或sigmoid函数。此外,我们发现在[15]中,分离全局和局部特征表示的GAN训练效果比特征拼接更好。更多细节可以在补充材料中找到。
**Global and local Wasserstein GANs ** 受[15]启发,我们将WGAN-GP损失附加到第二阶段精化网络的全局和局部输出,以加强全局和局部一致性。众所周知,WGAN-GP损失在图像生成任务中优于现有的GAN损失,当它与 ℓ1 重建损失结合使用时效果很好,因为它们都使用 ℓ1 距离度量。
具体来说,WGAN 使用 Earth-Mover 距离(又名 Wasserstein-1) W(Pr,Pg)W(P_r,P_g)

本文介绍了一种新型深度学习方法,通过引入上下文注意力层,使图像修复模型能够从远处借取和复制特征,从而显著提升生成图像的质量。研究者在多个数据集上展示了其优于现有技术的修复效果,包括人脸、纹理和自然图像。文章还详细讨论了改进网络结构、GAN损失和重构策略,以提高训练效率和稳定性。
最低0.47元/天 解锁文章
&spm=1001.2101.3001.5002&articleId=119830086&d=1&t=3&u=c415b95cd631412ea33330b959ca4e9e)
989

被折叠的 条评论
为什么被折叠?



