基于人脸结构信息引导的人脸图像修复网络
1 引言
图像修复是计算机视觉领域研究中一项重要内容,其目的是利用图像修复算法对图像中破损或遮挡的区域进行重建,并填入符合图像语义和视觉常识的数据,生成直观感觉真实存在的图像[1]。
传统的图像修复主要分为基于扩散的方法[2]和基于样本块的方法[3]。基于扩散的方法主要使用修复区域已知的边缘信息,然后向内部待修复区域扩散。这种以迭代扩散的方式在待修复区域进行传导往往只能修复遮挡或破损区域较小的图像,当遮挡或破损区域太大时,其修复结果模糊且语义不连贯。基于样本块的图像修复方法则是从待修复的图像中寻找与缺失区域附近相似的图像块来合成需要修复的区域。这种以搜索方式来填充修复区域图像的方法对于结构单一的图像效果明显,但对于语义结构丰富或者结构纹理复杂的图像,其修复结果十分模糊,并且破坏了原有图像的结构完整性。
近年来,随着深度学习在计算机视觉领域的发展,图像修复领域取得了突破性的进展。图像修复深度学习网络能够通过大量的样本学习生成新的图像信息,特别是随着生成对抗网络[4](Generative adversarial networks,GAN)的出现,图像修复性能得到进一步提升。Pathak等人[5]提出了CE(Context Encoders)算法,首次在图像修复中运用了生成对抗网络来生成新的图像。Iizuka等人[6]在CE的基础上提出了GLCLC(Globally and locally consistent image completion)算法,通过使用全局判别器和局部判别器进行网络模型的训练,最终能够修复较大区域的缺失图像,不足的是生成的图像往往是用背景进行填充,导致修复结果在很多时候结构纹理不连贯。Yu等人[7]提出了CA(Generative Image Inpainting With Contextual Attention)算法,通过引入注意力机制,由粗到细分两阶段进行修复,图像修复性能得到了提升。Nazeri等人[8]提出了EC(EdgeConnect:Generative Image Inpainting with Adversarial Edge Learning)算法,首先生成缺失区域边缘图,然后将边缘图作为人脸修复指导信息送入修复网络中进行修复,获得了比较好的修复结果,但网络在面临大面积缺失情况下存在修复后边缘轮廓不协调的问题。Yang等人[9]提出了LaFIn(LaFIn:Generative Landmark Guided Face Inpainting)算法,首先预测人脸关键点,然后将预测的关键点作为后阶段修复网络的条件指导信息进行人脸修复。Xiong等人[10]提出先预测前景轮廓,再将预测的前景轮廓信息作为条件指导信息进行下阶段修复,缺点是轮廓内部区域修复效果不好。Yang等人[11]提出了多任务学习框架来整合图像结构知识来辅助图像修复,通过将纹理和梯度等信息作为先验指导信息,提升了图像修复纹理细节。Wang等人[12]提出通过语义分割引导图像的修复,提升了图像修复性能,但生成的人脸图像纹理细节上不够清晰。Guo等人[13]提出将图像修复分成纹理合成和结构重建两个子任务,构建了一种新的用于图像修复的双流网络CTSDG(Conditional Texture and Structure Dual Generation),进一步提升了图像修复的性能。
综上所述,目前人脸图像修复的深度学习网络模型仍然存在一些不足,本文受文献[8]的启发,提出了一种基于人脸结构信息引导的人脸图像修复网络,其主要工作如下:
(1)针对修复后的人脸图像面部语义信息不合理和面部轮廓不协调的问题,提出了通过人脸结构信息引导的人脸图像修复网络。
(2)针对本文提出的人脸结构草图生成网络,为了更好地生成待修复区域下的人脸结构草图,在网络生成器中引入了跳跃连接和带膨胀卷积的残差块。为了使成器生成与真实结构草图更相似的结果,在损失函数中引入特征匹配损失,使模型生成的结构草图更加丰富合理。
(3)针对本文提出的人脸修复网络,为了使修复网络在修复时更多地关注缺失区域,在人脸修复网络中引入了注意力机制,并在损失函数中联合感知损失和风格损失,以此更好地重建待修复区域的人脸图像面部轮廓结构和颜色纹理。
2 相关研究
2.1 U-Net网络
U-Net 是由Ronneberger等人提出的一种编码器-解码器网络结构[14],最早主要应用在图像分割领域,后来逐渐被用在图像修复中。其主要思想是输入带有噪声的图像数据,经过下采样编码得到比原始图像小很多的特征图,然后经过一系列上采样解码,在理想状态下经过多次模型参数训练可以去除噪声,还原出真实的原图像。U-Net网络提出了采用跳跃连接的方式将下采样过程中的信息连接到上采样过程中,使得最后输出结果能够充分利用浅层与深层特征,在图像修复中能够更好地还原出缺失区域,U-Net网络结构如
2.2 生成对抗网络
生成对抗网络(GAN)是由Goodfellow等人[4]于2014年提出的,其设计灵感来自于博弈论中的博弈思想,并在深度神经网络中用生成器和判别器来模拟这种思想。
GAN的数学表达式定义为:
其判别器训练的表达式为:
其生成器训练的表达式为:
其中:
3 基于人脸结构信息引导的人脸图像修复网络
本文提出了一种基于人脸结构信息引导的人脸图像修复网络,该网络由人脸结构草图生成网络和人脸修复网络两部分组成。人脸结构草图生成网络通过学习人脸结构先验知识产生待修复区域的人脸结构草图,人脸修复网络以人脸结构草图生成网络生成的结构草图作为条件指导信息进行人脸图像修复。
3.1 人脸结构草图生成网络
人脸结构草图生成网络主要用于生成待修复区域的结构草图,其输入为遮挡人脸图像的灰度图、遮挡人脸图像的结构草图以及掩码,输出为网络生成的人脸结构草图。本文设计的人脸结构草图生成网络整体框架如
结构草图生成网络的生成器基于编码器-解码器结构,主要由3个下采样卷积层、7个带膨胀卷积的残差块、3个上采样卷积层以及从下采样层跳跃连接到上采样层后的特征融合层组成。为了强化结构草图生成网络生成器对待修复区域人脸结构信息的生成能力,在结构草图生成网络生成器的下采样层与上采样层之间加入跳跃连接进行特征融合,这样不仅能够将下采样过程中采集的各个阶段特征信息在上采样过程中进行再次利用,同时也能更好地传递网络浅层到深层的梯度信息,提高网络的训练速度。
其次,在下采样层后引入带膨胀卷积(Dilated Convolution)的残差块[15]用于增加卷积神经元的感受野。膨胀卷积的引入可以使卷积神经元捕捉更大范围的特征信息,从而使生成器在特征传递过程中采集更多人脸的结构先验信息,进而使生成的人脸结构草图更符合人脸拓扑结构。而采用残差块作为生成器的中间层不仅能够避免GAN网络在训练过程中梯度消失的问题,同时也可以将下采样后的信息更多地传递到后面的上采样过程中,提升网络的训练速度和人脸结构草图的生成质量。
最后,在下采样与上采样过程中的每个卷积层与激活层之间都加入实例归一化(IN)层。IN层不仅可以使网络训练更加稳定,还可以加快训练过程中网络模型的收敛速度。
3.2 人脸修复网络
人脸修复网络主要用于生成人脸待修复区域的彩色图像,其输入为遮挡的人脸彩色图像以及人脸结构草图生成网络生成的人脸结构草图,输出为修复好的人脸彩色图像。本文设计的人脸修复网络的整体框架如
人脸修复网络的生成器同样基于编码器-解码器结构,主要由3层下采样层、7个带膨胀卷积的残差块、1个长短期注意力层[16]和3个上采样层以及从下采样层跳跃连接到上采样层后的特征融合层组成。为了能够更有效地利用人脸结构草图生成网络生成的结构草图信息,人脸修复网络在生成器中间阶段除了添加带膨胀卷积的残差块还引入了注意力机制。其中,在人脸修复网络中引入带膨胀卷积残差块的目的与其在结构草图生成网络的作用相似,而在人脸修复网络生成器中加入长短期注意力层(Self-attention Module),除了可以使人脸修复网络在修复过程中更多地关注人脸待修复区域,同时也能有效连接时间特征图,这样能够尽可能地保证修复后的面部轮廓更加协调,同时提升修复区域的面部纹理细节。
在人脸结构草图生成网络和人脸修复网络中,判别器均采用马尔可夫判别器[17](Patch-GAN),它主要由4个卷积层和1个全连接层组成。与其他判别器网络设计不一样的是马尔可夫判别器先输出1个N×N的矩阵,然后通过计算N×N矩阵的均值作为最终的判别输出,这与传统判别器的输出只有1个真假矢量有着本质的区别。马尔可夫判别器输出矩阵中的每个位置能够代表生成图像1个感受野,而每个感受野对应着生成图像中的一部分区域。因此采用马尔可夫判别器能更准确地分辨出生成器生成的图像与真实图像之间的差别,从而更好地调节网络梯度。
其次,为了保证判别器尽可能地关注整个图像结构性并评估生成的图像与真实图像是否一致,本文设计的人脸结构草图生成网络和人脸修复网络只采用了全局判别器作为整个网络的判别器。这是因为局部判别器在鉴别生成的图像与真实图像之间的差别时往往只会关注网络修复后的区域,这样虽然满足了修复区域的一致性,但忽略了图像整体结构的全局性,而人脸拓扑结构和纹理信息往往需要满足整体结构,因此全局判别器可以更好地保证区域结构与整体结构的一致性,从而使生成器生成更加真实生动的人脸图像。
最后,为了防止结构草图生成网络和人脸修复网络在训练过程中发生梯度爆炸,使训练过程能够稳定进行,在判别器中引入了谱归一化[18](Spectral Normalization,SN),以此来提高GAN网络的训练质量。
3.3 损失函数
3.3.1 人脸结构草图生成网络损失函数
设
在
式中,
特征匹配损失
其中:
3.3.2 人脸修复网络损失函数
从上述定义可知,已知区域彩色人脸图像可表示为
为了保证人脸修复结果的面部语义信息合理性以及更好地重建待修复区域的人脸图像面部轮廓结构和颜色纹理,人脸修复网络引入了
式中
生成对抗损失
感知损失
式中
风格损失的定义与感知损失有相似之处,都需要利用预训练好的VGG-19网络将输入的图像映射到高维度特征空间,以此来提取图像的高水平的语义结构特征信息。不同于感知损失,风格损失首先需要利用卷积激活输出特征构建一个Gram矩阵并计算其在通道维度上的相关性,然后在通道维度相关矩阵上计算其欧式距离,最后对图像的纹理风格进行建模。
式中,
最终,可以得到人脸修复网络的总损失为:
式中
4 实验结果与分析
4.1 实验环境和数据集
本文实验环境为Windows 10 64位专业版服务器,其处理器为 Intel(R)Xeon(R)CPU E5-2695 v4 @ 2.10 GHz、内存(RAM)为256 GB、GPU(NVIDA TITAN Xp)共4块,显卡内存为12 GB。软件环境为Pycharm2020、Pytorch1.7、Python3.6、CUDA 10.2等。
实验选用CelebA-HQ数据集[22]中30 000张高清人脸图像对人脸结构草图生成网络和人脸修复网络进行训练和测试,其中26 000张用于训练集,3 000张用于验证集,1 000张用于测试集。训练集、验证集、测试集无任何交集。实验过程中使用的掩码由Liu等人[23]的不规则掩码数据集提供,将数据集中的26 000张用于训练集,3 000张用于验证集,1 000张用于测试集,输入图片大小均为256×256。训练时先分开训练人脸结构草图生成网络和人脸修复网络,然后将人脸结构草图生成网络和人脸修复网络进行联合训练。在训练过程中,采用指数衰减率为
4.2 实验结果定性分析
为了更好地对本文设计的网络模型修复性能进行验证,采用定性分析(主观评价)和定量分析(客观评价)两种方法进行测试。
图 5. 本文模型修复测试结果。(a)原图像;(b)真实面部结构草图;(c)遮挡面部图像;(d)遮挡面部结构草图;(e)生成的结构草图;(f)修复的人脸图像。
Fig. 5. Model repair test results in this paper.(a)Original image;(b)Sketch of real facial structure;(c)Occlusion of the face image;(d)Occlusion sketches of facial structures;(e)Generated structural sketch;(f)Repaired face image.
从
为了更好地展示本文所设计的网络模型的优越性,选取与本文网络模型设计相似的几种深度学习图像修复网络进行定性对比分析实验,其对比方法主要包括文献[8]EC算法、文献[9]LaFIn算法、文献[13]CTSDG算法和本文算法。为了展示在不同掩码下的修复情况,分别采用随机掩膜和中心掩膜进行比较分析。
随机掩膜修复实验的结果如
图 6. 随机掩膜修复实验结果定性比较。(a)原图像;(b)遮挡图像;(c)EC算法;(d)LaFIn算法;(e)CTSDG算法;(f)本文算法。
Fig. 6. Qualitative comparison of experimental results of random mask repair.(a)Original image;(b)Occluded image;(c)EC algorithm;(d)LaFIn algorithm;(e)CTSDG algorithm;(f)Our algorithm.
中心掩膜修复实验的结果如
图 7. 中心掩膜修复实验结果定性比较。(a)原图像;(b)遮挡图像;(c)EC算法;(d)LaFIn算法;(e)CTSDG算法;(f)本文算法。
Fig. 7. Qualitative comparison of experimental results of center mask repair.(a)Original image;(b)Occluded image;(c)EC algorithm;(d)LaFIn algorithm;(e)CTSDG algorithm;(f)Our algorithm.
修复细节实验的结果如
图 8. 定性实验修复细节展示。(a)原图像;(b)EC算法;(c)LaFIn算法(d)CTSDG算法;(e)本文算法。
Fig. 8. Qualitative experimental repair details .(a)Original image;(b)EC algorithm;(c)LaFIn algorithm;(d)CTSDG algorithm;(e)Our algorithm.
4.3 实验结果定量分析
除了定性对比实验,本文还采用以下3种客观指标进行定量分析评价,其评价指标采用峰值信噪比(Peak Signal to Noice Ratio,PSNR)、结构相似性[25](Structural Similarity Index,SSIM)以及弗雷特距离[26](Frecher inception distance,FID),其中PSNR和SSIM的值越高表示修复效果越好,FID的值越低表示修复效果越好[27]。
为了更好地突出本文所提方法的有效性,对不同比例下的掩膜修复情况分别进行了定量比较分析,其结果如
表 1. 不同掩膜下修复实验定量比较结果
Table 1. Quantitative comparison results of repair experiments under different masks
|
4.4 消融实验
为了更好地验证本算法所提出的人脸结构草图引导人脸修复和引人注意力机制的有效性,与基准算法进行了消融实验对比。
图 9. 消融修复实验定性分析。(a)原图像;(b)遮挡图像;(c)基准算法;(d)草图结构引导;(e)草图结构引导+注意力机制。
Fig. 9. Qualitative analysis of ablation repair experiment.(a)Original image;(b)Occluded image;(c)Benchmark algorithm;(d)Sketch structure guidance;(e)Sketch structure guidance+attention mechanism.
从
为了更好地展示消融实验部分不同模块的作用,对以上进行展示的图像进行了定量比较分析,其结果如
表 2. 消融修复实验定量比较结果
Table 2. Quantitative comparison of results of ablation repair experiments
|
5 结论
本文提出了一种基于人脸结构信息引导的人脸图像修复网络。首先,设计了人脸结构草图生成网络用于生成待修复区域的人脸结构草图,并利用生成的人脸结构草图对人脸修复网络进行引导。为了强化结构草图生成网络对缺失区域人脸图像未知结构信息的生成能力,在网络中加入跳跃连接和引入带膨胀卷积的残差块,在损失函数中引入了特征匹配损失,以生成与真实人脸结构草图更相似的结果。其次,在人脸修复网络中加入了注意力机制使修复网络在修复过程中更多关注待修复区域,并联合感知损失和风格损失进行模型训练,从而更好地重建待修复区域的面部轮廓结构和颜色纹理。最后,与几种经典网络进行了定性和定量对比实验,其结果验证了本文设计网络的有效性。此外,本文虽然能够修复正常遮挡区域下的人脸图像,但在人脸存在大幅度倾斜以及低清晰度的图像修复上还存在缺陷,这也是接下来需要重点解决的问题。
[1] 赵露露, 沈玲, 洪日昌. 图像修复研究进展综述[J]. 计算机科学, 2021, 48(3): 14-26.
[2] YAMAUCHIH, HABERJ, SEIDELH P. Image restoration using multiresolution texture synthesis and image inpainting[C]// Proceedings Computer Graphics International 2003. Tokyo: IEEE, 2003: 120-125.
[4] GOODFELLOWI J, POUGET-ABADIEJ, MIRZAM, et al. Generative adversarial nets[C]// Proceedings of the 27th International Conference on Neural Information Processing Systems. Montreal: MIT Press, 2014: 2672-2680.
[18] MIYATOT, KATAOKAT, KOYAMAM, et al. Spectral normalization for generative adversarial networks[C]// Proceedings of the 6th International Conference on Learning Representations. Vancouver: OpenReview. net, 2018.
[21] SIMONYANK, ZISSERMANA. Very deep convolutional networks for large-scale image recognition[C]// Proceedings of the 3rd International Conference on Learning Representations. San Diego, 2015.
[22] KARRAST, AILAT, LAINES, et al. Progressive growing of GANs for improved quality, stability, and variation[C]// Proceedings of the 6th International Conference on Learning Representations. Vancouver: OpenReview.net, 2018.
[27] 罗仕胜, 陈明举, 陈柳, 等. 基于面部特征点的人脸图像修复网络[J]. 中国科技论文, 2021, 16(7): 729-734,742.
Article Outline
石浩德, 陈明举, 侯劲, 李兰. 基于人脸结构信息引导的人脸图像修复网络[J]. 液晶与显示, 2023, 38(2): 245. Hao-de SHI, Ming-ju CHEN, Jin HOU, Lan LI. Face image repair network based on face structure guidance[J]. Chinese Journal of Liquid Crystals and Displays, 2023, 38(2): 245.