Print

发布时间: 2019-03-16
摘要点击次数:
全文下载次数:
DOI: 10.11834/jig.180408
2019 | Volume 24 | Number 3




    ChinaMM 2018    




  <<上一篇 




  下一篇>> 





深度学习图像修复方法综述
expand article info 强振平1, 何丽波2, 陈旭1, 徐丹2
1. 西南林业大学大数据与智能工程学院, 昆明 650224;
2. 云南大学信息学院, 昆明 650091

摘要

目的 图像修复是计算机视觉领域研究的一项重要内容,其目的是根据图像中已知内容来自动地恢复丢失的内容,在图像编辑、影视特技制作、虚拟现实及数字文化遗产保护等领域都具有广泛的应用价值。而近年来,随着深度学习在学术界和工业界的广泛研究,其在图像语义提取、特征表示、图像生成等方面的应用优势日益突出,使得基于深度学习的图像修复方法的研究成为了国内外一个研究热点,得到了越来越多的关注。为了使更多研究者对基于深度学习的图像修复理论及其发展进行探索,本文对该领域研究现状进行综述。方法 首先对基于深度学习图像修复方法提出的理论依据进行分析;然后对其中涉及的关键技术进行研究;总结了近年来基于深度学习的主要图像修复方法,并依据修复网络的结构对现有方法进行了分类,即分为基于卷积自编码网络结构的图像修复方法、基于生成式对抗网络结构的图像修复方法和基于循环神经网络结构的图像修复方法。结果 在基于深度学习的图像修复方法中,深度学习网络的设计和训练过程中的损失函数的选择是其重要的内容,各类方法各有优缺点和其适用范围,如何提高修复结果语义的合理性、结构及细节的正确性,一直是研究者们努力的方向,基于此目的,本文通过实验分析总结了各类方法的主要特点、存在的问题、对训练样本的要求、主要应用领域及参考代码。结论 基于深度学习图像修复领域的研究已经取得了一些显著进展,但目前深度学习在图像修复中的应用仍处于起步阶段,主要研究的内容也仅仅是利用待修复图像本身的图像内容信息,因此基于深度学习的图像修复仍是一个极具挑战的课题。如何设计具有普适性的修复网络,提高修复结果的准确性,还需要更加深入的研究。

关键词

图像修复; 深度学习; 卷积神经网络; 生成式对抗网络; 循环神经网络; 深度卷积自编码器网络

Survey on deep learning image inpainting methods
expand article info Qiang Zhenping1, He Libo2, Chen Xu1, Xu Dan2
1. College of Big Data and Intelligent Engineering, Southwest Forestry University, Kunming 650224, China;
2. School of Information Science and Engineering, Yunnan University, Kunming 650091, China
Supported by: National Natural Science Foundation of China (11603016, 61540062)

Abstract

Objective Inpainting is the process of reconstructing lost or deteriorated parts of images and videos. This reconstruction process is an important research area in the field of computer vision, and its purpose is to automatically repair lost content according to the known content of the images and videos. Inpainting has extensive application value in the fields of image editing, film and television special effect production, virtual reality, and digital cultural heritage protection. Deep learning has been widely studied in the academic and industrial fields in recent years. Its advantages in image semantic extraction, feature representation, and image generation have become increasingly prominent, leading to the increasing attention to and popularity of research on image inpainting based on deep learning. This study reviews the current research status of image inpainting based on deep learning to enable researchers to explore its theory and development. Method This paper first discusses the issue of image inpainting and summarizes the advantages and disadvantages of the commonly used methods by comparing their application results in image restoration in large areas. The theoretical basis of image inpainting based on deep learning is then analyzed, and the key technologies of image inpainting based on deep learning, which include the generation network based on auto encoder, the general training methods of deep network, and the training methods based on convolutional auto encoder network, are studied. This paper also summarizes some image inpainting methods based on deep learning that have been proposed in recent years and classifies these methods into three categories according to the architecture of their repairing network:image inpainting methods based on deep convolutional auto encoder architecture, image inpainting methods based on generative adversarial network (GAN) architecture, and image inpainting based on recurrent neural network (RNN) architecture. The basic structure of the generation network based on autoencoder is described, many improved networks and their loss functions are analyzed, and the experimental results based on different loss functions are provided. For the image inpainting methods based on GAN, the basic structure and process architecture of the GAN are described, and the experimental results based on some classical methods are presented. For the image inpainting methods based on RNN, the RNN model is analyzed, especially the methods based on the PixelRNN model, and the experimental results based on MNIST and CIFAR-10 datasets are provided. Result The design of deep learning networks and the selection of training loss functions are important in image inpainting based on deep learning methods. Each method has its merits, demerits, and application ranges. However, the main direction of the research is how to improve the rationality of semantics, the correctness of structure, and the detail of the repaired image. On the basis of this purpose, this paper summarizes and analyzes the characteristics, existing issues, requirements for training samples, application fields, and reference codes of these methods through experiments. Conclusion Although remarkable progress has been made in the field of image inpainting based on deep learning, the application of deep learning in image restoration remains in its infancy research focuses on using own image content information to restore images and still has demerits and own adaptation range. Consequently, image inpainting based on deep learning remains a challenging subject. How to improve the adaptability of the repairing network and the correctness of repairing results still requires further studies. This paper indicates the developing prospects from the following aspects:1) Further research may focus on how to design an adaptive network based on both semantic and texture networks. 2) The quality of inpainting images must be improved by studying the loss function of the repair network; the study of distance measurement based on different application purposes is especially critical. 3) Further research may focus on image inpainting methods of specific types, such as improving the generalization capability of the methods on small datasets through designing targeted training network structure and performing processes, such as fine tuning. 4) As processing power, such as GPUs, increases, the inpainting methods that train high-resolution images directly are also worth studying. 5) For some complex scenes, utilizing human-computer interaction strategies to repair images is still worth studying to promote their practical application and enrich digital image restoration technologies.

Key words

image inpainting; deep learning; convolutional neural network; generative adversarial network; recurrent neural network; deep convolutional auto encoder network

0 引言

基于图像中的已知信息来还原图像中缺失部分的图像修复,起源于艺术手工匠对破损艺术品的复原[1],早期的图像修复方法也主要以艺术工匠修复过程中实际采用的方法(先修复轮廓,再修复细节)为出发点进行研究[1-5],如在设计修复方法时优先考虑边界的连贯性、区域的一致性等。在小的刮痕、小物体去除等方面,这些方法可以取得好的效果。但对较大区域破损图像的修复、图像中大物体的移除等应用,由于这类方法都以局部信息为基础进行扩散修复,很难在这些应用中取得理想的修复结果(如图 1(b)所示)。而本质上,艺术手工匠在修复艺术品的过程中,特别是大区域修复时,最先考虑的肯定是修复对象的高层语义信息(图像内容的具体环境是什么、缺失的是什么对象等问题),然后以其已经积累的大量先验信息为基础进行修补。

图 1 不同类型图像方法修复结果对比示意图
Fig. 1 Qualitative illustration of the task ((a) given an image with a missing hole; (b) result using method of reference[5]; (c) result using method of reference[6]; (d) result using method of reference[24])

对于大区域的修复,有效的方法主要有两类:一类是基于纹理合成技术的方法[6-12],这类方法在纹理细节修复中可以取得好的效果,但是对于图像的全局结构、图像的语义很难捕获(如图 1(c)所示);另一类是基于外部数据库的搜索方法[13],这类方法假定由相似上下文包围的区域可能具有类似的内容,当可以找到与待修复图像具有足够的视觉相似性的样本图像时,这种方法非常有效,但当修复图像在样本数据库中没有很好表示时,会出现错误修复,使得最终的修复效果不理想。

