AAAI2020中做inpainting的论文。现有的基于深度学习的图像修复/补全算法没有很好地去挖掘图像中的一些先验信息,比如图像中的物体的边缘、轮廓及语义等结构性信息。如果预先已知这些结构信息将有助于图像修复,生成视觉上或感知上更合理、更sharp的图像。该论文的主要创新就在于探索如何在图像修复的过程中,将这些结构性知识嵌入其中。
论文比较创新的地方是,使用了一种新型的attention机制。该注意力机制实际类似于何凯明等提出的非局部平均网络(Non-local Mechanism)[1]或Goodfellow等提出的Self-Attention[2]。其输出特征图位置处的响应为整个输入特征图中特征的加权和,并使用特征相似度来衡量权重或注意力得分。通过这种注意力机制,可以将来自周围图像区域的相似特征转移到缺失区域,以此细化生成的内容和结构(例如平滑伪影和增强细节)。该注意力层结构如下图所示。
为在图像修复过程中学习融入图像的结构知识,该文作者特别设计了一种新的金字塔图像结构损失,来监督结构的生成和特征嵌入,从而将结构信息融入到生成过程中。具体来说,就是在网络预测结构输出后(也即上文提到的sobel梯度图),在不同尺度的结构输出上构建两个L1损失项:(1)预测的梯度图与真实的梯度图L1损失;(2)关于边缘结构的L1正则化项。
第(2)正则损失项的设计也是该论文的巧妙之处。为了引导网络学习预测图像中的边缘或轮廓结构,一般直接的做法就是预测边缘或轮廓,如图像修复模型[3]和[4]。而本论文中,作者没有直接去预测可能的边缘,而是先去预测sobel梯度图。因为该梯度图中是包含有边缘信息(边缘提取算法canny就是在梯度图中提取可能的边缘,如梯度较大的位置就是潜在的边缘处),因此,只需要预测该梯度图,就能预测边缘结构。为了更好地引导网络学习预测边缘结构,论文中进一步引入隐式正则化项,即在该梯度图中真实的边缘处(论文中使用了canny算子在原图中提取的边缘位置作为真实的边缘)赋予更多的损失权重。
作者进一步解释了这种间接的方式更适合当前多任务框架中的原因。一方面,由于图像的边缘结构通常是稀疏的,只包含图像的二值轮廓信息,因此在生成过程的最后几个阶段,生成这样的边缘结构与图像生成任务几乎没有共同的特征,因此,必须设计用于边缘生成任务的特定的网络层,这样引入更多参数。另一方面,梯度图本身不仅传递了可能的边缘信息,而且还代表了纹理信息或高频细节,这对于精细纹理合成是非常重要的。