图像修复3: Free-Form Image Inpainting with Gated Convolution

此文与图像修复2中review过的论文一样, 出至Adobe同一人之手.

主要创新点

  • 提出门控卷积解决普通卷积将所有输入像素都视为有效像素的问题, 在每一个通道的每一个空间位置的所有层中动态特征选择.
  • 提出了一种新颖的GAN鉴别器SN-PatchGAN,设计用于自由形式的图像修复. 因为原始的local GANs 和golbal GANs 要求输出是矩形

Gated Convolution

首先简单谈谈使用传统卷积的不足: 对于普通卷积, 在所有空间位置 $(x,y)$ 都应用相同的滤波器来提取局部特征. 对于图像分类等任务是有效的, 但对于图像修复, 输入特征由孔外有效像素以及孔内无效像素构成, 这在训练过程中引起歧义,并导致视觉伪像,例如颜色差异,模糊和明显的边缘响应.

对于NVIDIA提出的部分卷积, 作者认为有以下不足:

  • 启发式地将所有空间位置分类为有效或无效, 无论上一层mask范围覆盖了多少像素,下一层的mask都将设置为1(例如, 将1个有效像素和9个有效像素视为相同, 以更新当前mask)
  • 与额外的用户输入不兼容. 针对用户指导的图像修复系统, 在该系统中,用户可以有选择地在mask内提供稀疏草图作为条件通道. 在这种情况下, 应将这些像素位置视为有效还是无效?如何正确更新下一层的mask?
  • 对于部分卷积, 无效像素将在深层中逐渐消失, 从而将所有蒙版值逐渐转换为一个. 但是文中的研究表明,如果允许网络自己学习最佳蒙版,则网络将软掩膜值分配给每个空间位置
  • 每层中的所有通道共享相同的掩码, 限制了灵活性. 部分卷积可以看作是硬门控单通道不可学习层乘以每个输入特征图.

门控卷积数学公式如下:

$\sigma$ 为sigmoid 激活将门控值控制在0-1之间. φ 为任意的激活函数 $W_g, W_f$ 为两个不同的卷积核.

Spectral-Normalized Markovian Discriminator

由于使用local gan和golbal gan 不能适用于任意的mask 输入. 对于判别器, 其中输入包括图像, 掩码, 和引导通道, 输出是形状R的3-D特征. 如上图所示, 堆叠了六个步幅的卷积, 核大小为5, 步长为2, 以捕获马尔可夫斑块的特征统计信息. 然后, 直接将GAN应用于此特征图中的每个特征元素, 以关注输入图像的不同位置和不同语义. 在训练环境中, 输出图中每个点的感受野仍然可以覆盖整个输入图像,因此不需要全局判别器.

result

ref

paper