在深度学习的研究中,特别是其中的一种前馈神经网络:卷积神经网络(CNN)的提出[14],由于它的每个人工神经元仅响应一部分覆盖范围内周围的单元,使得CNN网络在大型图像处理中具有出色表现。而近年来,基于CNN的深度学习网络被证明其有能力在高层上捕获图像的抽象信息[15],同时在纹理合成和图像风格转换的研究中[16-17],证明了一个训练好的CNN网络提取的图像特征可以作为目标函数的一部分, 使得一个生成网络生成的图片与目标图片在语义上更加相似。再加上生成式对抗网络(GAN)[18]的广泛研究[19-23],证明了通过对抗训练可以强化生成网络生成图像的视觉效果。基于这些研究背景知识使得基于深度学习的图像修复方法在近期得到了广泛的研究。

而自图像修复方法被广泛研究以来,按照解决该问题采用方法类型的不同,可以分为基于偏微分和变分的方法、基于样本的图像修复方法(起源于纹理合成技术)、基于变换域的图像修复方法以及混合的图像修复方法,基于深度学习的修复方法是近年来提出的一类新兴方法。基于偏微分和变分的方法、基于变换域的方法和混合的方法在小尺寸破损图像修复中能取得较好的修复效果;基于样本的方法在大区域破坏的图像修复中可以取得相对好的结果,特别是待修复区域可以通过已知样本区域很好地表示时非常有效。虽然基于深度学习的修复方法的研究目前尚处于初始阶段,但这类方法具有深度学习技术本身的特点,即堆叠起来的包含大量隐藏层的深度神经网络可以通过海量数据的训练学习得到训练样本间的非线性复杂关系的映射,这正是图像修复中基于图像内容的语义修复所期望解决的问题,特别是在大区域的图像修复中有时可以取得非常惊人的结果(如图 1(d)所示)。

图 1为通过基于偏微分的方法[5]、基于样本的方法[6]和基于深度学习的方法[24]的一个修复结果示例。图 1(a)为增加了掩码的原始图像,图 1(b)为经典的基于Navier Stokes方程方法[5]的修复结果,图 1(c)为基于样本的PatchMatch方法[6]的修复结果(图像处理工具Adobe Photoshop使用该方法作为内容识别填充的方法);图 1(d)为基于深度学习的方法[24]的修复结果。可见,对于该示例, 基于深度学习的方法在保证纹理一致的同时,实现了图像的语义信息修复,取得了最理想的修复结果。

1 相关基础

基于深度学习的图像修复方法类似于使用深度学习技术解决其他问题,都涉及网络结构设计和如何进行网络训练等关键问题。

图像修复的一般过程都是根据已知图像内容修补未知图像区域,对应到深度学习方法的网络结构设计就是需要设计一个网络,基于已知信息生成未知信息。而深度学习方法中生成网络的基础即基于自编码器的生成网络。

1.1 基于自编码器的生成网络

最早的自编码器网络可以看成是一个特殊的三层神经网络模型:输入层、表示层和重构层。该网络的训练是让重构层重构的结果与输入层输入的内容尽可能接近。即首先将输入内容转换到典型的低维空间(编码过程),然后将该低维空间的特征展开以再现初始数据(解码过程)。相对于传统的编码器和解码器,内容自编码器网络免去了人工提取数据特征的巨大工作量,提高了内容特征提取的效率。自编码器网络这一概念最早由Rumelhart等人[25]提出,并将其应用到高维复杂的数据处理。Hinton等人[26]在2006年对原结构进行了改进,由此开启了利用深度学习在学术界和工业界开展各种应用的新时代。经Hinton等人改进的自编码器网络即深度自编码器(DAE)网络,图 2给出了一个5层的深度自编码器网络示意图,其隐层(L2~L4)的节点数目由多到少,再由少到多,最后输出层节点与输入层节点的数目一致。本质上,中间的每层都是原输入的一个表示,最低维度的表示在L3层。

图 2 深度自编码器网络示意图
Fig. 2 Diagram of deep auto encoder network

利用深度自编码器网络结构,对于不同的输入信息(如每幅图像已知内容),可以设定不同的输出信息(如每幅图像的缺失信息)进行训练,这样训练好的网络即建立起了输入信息和输出信息的对应关系。因此网络的训练即成为一个必须考虑的问题。

1.2 深度网络的训练

Bengio等人[27]针对深度置信网络(DBN)提出了非监督贪心逐层训练算法,为解决深层结构相关的优化难题带来希望,在深度网络的训练中,先用无监督逐层贪心训练算法对隐层完成预训练,然后使用反向传播(BP)算法对整个神经网络进行系统性参数优化调整,这种策略显著地降低了神经网络的训练难度,有效地改善了BP算法容易陷入局部最小的不良状况[28]。本质上,DBN与自编码器网络类似,都是学习输入信号的表示,并尽可能地还原原始信号,DBN的特点是可以提取原高维复杂信号的分层特征,并提出一种有效的多层网络的训练方法。该训练方法特别是其中的预训练过程使得深层神经网络的训练变为可能,也是当今深度学习方法最有效的训练方法。

整个DBN网络训练过程包括3步:第1步是预训练,第2步是展开,第3步是微调。在预训练过程中,如图 3所示,其中$\mathit{\boldsymbol{X}}$表示信号,$\mathit{\boldsymbol{W}}, \mathit{\boldsymbol{W'}}$表示网络参数。从输入层开始,将第1个隐层的输出映射到输出层完成第1个隐层的训练,相当于训练了一个自编码器网络,完成第1个隐层训练后将其输出作为新的输入,类似地, 完成第2个隐层的训练。重复该过程,直到完成所有编码部分的隐层训练。通过持续的预训练,DBN与传统的随机初始化深度网络的权值相比,具有了一个较好的权值初始值。第2步为展开过程,如图 4所示,将编码器按照训练过程对应的方式展开,得到解码器。展开后,编码器和解码器共同构成了一个深度自编码器,该深度自编码器的编码器网络参数的初始权值即第1步预训练得到的权值,解码器网络参数的初始值设为预训练过程中映射到输出层的对应网络参数。最后,对整个网络通过多次迭代的方法进行整体微调,优化所有的权值完成网络的训练。

图 3 深度自编码器预训练过程示意图
Fig. 3 Pre-training process diagram of a deep auto encoder
图 4 深度自编码器网络展开过程示意图
Fig. 4 Expansion process diagram of a deep auto encoder

通过对自编码器生成网络、深度学习网络训练的研究,就可以实现通过输入信息生成新信息的网络。但由于每幅图像都包括了成千上万个像素,直接使用深度自编码器网络进行图像修复将非常困难。得益于Lecun等人[14]提出的CNN网络,其通过局部空间的相关性大大减少了参数的数据量,使得反向传播的训练性能大大提升。而传统的CNN网络的训练过程需要采用监督学习的方式,这需要大量的标注数据,代价非常高。

为了避免标注样本的代价,可以采用卷积自编码器网络实现生成网络的训练,利用训练好的生成网络即可实现图像修复。

1.3 卷积自编码器网络的训练

Masci等人[29]提出的卷积自编码网络(CAE),有效地解决了CNN网络需要进行监督学习的困难。CAE不同于传统的自编码网络,其权值在所有神经元之间共享,保持了图像空间的局部性,解码(重建)过程通过图像局部块的线性组合实现。

对于输入图像的一个通道图$\mathit{\boldsymbol{X}}$,假定有$k$个卷积核${\mathit{\boldsymbol{W}}^i}, i = 1, \cdots , k$,每个卷积核有一个偏置$\mathit{\boldsymbol{b}}$,则可以生成$k$个特征图$\mathit{\boldsymbol{h}}$,即

$ {\mathit{\boldsymbol{h}}^i} = \sigma \left( {\mathit{\boldsymbol{X*}}{\mathit{\boldsymbol{W}}^i} + {\mathit{\boldsymbol{b}}^i}} \right), i = 1, \cdots , k $ (1)

在CAE网络中,编码的过程就是按照式(1)逐层卷积的过程。重建时将每幅特征图${\mathit{\boldsymbol{h}}^i}$与其对应的卷积核进行卷积操作并将结果求和,再加上偏置$\mathit{\boldsymbol{c}}$,即

$ \mathit{\boldsymbol{Y = }}\sigma \left( {\sum\limits_{i \in \mathit{\boldsymbol{H}}} {{\mathit{\boldsymbol{h}}^i}*{{\mathit{\boldsymbol{\tilde W}}}^i} + \mathit{\boldsymbol{c}}} } \right) $ (2)

式中,$\mathit{\boldsymbol{H}}$是前一层输出的特征映射组,$\mathit{\boldsymbol{Y}}$为解码结果。需要注意的是在CAE网络中,编码的过程一般是降低维度的过程,解码的过程一般是增加维度的过程,为了保证解码后将数据恢复到原始尺寸,在编码过程中使用的是一般卷积(文献[29]中称为valid convolution),而解码过程的卷积操作从文献[30]开始称为反卷积。在网络的训练过程中,一般采用均方误差(MSE)为代价函数,即为

$ \mathit{\boldsymbol{E}}\left( \mathit{\boldsymbol{\theta }} \right) = \frac{1}{{2n}}\sum\limits_{i = 1}^n {{{\left( {{x_i} - {y_i}} \right)}^2}} $ (3)

式中, $\mathit{\boldsymbol{E}}\left( \mathit{\boldsymbol{\theta }} \right)$是关于$\mathit{\boldsymbol{W}}$$\mathit{\boldsymbol{b}}$的参数。有了代价函数,网络的训练过程即和标准的神经网络一样, 采用反向传播算法计算误差函数相对于参数的梯度,具体为

$ \begin{array}{*{20}{c}} {\frac{{\partial \mathit{\boldsymbol{E}}\left( \mathit{\boldsymbol{\theta }} \right)}}{{\partial {\mathit{\boldsymbol{W}}^i}}} = \mathit{\boldsymbol{X*}}\delta {\mathit{\boldsymbol{h}}^i} + {{\mathit{\boldsymbol{\tilde h}}}^i}*\delta \mathit{\boldsymbol{Y}}}\\ {i = 1, \cdots , k} \end{array} $ (4)

有了基于卷积的深度自编码器网络及其训练方法,即可以将该结构应用到图像修复,仅仅是输入和输出的内容有所不同,输入的是图像中的已知部分,输出的是图像的未知部分,在网络训练过程中,可以通过选定图像中已知的一部分假定为未知部分,通过图像的其余部分学习生成假定的未知部分。

基于以上深度学习生成网络的基础,近年来提出了许多基于深度学习的图像修复方法[24, 31-51],这些方法根据深度学习的网络结构可以分为3类:第1类方法,也是研究最多的方法,即基于卷积自编码网络结构的深度学习图像修复方法[24, 31-44];第2类方法是基于GAN(generative adversarial network)网络结构的修复方法[45-49];第3类是基于循环神经网络(RNN)结构的图像修复方法[50-51]。也有一些研究将这些图像修复方法应用到图像处理的其他领域,如文献[52]中使用在文献[31, 35, 45]中提出的3种修复方法对X射线胸片图像进行修复增强处理,从而验证了通过修复的结果可以对胸片中的异常病情进行有效地检测;在文献[53]中,提出了一种使用图像修复内容为引导的多幅图像合成方法,实现了基于不同图像内容的全局一致性图像合成;文献[54]中,提出了一种采用统一时空谱的深度卷积神经网络修复框架,实现了遥感图像中缺失数据的重建。这些图像修复方法的提出和基于这些方法不同应用研究的开展,促使了对基于深度的图像修复方法的总结。

2 基于卷积自编码的图像修复方法

最初,Pathak等人[31]提出了一种命名为Context Encoder的网络用于图像修复,其类似于自编码网络[27, 29, 55],也是一种编码—解码过程的网络,网络结构如图 5所示,这种网络结构也被广泛应用到图像的风格迁移[56]、图像生成[57-58]、图像的超分辨率重建[58]、图像着色[59]、图像分割[60]、基于视频的预测[61]等视频图像处理工作。其前半部分是一系列逐层下采样的处理,而后半部分是类似于前半部分的一个逆操作,即在编码过程中逐渐降低图像的尺度,在解码过程中逐渐增大图像的尺度,最终形成了一个类似“沙漏”的网络结构。

图 5 Context Encoder网络结构图
Fig. 5 Context Encoder inpainting framework

在此结构上,不同的应用根据最终应用的目的增加不同的约束进行CNN网络的训练。在最初的编码—解码图像修复方法中作者使用欧氏距离和对抗损失作为约束进行训练。由于欧氏距离是最小化所有输入与输出的平均值,这必然会引起模糊。在文献[31, 35, 58]中,作者也验证了仅仅使用预测值和实际像素值之间的欧氏距离作为损失函数训练的网络生成的图片趋向于模糊,因此,在Context Encoder方法中,Pathak等人增加了一项对抗损失,主要就是通过判别生成的修复区域图像是来自生成器还是真实的图像,使得整个结果更加真实(输出的结果具有更多的边缘,结构更加合理),通过增加这个对抗损失的约束,原文中取得更加逼真的修复结果。但这个对抗损失约束依然会存在问题:一方面,这个约束仅仅判断了修复区域的真实性,这不能正则化修复图像的全局结构,即不能保证修复区域和已知区域的一致性;另一方面,这个对抗损失是对修复区域内图像真伪的判断,在进行反向传播时很难对修复区域以外的区域产生直接影响,这会造成修复区域边界像素值的不连续性,在Context Encoder网络中,Pathak等人也发现了该问题,并通过增加边缘区域的权重值使得这个问题得到一定程度的解决。

为了生成更加合理的人脸图像,文献[33]中将Context Encoder网络中的对抗损失称为局部对抗损失${\mathit{\boldsymbol{D}}_1}$,并增加了一项新的对抗损失,称为全局对抗损失${\mathit{\boldsymbol{D}}_{\rm{g}}}$,即将修复区域补全到原图后再判断整个修复图像的真伪,这个损失就可以在保证生成的内容更加真实的同时,也能够保持在边界区域上像素值的连续。文献[33]也验证了通过使用全局和局部图像的对抗训练,可以改善生成人脸图像的质量。增加了局部对抗损失和全局对抗损失的网络结构如图 6所示。

图 6 增加局部、全局对抗损失的网络训练结构图
Fig. 6 Image inpainting framework based on auto encoder with local discriminator and global discriminator

采用这类基于深度卷积自编码网络结构的修复方法根据解码器解码结果大小又可以分为两个子类:第1个子类的解码器以生成损失区域图像块为目的进行训练[24, 31-33];第2个子类的解码器生成包括原图像已知部分和破损区域的整个图像[34]。即第1个子类的编码—解码网络的输入、输出图像的大小不一致,输入是包括破损区域的整幅图像,输出的仅是破损区域;第2个子类的编码—解码网络的输入、输出图像的分辨率一致,都是整幅图像的大小。

进一步,许多研究人员基于编码—解码网络结构提出了许多改进方法,如文献[35]提出的方法将修复过程分成了两个编码解码的步骤(本质上是两个深度卷积自编码器网络):第1步的网络被称为粗糙网络,基于${\mathit{\boldsymbol{L}}_2}$距离进行训练得到修复区域粗精度的修复结果; 第2步称为精细网络,通过该网络对第1步的结果进行纹理细节增强,精细网络的训练则是通过局部对抗损失${\mathit{\boldsymbol{D}}_1}$和全局对抗损失${\mathit{\boldsymbol{D}}_{\rm{g}}}$进行训练。类似地在文献[42]中,也将修复过程网络划分为两个步骤:第1步称为图像到特征的网络,用于修复粗精度的图像特征,第2步称为特征到图像的网络,用于实现高分辨率的图像修复。为了使得修复的结果纹理更加真实,纹理合成的方法也增加到图像修复结构中,文献[24]方法即增加纹理合成的思想到编码—解码结构的修复网络,具体以低分辨率图像修复的结果(使用Context Encoder网络)作为内容约束项,并利用纹理约束的多尺度神经网络图像块合成方法进行高分辨率图像修复。

图 7给出了一组基于自编码网络结构使用不同损失函数的修复结果对比图。图 7(a)为增加了掩码的原始图像,图 7(b)为仅仅由${\mathit{\boldsymbol{L}}_2}$损失函数训练后的修复结果,图 7(c)为通过${\mathit{\boldsymbol{L}}_2}$${\mathit{\boldsymbol{D}}_1}$两个损失函数训练后的修复结果,图 7(d)为通过${\mathit{\boldsymbol{L}}_2}$${\mathit{\boldsymbol{D}}_1}$${\mathit{\boldsymbol{D}}_{\rm{g}}}$3个损失函数训练后的修复结果。可见图 7(b)有明显模糊,图 7(c)里有更多的边界轮廓内容;相对于图 7(b), 图 7(c)具有更多的细节信息;而图 7(d)相对于图 7(c)具有更好的全局一致性视觉效果。在基于深度卷积自编码网络结构的修复方法中除了使用${\mathit{\boldsymbol{L}}_2}$${\mathit{\boldsymbol{D}}_1}$${\mathit{\boldsymbol{D}}_{\rm{g}}}$损失外,其他如语义感知对抗损失等方法[38]也被提出,这类方法在具有明显语义结构的图像修复中可以取得好的结果。

图 7 基于自编码网络结构不同损失函数修复结果对比图
Fig. 7 Completion results under different settings of loss functions
((a) original image with inpainting mask; (b) result from network with loss ${\mathit{\boldsymbol{L}}_2}$; (c) result from network with loss ${\mathit{\boldsymbol{L}}_2}+{\mathit{\boldsymbol{D}}_1}$; (d) result from network with loss ${\mathit{\boldsymbol{L}}_2}+{\mathit{\boldsymbol{D}}_1}+{\mathit{\boldsymbol{D}}_{\rm{g}}}$)

此外,基于编码—解码过程的基本思想,一方面,一些混合网络结构的方法被提出用于图像修复,如文献[36]中,先用CNN网络提取图像的细节和全局特征,再使用修复CNN网络计算修复图像块与原图像块的特征信息差异训练修复网络。另一方面,在基本的网络结构上,考虑在图像分割中使用的U-Net结构[62]取得了非常精确的分割结果,这种结构通过增加将高分辨率特征传递到后边对称的上采样层以补充编码过程中丢失的相关特征。在文献[37]中,也通过增加这种跳跃式的连接(skip connections)将编码阶段提取的特征增加到生成修复阶段,使得最终的生成图像和输入图像具有更加相近的细节分辨率。

3 基于GAN的图像修复方法

自2014年10月Goodfellow等人[18]提出了一个通过对抗过程生成模型的框架开始,GAN网络就成为近年来在无监督学习复杂分布中最具前景的方法之一。而其最初给研究人员的感性认识就是“无中生有”(可以通过噪声生成数据库中不存在的同类型物体),具有强大的图像生成能力,因此使用GAN网络进行图像中破损区域的生成也成为研究人员探索的一个方向。

GAN网络的基本结构如图 8所示。主要包括一个生成模型$\mathit{\boldsymbol{G}}$和一个判断模型$\mathit{\boldsymbol{D}}$。判断模型$\mathit{\boldsymbol{D}}$本质上是一个分类器,它判断输入的图像是来自数据集的真实图像,还是网络创建的假图像,其模块单元基本上就是一个表现为CNN形式的二元分类器。生成模型$\mathit{\boldsymbol{G}}$主要是通过反卷积神经网络将随机输入值转化为图像。

图 8 GAN的网络结构图
Fig. 8 Network architecture of GAN

采用GAN网络实现图像的修复,在训练阶段,首先不考虑图像的破损问题,即训练过程中采用未破损的数据进行GAN网络训练。当完成训练后,意味着生成模型$\mathit{\boldsymbol{G}}$具备了由噪声信号$\mathit{\boldsymbol{z}}$(分布为${P_{\rm{z}}}$)按照分布为${P_{\rm{data}}}$的样本生成新图像的能力。则对于一个破损的图像$\mathit{\boldsymbol{I}}$的修复就可以变换为通过生成模型$\mathit{\boldsymbol{G}}$生成一个与图像$\mathit{\boldsymbol{I}}$已知部分足够相似的新样本的过程,为了达到这个目的,需要对新生成的图像进行迭代修改,修改的依据即破损的图像$\mathit{\boldsymbol{I}}$的已知部分与生成模型生成的新样本的对应部分要尽可能相似。图 9给出了基于GAN的图像修复过程框架。

图 9 基于GAN网络的图像修复结构图
Fig. 9 The framework for image inpainting based on GAN

图 9中,通过噪声信号$\mathit{\boldsymbol{z}}$生成新的样本,对新的样本通过两个损失进行迭代处理,具体包括通过判断模型$\mathit{\boldsymbol{D}}$计算先验损失以避免生成不合理的图像,通过计算生成样本与待修复图像的已知区域的差异计算内容损失以期生成的样本与待修复的图像足够相似。如在文献[45]中,具体通过生成的图$\mathit{\boldsymbol{G}}\left( \mathit{\boldsymbol{z}} \right)$与待修复图$\mathit{\boldsymbol{I}}$中对应已知位置像素值的差作为惩罚项得到内容损失

$ {\mathit{\boldsymbol{L}}_{\rm{c}}}(\mathit{\boldsymbol{z}}|\mathit{\boldsymbol{I}}, \mathit{\boldsymbol{M}}) = {\left\| {\mathit{\boldsymbol{M}} \odot (\mathit{\boldsymbol{G}}(\mathit{\boldsymbol{z}}) - \mathit{\boldsymbol{I}})} \right\|_1} $ (5)

式中, $\mathit{\boldsymbol{M}}$为修复掩码,$ \odot $为逐点相乘,式(5)采用了1范数度量差异,采用不同的距离度量方式都是可取的。这样通过对$\mathit{\boldsymbol{G}}\left( \mathit{\boldsymbol{z}} \right)$增加类似式(5)的惩罚项即可以迭代地修复图像。采用类似的方法,在文献[46]中,Dolhansky等人针对人眼实现了修复。图 10给出了文献[45]方法迭代1 000次修复结果的例图。图 11给出一组基于GAN的图像修复方法迭代求解的过程示意图。

图 10 基于图 9网络结构迭代1 000次修复示例图
Fig. 10 An inpainting result in 1 000th iteration based on framework in Fig. 9 ((a) original image; (b) input image; (c) generated image; (d) inpainted result)
图 11 GAN[45]迭代求解过程示意图
Fig. 11 Diagrammatic sketch of image inpainting iterative solution process based on GAN[45]

基于GAN结构的图像修复方法与基于自编码结构的图像修复方法具有明显的不同,基于GAN结构的图像修复方法是通过生成器直接生成待修复的图像,输入可以是随机噪声,而基于自编码结构的图像修复方法是通过整个破损图像进行修复区域的生成。

在基于GAN结构的图像修复方法的训练阶段,除了基于像素值的惩罚项外,文献[47]中使用已经预训练好的分类网络的分类错误作为惩罚项,对修复区域、整幅修复后的图像进行分类辨别实现网络的训练,验证了采用这类全局语义损失函数的方式可以有效地促进图像的修复细节。在文献[48]中,采用图像的结构熵作为损失函数的内容进行网络的训练,结果表明这类方法可以保证修复结果图像的结构连贯性。文献[49]在基于GAN修复网络中增加了修复对象的语义条件(比如人脸结构)指导修复生成过程,使得修复结果的整体语义更为合理。

采用GAN网络的图像修复在低分辨率图像,特别是特定类型的图像修复中可以取得好的效果,但是对于高分辨率的图像修复,GAN的训练非常困难,特别是对于图像中内容不相似的情况则更加难以收敛。

4 基于RNN的图像修复方法

循环神经网络(RNN)是一种可以提供一系列条件分布共享参数的模型,可以表示输出与之前输入内容的相关性,即“输出”依赖于“输入”和上一个时间点的“记忆”。图 12是一个RNN的结构示意图,$x$是输入,$o$是输出,$U$$V$$W$都是权值,$s$是记忆。图 12右边为对左边的展开,可见在$t$时刻的输出受到$t - 1$时刻的参数${s_{t - 1}} \times W$$t$时刻的输入${x_t} \times U$的共同影响,即与传统的神经网络相比,RNN多了一份对过去的记忆,用于表示当前时刻的结果是该时刻输入及所有历史参数共同作用的结果。如果将这种时间序列对应到图像空间,即可以建立空间尺度上图像像素分布的关系,基于RNN的图像修复正是采用了这种策略。

图 12 循环神经网络结构示意图
Fig. 12 Schematic diagram of recurrent neural network structure

基于RNN的这种网络结构,谷歌团队在2016年的国际机器学习大会中提出了一种PixelRNN模型[50]用于图像修复,取得了非常好的修复结果。文献[63]中,类似的结构被应用到图像的超分辨率重建也取得了好的结果。

PixelRNN模型本质上是一种改进了的2维循环神经网络,并利用该模型对大规模自然图像进行建模,捕获图像整个像素分布相关的概率特征,即完成对自然图像的分布进行建模。在修复阶段顺序沿着两个空间维度来预测图像中的像素。

具体构建模型的依据是将图像中像素点的联合概率分布使用条件分布表示,对于一个分辨率为$n \times n$的输入图像$\mathit{\boldsymbol{I}}$的概率分布$\mathit{\boldsymbol{P}}\left( \mathit{\boldsymbol{I}} \right)$,可以将2维图像$\mathit{\boldsymbol{I}}$按照行展开成一个1维的序列${i_1}, {i_2}, \cdots , {i_{{n^2}}}$进行处理。则图像$\mathit{\boldsymbol{I}}$的联合概率分布$\mathit{\boldsymbol{P}}\left( \mathit{\boldsymbol{I}} \right)$可以通过图像上像素点的条件概率分布的乘积表示,即

$ \mathit{\boldsymbol{P}}\left( \mathit{\boldsymbol{I}} \right) = \prod\limits_{k = 1}^{{n^2}} {\left( {{i_k}\left| {{i_1}, \cdots , {i_{k = 1}}} \right.} \right)} $ (6)

通过式(6)即可以完成图像的联合概率分布训练,基于训练好的图像联合概率分布$\mathit{\boldsymbol{P}}\left( \mathit{\boldsymbol{I}} \right)$将待修复图像上的像素点按顺序输入,根据已经输入的像素信息即可以生成下一个像素值,完成图像中缺失像素的填充。即根据图像中已知的前面像素值(如从左上角开始)来预测接下来的像素值。

实际中如果按照式(6)条件概率的链式法则进行训练是不现实的,因为按照式(6),当前像素点的概率分布和前面所有的像素点都有依赖关系。对于大尺度彩色图像的生成,还需要考虑多个颜色通道,同时每个像素点的不同颜色通道的取值又有很多量级(如一般图像每个颜色通道具有256个量级),这会使得训练的概率密度非常复杂。一种有效的解决方法就是采用CNN,即要生成当前点,先考虑周围已知像素点的情况,再对其周围的点进行部分卷积(仅仅对其前边的像素点进行卷积)。由于CNN网络的依赖主要靠感受野,而式(6)当前点的依赖范围是其之前的所有点,如果要增大卷积的感受野只能依赖于增加网络的深度或者增大卷积核,这些都会使得网络的训练难度增大,另外,文献[64]验证了由于CNN网络的感受野与激活函数等都有关,也不会像实际设定的感受野那么大。

为了解决这一问题,文献[50]中通过长短期记忆网络(LSTM)显式地添加上下文的依赖关系,进一步提出了两种基于LSTM的网络构架:一种是Row LSTM,这种构架通过一行一行地并行训练网络,可以有效地提高训练速度;另一种是Diagnoal BiLSTM,相对于Row LSTM,Diagnoal BiLSTM中当前点的依赖区域为一个漏斗形状,Diagnoal BiLSTM使得当前点的显式依赖和其前的所有点(图像按行展开,当前像素点之前的所有像素点)相关。

图 13是一组通过PixelRNN模型的修复结果。根据不同的参数,给出了6组修复结果。在MNIST和CIFAR-10数据集上,PixelRNN模型的几种构架被验证能够显著提升修复结果的质量,但是本质上PixelRNN模型还是序列化地生成像素,一方面对于高分辨率的图像概率分布将非常复杂,原文也仅在分辨率为32×32像素和64×64像素的图像上进行了实验;另一方面,考虑不同颜色通道之间的关系会使得训练更加困难,如果不考虑的话会使得修复区域的颜色信息不够清晰。

图 13 PixelRNN[50]模型修复结果图
Fig. 13 Inpainting results based on PixelRNN[50]
((a) images to be inpainted; (b) various inpainting references; (c) lossless original images)

由于计算的复杂性,基于RNN结构的图像修复方法相对较少,最近,斯坦福大学的深度学习与计算机视觉课程教学中[51],提出了一种新的行展开的网络结构(flattened row LSTM),被验证结果优于PixelRNN模型,但对于大尺度的图像依然存在训练困难的问题。

5 基于深度学习的图像修复方法分析

基于深度学习的图像修复方法将是未来解决图像修复问题的主要研究方向,现有的3类方法在理论研究和实际应用等环节都取得了一些成果,但各类方法都各有其优缺点,本节将通过实验对这3类方法各自的特点、存在的问题和应用领域进行分析。

5.1 基于卷积自编码的图像修复方法实验分析

采用图 6包括${\mathit{\boldsymbol{L}}_2}$${\mathit{\boldsymbol{D}}_1}$${\mathit{\boldsymbol{D}}_{\rm{g}}}$ 3个损失的网络,使用Paris数据集[65]进行网络训练(分辨率为128×128像素的输入样本,训练生成输入样本中间64×64像素的空洞区域),Paris数据集包括6 392幅可用图像,使用同样以巴黎为图像内容的Paris Street View库提供的100张测试图片进行图像修复测试。图 14给出了部分测试图片的修复结果,图 14(a)为增加了掩码的待修复图像,图 14(b)为对应的修复结果图,可见,修复结果中区域连贯,生成了符合图像语义的内容。

图 14 基于卷积自编码网络的低分辨率图像修复结果图
Fig. 14 Low resolution image inpainting results based on convolutional auto encoder network
((a) masked images; (b) inpainted results)

进一步随机从ImageNet数据集中选择160 000幅图像对图 6网络进行训练,采用文献[24]的方法完成高分辨率图像(512×512像素)的修复,结果如图 15所示,修复结果在保证轮廓边缘连贯的同时,保持了视觉全局的一致性。

图 15 基于卷积自编码网络的高分辨率图像修复结果图
Fig. 15 High resolution images inpainting based on convolutional auto encoder network ((a) masked images; (b) inpainted results)

5.2 基于GAN的图像修复方法实验分析

GAN作为一种具有自监督学习能力的生成网络,可以针对某一特定类型图像的对抗训练使得生成模型$\mathit{\boldsymbol{G}}$具有生成该类型图像的能力,最成功的应用即生成逼真的人脸图像。

基于DCGAN网络[21]在CelebA数据集[66]上训练人脸生成模型,CelebA数据集包括了202 599幅人脸图像,通过训练后的生成模型$\mathit{\boldsymbol{G}}$可以通过100维的向量生成一幅64×64×3像素的彩色人脸图像。进一步采用文献[45]的方法,对随机选取的64幅测试样本人脸图像进行修复,部分结果如图 16所示,图 16(a)是样本图像,图 16(b)是增加掩码的待修复图像,图 16(c)是迭代1 000次生成的与待修复图像最相似的人脸图像,图 16(d)是修复结果图像。可见,通过GAN网络确实可以生成与待修复样本图像非常相似的新图像,但修复结果有时会不理想,如图 16(d)中的第4行图像所示。

图 16 基于GAN网络的人脸图像修复结果图
Fig. 16 Face images inpainting based on GAN network
((a) original images; (b) masked images; (c) generated images; (d) inpainted images)

5.3 基于RNN的图像修复方法实验分析

基于RNN的图像修复方法本质是用图像像素点的条件概率分布的乘积表示图像的概率分布,修复过程即通过最大化概率来填充丢失的像素。因此,由于像素值的范围、图像通道数量等使得高分辨率样本集的训练非常困难,现有的方法虽然有对MNIST、CIFAR-10和ImageNet数据集训练的结果,但是训练前都将样本图像处理到较小的分辨率,如32×32像素或64×64像素进行训练。

图 17是一组将ImageNet数据集样本预处理分辨率为32×32像素的样本训练PixelRNN网络,进一步基于不同参数进行图像的修复。文献[50]也验证了对于内容丰富的大样本数据集,基于RNN的网络不是特别合适,这主要是由于:一方面如果将高分辨率的图像都预处理为低分辨率图像会出现模糊现象,对于丰富的样本不能很好地表示,训练的网络最终生成的结果也将不理想;另一方面,如果对较高分辨率图像直接进行处理,当前GPU设备的存储器和计算能力都不能满足。

图 17 基于RNN网络的图像修复结果图[50]
Fig. 17 Images inpainting based on RNN network[50]

文献[51]验证了当前采用LSTM网络建立的图像概率分布模型在图像生成方面的能力不如基于CNN的模型,这主要是由于在建立图像的概率分布时,LSTM网络仅仅参考了当前像素点一个方向(如左上角)的信息。因此,基于RNN的图像修复需要设计更合理的网络模型以克服这一问题。

5.4 基于深度学习的图像修复方法总结

随着深度学习在视觉领域取得的卓越成效,基于深度学习的图像修复方法也已初见成效。本节通过对各类方法的实验分析,对基于深度学习的图像修复方法进行了总结,如表 1所示。

表 1 基于深度学习图像修复方法总结
Table 1 A summary of image inpainting methods based on deep learning

下载CSV
方法主要特点存在的问题训练样本主要应用领域可参考代码
基于卷积自编码的图像修复方法研究最广泛,可处理高分辨率图像;参数简单,网络结构扩展性强;如果训练生成同分辨率的网络则可以方便修复图像的任何区域纹理修复有困难可以在几千幅特定类型的图像数据集上收敛;也可以在数万幅多样性样本的图像数据集上收敛自然图像修复http://people.eecs.berkeley.edu/
~pathak/context_encoder/

http://harryyang.org/inpainting/?i=1
http://hi.cs.waseda.ac.jp/~iizuka/
projects/completion/en/
基于GAN的图像修复方法可以生成清晰、真实的样本图像;在缺失大量数据时可以取得好的修复结果会出现轮廓不连续的问题,有时训练收敛比较困难特定类型的样本;低分辨率样本特定类型图像的清晰修复http://www.isle.illinois.edu/~yeh17/projects/semantic_inpaint/index.
html

https://github.com/Avhirup/Semantic-Image-Completion
基于RNN的图像修复方法可以生成结构连贯的修复结果图像修复结果容易出错;现有结构对于高分辨率、大样本数据集不理想特定类型的样本;低分辨率样本特定类型图像的多样性修复https://github.com/
carpedm20/pixel-rnn-tensorflow

https://github.com/
igul222/pixel_rnn

6 结论

随着社会日益数字化的趋势,图像、视频数量急剧增加,深度学习在图像修复的应用中已经受到了学术界和工业界越来越多的重视,基于深度学习的图像修复研究已经成为当前的研究热点。但基于以上对现有方法的讨论可以看到,目前深度学习在图像修复中的应用仍处于起步阶段,在未来将会有很多更有效、更广泛的尝试,下面基于对深度学习应用到图像修复的理解,提出关于发展前景的若干展望。

1) 虽然深度神经网络对于高维复杂映射具有强大的逼近能力,可以有效地提取图像中的语义。但是对于图像修复,要在准确地获得图像语义的同时,能够清晰地修复细节,这就要求基于深度学习的图像修复网络除了能够捕获语义成分外,还需要能够合成纹理成分。因此,如何设计结合语义网络和纹理网络的网络结构,建立起更加普遍的图像先验模型的网络有待进一步研究。

2) 深度神经网络的损失函数直接关系到修复结果的评价标准,现有方法主要以欧氏距离、对抗损失等作为损失函数的内容,对于特定的对象(如人脸),有基于结构语义的损失函数。但犹如对抗损失由最初的交叉熵表示形式到最近广泛研究的Wasserstein距离[23]表示形式的改变,图像的语义信息本身是否也有更为有效的表示方法,特别是图像修复时关注的边界结构部分是否有特定的损失函数,用于促进训练的收敛都需进一步研究。因此,图像修复网络损失函数的研究,不仅可以提升网络训练的收敛速度,还会提升图像修复的质量,这是一个很有意义的研究方向。

3) 训练样本的设计,虽然深度学习具有强大的表示能力,但是图像修复往往会有一些专业的应用,比如壁画修复、人脸修复等等,这其实是期望训练的网络对于某一个特定问题可以取得好的结果,而且对于特定的问题,比如壁画由于其自身的特点,颜色种类、纹理细节等都有一定的规律,而这类特定问题的样本数据量一般更小,因此,需要针对性地设计训练样本。进一步可以修改已训练好的深度网络结构并进行Fine-tune等处理,以提升在小数据集上的泛化能力。当前,已经有研究人员进行了人脸图像修复的尝试[33, 49],这些方法对于其他领域问题的解决有一定的借鉴意义,可以进一步有针对性地展开研究。

4) 当前直接使用深度神经网络的图像修复主要限于直接用低分辨率图像进行网络训练,而高分辨率图像修复方法相对比较困难,一方面针对各种网络结构的快速训练被广泛研究[67-68],另一方面近年来GPU的计算能力有了显著提升。因此直接对高分辨率图像进行训练的修复方法也值得研究。

另外,目前基于深度学习的图像修复技术考虑的主要是全自动修复,在一些复杂场景图像修复中,通过一些人机交互或者利用指定同类图像指导修复等策略也值得研究,从而可以进一步推动它的实际应用,丰富数字图像修复技术。

参考文献

  • [1] Bertalmio M, Sapiro G, Caselles V, et al. Image inpainting[C]//Proceedings of the 27th Annual Conference on Computer Graphics and Interactive Techniques. New York, USA: ACM, 2000: 417-424. [DOI: 10.1145/344779.344972]
  • [2] Shen J H, Chan T F. Mathematical models for local nontexture inpaintings[J]. SIAM Journal on Applied Mathematics, 2002, 62(3): 1019–1043. [DOI:10.1137/S0036139900368844]
  • [3] Shen J H, Kang S H, Chan T F. Euler's elastica and curvature-based inpainting[J]. SIAM Journal on Applied Mathematics, 2003, 63(2): 564–592. [DOI:10.1137/S0036139901390088]
  • [4] Tsai A, Yezzi A, Willsky A S. Curve evolution implementation of the Mumford-Shah functional for image segmentation, denoising, interpolation, and magnification[J]. IEEE Transactions on Image Processing, 2001, 10(8): 1169–1186. [DOI:10.1109/83.935033]
  • [5] Bertalmio M, Bertozzi A L, Sapiro G. Navier-stokes, fluid dynamics, and image and video inpainting[C]//Proceedings of 2001 IEEE Computer Society Conference on Computer Vision and Pattern Recognition. Kauai, HI, USA: IEEE, 2001: 355-362. [DOI: 10.1109/CVPR.2001.990497]
  • [6] Barnes C, Shechtman E, Finkelstein A, et al. PatchMatch: a randomized correspondence algorithm for structural image editing[J]. ACM Transactions on Graphics, 2009, 28(3). [DOI:10.1145/1531326.1531330]
  • [7] Criminisi A, Perez P, Toyama K. Object removal by exemplar-based inpainting[C]//Proceedings of 2003 IEEE Computer Society Conference on Computer Vision and Pattern Recognition. Madison, WI, USA: IEEE, 2003: 721-728. [DOI: 10.1109/CVPR.2003.1211538]
  • [8] Komodakis N. Image completion using global optimization[C]//Proceedings of 2006 IEEE Computer Society Conference on Computer Vision and Pattern Recognition. New York, USA: IEEE, 2006: 442-452. [DOI: 10.1109/CVPR.2006.141]
  • [9] Komodakis N, Tziritas G. Image completion using efficient belief propagation via priority scheduling and dynamic pruning[J]. IEEE Transactions on Image Processing, 2007, 16(11): 2649–2661. [DOI:10.1109/TIP.2007.906269]
  • [10] Qiang Z P, He L B, Xu D. Exemplar-based pixel by pixel inpainting based on patch shift[C]//Proceedings of the 2nd CCF Chinese Conference on Computer Vision. Tianjin, China: Springer, 2017: 370-382. [DOI: 10.1007/978-981-10-7302-1_31]
  • [11] Liu H M, Bi X H, Ye Z F, et al. Arc promoting image inpainting using exemplar searching and priority filling[J]. Journal of Image and Graphics, 2016, 21(8): 993–1003. [刘华明, 毕学慧, 叶中付, 等. 样本块搜索和优先权填充的弧形推进图像修复[J]. 中国图象图形学报, 2016, 21(8): 993–1003. ] [DOI:10.11834/jig.20160803]
  • [12] Zeng J X, Wang C. Image completion based on redefined priority and image division[J]. Journal of Image and Graphics, 2017, 22(9): 1183–1193. [曾接贤, 王璨. 基于优先权改进和块划分的图像修复[J]. 中国图象图形学报, 2017, 22(9): 1183–1193. ] [DOI:10.11834/jig.170054]
  • [13] Hays J, Efros A A. Scene completion using millions of photographs[J]. ACM Transactions on Graphics, 2007, 26(3): #4. [DOI:10.1145/1276377.1276382]
  • [14] Lecun Y, Bottou L, Bengio Y, et al. Gradient-based learning applied to document recognition[J]. Proceedings of the IEEE, 1998, 86(11): 2278–2324. [DOI:10.1109/5.726791]
  • [15] Vinyals O, Toshev A, Bengio S, et al. Show and tell: a neural image caption generator[C]//Proceedings of 2015 IEEE Conference on Computer Vision and Pattern Recognition. Boston, MA, USA: IEEE, 2015: 3156-3164. [DOI: 10.1109/CVPR.2015.7298935]
  • [16] Gatys L A, Ecker A S, Bethge M. Texture synthesis using convolutional neural networks[C]//Proceedings of the 28th International Conference on Neural Information Processing Systems. Montreal, Canada: ACM, 2015: 262-270.
  • [17] Gatys L A, Ecker A S, Bethge M. Image style transfer using convolutional neural networks[C]//Proceedings of 2016 IEEE Conference on Computer Vision and Pattern Recognition. Las Vegas, NV, USA: IEEE, 2016: 2414-2423. [DOI: 10.1109/CVPR.2016.265]
  • [18] Goodfellow I J, Pouget-Abadie J, Mirza M, et al. Generative adversarial nets[C]//Proceedings of the 27th International Conference on Neural Information Processing Systems. Montréal, Canada: ACM, 2014: 2672-2680.
  • [19] Mirza M, Osindero S. Conditional generative adversarial nets[EB/OL]. 2014-11-06[2018-06-19]. https: //arxiv.org/pdf/1411.1784.pdf.
  • [20] Arjovsky M, Bottou L. Towards principled methods for training generative adversarial networks[EB/OL]. 2017-01-17[2018-06-19]. https://arxiv.org/pdf/1701.04862.pdf.
  • [21] Radford A, Metz L, Chintala S. Unsupervised representation learning with deep convolutional generative adversarial networks[EB/OL]. 2015-11-19[2018-06-19]. https://arxiv.org/pdf/1511.06434.pdf.
  • [22] Berthelot D, Schumm T, Metz L. Began: boundary equilibrium generative adversarial networks[EB/OL]. 2017-03-31[2018-06-19]. https://arxiv.org/pdf/1703.10717.pdf.
  • [23] Arjovsky M, Chintala S, Bottou L. Wasserstein GAN[EB/OL]. 2017-01-26[2018-06-19]. https://arxiv.org/pdf/1701.07875.pdf.
  • [24] Yang C, Lu X, Lin Z, et al. High-resolution image inpainting using multi-scale neural patch synthesis[C]//Proceedings of 2017 IEEE Conference on Computer Vision and Pattern Recognition. Honolulu, HI, USA: IEEE, 2017: 4076-4084. [DOI: 10.1109/CVPR.2017.434]
  • [25] Rumelhart D E, Hinton G E, Williams R J. Learning internal representations by error propagation[M]//Anderson J A, Rosenfeld E. Neurocomputing: Foundations of Research. Cambridge: MIT Press, 1988: 318-362.
  • [26] Hinton G E, Salakhutdinov R R. Reducing the dimensionality of data with neural networks[J]. Science, 2006, 313(5786): 504–507. [DOI:10.1126/science.1127647]
  • [27] Bengio Y, Lamblin P, Popovici D, et al. Greedy layer-wise training of deep networks[C]//Proceedings of the 19th International Conference on Neural Information Processing Systems. Canada: ACM, 2006: 153-160.
  • [28] Hinton G E, Osindero S, Teh Y W. A fast learning algorithm for deep belief nets[J]. Neural Computation, 2006, 18(7): 1527–1554. [DOI:10.1162/neco.2006.18.7.1527]
  • [29] Masci J, Meier U, Cireşan D, et al. Stacked convolutional auto-encoders for hierarchical feature extraction[C]//Proceedings of the 21st International Conference on Artificial Neural Networks. Espoo, Finland: Springer, 2011: 52-59. [DOI: 10.1007/978-3-642-21735-7_7]
  • [30] Zeiler M D, Taylor G W, Fergus R. Adaptive deconvolutional networks for mid and high level feature learning[C]//Proceedings of 2011 International Conference on Computer Vision. Barcelona, Spain: IEEE, 2011: 2018-2025. [DOI: 10.1109/ICCV.2011.6126474]
  • [31] Pathak D, Krähenbühl P, Donahue J, et al. Context encoders: feature learning by inpainting[C]//Proceedings of 2016 IEEE Conference on Computer Vision and Pattern Recognition. Las Vegas, NV, USA: IEEE, 2016: 2536-2544. [DOI: 10.1109/CVPR.2016.278]
  • [32] Demir U, Ünal G. Inpainting by deep autoencoders using an advisor network[C]//Proceedings of the 25th Signal Processing and Communications Applications Conference. Antalya, Turkey: IEEE, 2017: 1-4. [DOI: 10.1109/SIU.2017.7960317]
  • [33] Li Y J, Liu S F, Yang J M, et al. Generative face completion[C]//Proceedings of 2017 IEEE Conference on Computer Vision and Pattern Recognition. Honolulu, HI, USA: IEEE, 2017: 5892-5900. [DOI: 10.1109/CVPR.2017.624]
  • [34] Iizuka S, Simo-Serra E, Ishikawa H. Globally and locally consistent image completion[J]. ACM Transactions on Graphics, 2017, 36(4). [DOI:10.1145/3072959.3073659]
  • [35] Yu J H, Lin Z, Yang J M, et al. Generative image inpainting with contextual attention[C]//Proceedings of IEEE Conference on Computer Vision and Pattern Recognition. Salt Lake City, USA: IEEE, 2018: 5505-5514.
  • [36] Laube P, Grunwald M, Franz M O, et al. Image inpainting for high-resolution textures using CNN texture synthesis[EB/OL]. 2017-12-08[2018-06-19]. https://arxiv.org/pdf/1712.03111.pdf.
  • [37] Yan Z Y, Li X M, Li M, et al. Shift-Net: image inpainting via deep feature rearrangement[EB/OL]. 2018-01-29[2018-06-19]. https://arxiv.org/pdf/1801.09392.pdf.
  • [38] Li H F, Li G B, Lin L, et al. Context-aware semantic inpainting[EB/OL]. 2017-12-21[2018-06-19]. https://arxiv.org/pdf/1712.07778.pdf.
  • [39] Yang C, Song Y H, Liu X F, et al. Image inpainting using block-wise procedural training with annealed adversarial counterpart[EB/OL]. 2018-03-23[2018-06-19]. https://arxiv.org/pdf/1803.08943.pdf.
  • [40] Song Y H, Yang C, Shen Y J, et al. SPG-Net: segmentation prediction and guidance network for image inpainting[EB/OL]. 2018-05-09[2018-06-19]. https://arxiv.org/pdf/1805.03356.pdf.
  • [41] Liu G L, Reda F A, Shih K J, et al. Image inpainting for irregular holes using partial convolutions[EB/OL]. 2018-04-20[2018-06-19]. https://arxiv.org/pdf/1804.07723.pdf.
  • [42] Song Y H, Yang C, Lin Z, et al. Contextual-based image inpainting: infer, match, and translate[EB/OL]. [2018-06-19]. https://arxiv.org/pdf/1711.08590.pdf.
  • [43] Demir U, Unal G. Patch-based image inpainting with generative adversarial networks[EB/OL]. 2018-03-20[2018-06-19]. https://arxiv.org/pdf/1803.07422.pdf.
  • [44] Kolouri S, Pope P E, Martin C E, et al. Sliced-wasserstein autoencoder: an embarrassingly simple generative model[EB/OL]. 2018-04-05[2018-06-19]. https://arxiv.org/pdf/1804.01947.pdf.
  • [45] Yeh R A, Chen C, Lim T Y, et al. Semantic image inpainting with deep generative models[C]//Proceedings of 2017 IEEE Conference on Computer Vision and Pattern Recognition. Honolulu, HI, USA: IEEE, 2017: 6882-6890. [DOI: 10.1109/CVPR.2017.728]
  • [46] Dolhansky B, Ferrer C C. Eye in-painting with exemplar generative adversarial networks[EB/OL]. 2017-12-11[2018-06-19]. https://arxiv.org/pdf/1712.03999.pdf.
  • [47] Elad A, Kerzhner Y, Romano Y. Image inpainting using pre-trained classification CNN[R]. Haifa, Israel: Israel Institute of Technology, 2018. [DOI: 10.13140/RG.2.2.33013.68327]
  • [48] Altinel F, Ozay M, Okatani T. Deep structured energy-based image inpainting[EB/OL]. 2018-01-24[2018-06-19]. https://arxiv.org/pdf/1801.07939.pdf.
  • [49] Lahiri A, Jain A, Biswas P K, et al. Improving consistency and correctness of sequence inpainting using semantically guided generative adversarial network[EB/OL]. 2017-11-16[2018-06-19]. https://arxiv.org/pdf/1711.06106.pdf.
  • [50] Oord A V D, Kalchbrenner N, Kavukcuoglu K. Pixel recurrent neural networks[C]//Proceedings of the 33rd International Conference on Machine Learning. New York, USA: JMLR, 2016: 1747-1756.
  • [51] Burlin C, Le Calonnec Y, Duperier L. Deep image inpainting[EB/OL]. 2017-07-02[2018-06-19]. http://cs231n.stanford.edu/reports/2017/pdfs/328.pdf.
  • [52] Sogancioglu E, Hu S, Belli D, et al. Chest X-ray inpainting with deep generative models[EB/OL]. 2018-04-12[2018-06-19]. https://openreview.net/forum?id=HJzbN-2oz.
  • [53] Zhao Y N, Price B, Cohen S, et al. Guided image inpainting: replacing an image region by pulling content from another image[EB/OL]. 2018-03-22[2018-06-19]. https://arxiv.org/pdf/1803.08435.pdf.
  • [54] Zhang Q, Yuan Q Q, Zeng C, et al. Missing data reconstruction in remote sensing image with a unified spatial-temporal-spectral deep convolutional neural network[J]. IEEE Transactions on Geoscience and Remote Sensing, 2018, 56(8): 4274–4288. [DOI:10.1109/TGRS.2018.2810208]
  • [55] Bengio Y. Learning deep architectures for AI[J]. Foundations and Trends® in Machine Learning, 2009, 2(1): 1–127. [DOI:10.1561/2200000006]
  • [56] Johnson J, Alahi A, Li F F. Perceptual losses for real-time style transfer and super-resolution[C]//Proceedings of the 14th European Conference on Computer Vision. Amsterdam, The Netherlands: Springer, 2016: 694-711. [DOI: 10.1007/978-3-319-46475-6_43]
  • [57] Wang X L, Gupta A. Generative image modeling using style and structure adversarial networks[C]//Proceedings of the 14th European Conference on Computer Vision. Amsterdam, The Netherlands: Springer, 2016: 318-335. [DOI: 10.1007/978-3-319-46493-0_20]
  • [58] Yoo D, Kim N, Park S, et al. Pixel-level domain transfer[C]//Proceedings of the 14th European Conference on Computer Vision. Amsterdam, The Netherlands: Springer, 2016: 517-532. [DOI: 10.1007/978-3-319-46484-8_31]
  • [59] Zhang R, Isola P, Efros A A. Colorful image colorization[C]//Proceedings of the 14th European Conference on Computer Vision. Amsterdam, The Netherlands: Springer, 2016: 649-666. [DOI: 10.1007/978-3-319-46487-9_40]
  • [60] Badrinarayanan V, Kendall A, Cipolla R. SegNet: a deep convolutional encoder-decoder architecture for image segmentation[J]. IEEE Transactions on Pattern Analysis and Machine Intelligence, 2017, 39(12): 2481–2495. [DOI:10.1109/TPAMI.2016.2644615]
  • [61] Zhou Y P, Berg T L. Learning temporal transformations from time-lapse videos[C]//Proceedings of the 14th European Conference on Computer Vision. Amsterdam, The Netherlands: Springer, 2016: 262-277. [DOI: 10.1007/978-3-319-46484-8_16]
  • [62] Ronneberger O, Fischer P, Brox T. U-Net: convolutional networks for biomedical image segmentation[C]//Proceedings of the 18th International Conference on Medical Image Computing and Computer-Assisted Intervention. Munich, Germany: Springer, 2015: 234-241. [DOI: 10.1007/978-3-319-24574-4_28]
  • [63] Dahl R, Norouzi M, Shlens J. Pixel recursive super resolution[EB/OL]. 2017-02-02[2018-06-19]. https://arxiv.org/pdf/1702.00783.pdf.
  • [64] Luo W J, Li Y J, Urtasun R, et al. Understanding the effective receptive field in deep convolutional neural networks[C]//Proceedings of the 29th Conference on Neural Information Processing Systems. Barcelona, Spain: NIPS, 2016: 4898-4906. [DOI: 10.1007/s11042-018-5704-3]
  • [65] Doersch C, Singh S, Gupta A, et al. What makes Paris look like Paris?[J]. ACM Transactions on Graphics, 2012, 31(4). [DOI:10.1145/2185520.2185597]
  • [66] Liu Z W, Luo P, Wang X G, et al. Deep learning face attributes in the wild[C]//Proceedings of 2015 IEEE International Conference on Computer Vision. Santiago, Chile: IEEE, 2015: 3730-3738. [DOI: 10.1109/ICCV.2015.425]
  • [67] Liu S F, Pan J S, Yang M H. Learning recursive filters for low-level vision via a hybrid neural network[C]//Proceedings of the 14th European Conference on Computer Vision. Amsterdam, The Netherlands: Springer, 2016: 560-576. [DOI: 10.1007/978-3-319-46493-0_34]
  • [68] Salimans T, Karpathy A, Chen X, et al. Pixelcnn++: improving the pixelcnn with discretized logistic mixture likelihood and other modifications[EB/OL]. 2017-01-19[2018-06-19]. https://arxiv.org/pdf/1701.05517.pdf.