基于深度卷积生成式对抗网络的人脸恢复方法
2020-09-02吴晓燕钱真坤
吴晓燕 钱真坤
(四川文理学院智能制造学院 四川 达州 635000)
0 引 言
图像风格迁移是指在保留原始图像内容的同时,改变其风格的过程。目前,存在很多将任意的艺术风格转换为内容图像的风格转换方法[1-2]。但是,将风格化的图像转换为真实感图像,特别是从风格化人像中恢复真实感人脸照片的方法还不是很多。从风格化人像中恢复出潜在的真实人脸,有助于人脸分析和识别。由于风格化的效果会导致面部轮廓、边缘和纹理信息的部分丢失,以及出现面部扭曲和错位的现象,使得现有的面部标志探测器通常无法正确定位面部标志。因此,从艺术肖像中恢复高质量的真实感图像是一项具有挑战性的难题[3]。
近年来,从草图照片中恢复真实感图像的难题受到了一些研究人员的关注。文献[3]利用对抗网络实现了从草图图像到真实感照片之间的转换问题,可以在不手工设计损失函数的情况下获得较为真实的结果。文献[4]提出一种基于深度条件生成对抗网络(Deep Conditional Generative Adversarial Network,DCGAN)的方法,通过引入约束条件来确定生成图像的特定表示,实现了从带有属性标签的草图生成真实人脸图像的目的。文献[5]提出了一种基于多对抗网络的草图-照片合成综合框架,采用对抗的方式通过多次迭代生成低分辨率到高分辨率的图像。文献[6]根据面部标志保留的信息,提出了一种基于性别保护生成性对抗网络(Gender Preserving Generative Adversarial Network,GPGAN)的面部合成方法,该方法利用风格化肖像保留下的面部标志和性别特征信息进行对抗性损失,感知损失和性别保持损失引导,从而恢复真实感图像。
文献[7]提出了一种新的面部去极化神经网络(Face Destylization Neural Network,FDNN)来从风格化的面部恢复潜在的真实面部照片。这些方法虽然在一定程度上实现了恢复图像真实感的目的,但是没有利用有效的语义信息。因此,尽管采用了大规模数据集对网络进行训练,但是未能在风格化人脸(Stylized Portraits Face,SPF)和真实人脸(Realistic Face,RF)之间提供一致的映射,造成恢复的图像出现视觉模糊和面部属性不匹配的现象。
本文针对现有方法在人脸复原过程中出现失真和重要细节丢失的问题,提出了一种基于深度卷积生成式对抗网络的人脸恢复方法,该方法由基于卷积生成网络的人脸恢复网络(Face Recovery Network,FRN)和识别网络(Discriminative Network,DN)两部分组成。在风格化肖像输入后,FRN使用一个带有嵌入式残差块跳跃连接的自动编码器,结合从人像图中获得的视觉特征及面部属性提供的语义信息来生成逼真的面部图像;利用DN判别恢复的人脸图像与真实人脸图像之间的相似度,以及恢复图像的人脸属性与输入图像属性的一致性。
1 生成式对抗网络
生成式对抗网络(Generative Adversarial Network,GAN)是由Goodfellow等[8]基于博弈论中的二人零和博弈思想提出的,具有强大的图片生成能力,在超分辨率、图像修复和合成等方面应用广泛。
1.1 基本框架
生成对抗网络是一种通过对抗过程估计生成模型的网络框架,该网络的基本框架由一个生成网络G和一个判别网络D构成,GAN的流程如图1所示。
图1 生成式对抗网络的流程示意图
生成网络G利用真实数据样本x训练生成新的数据样本G(z),判别网络D是一个二分类器,判断样本是来自原始数据x还是由生成网络产生G(z)。整个GAN过程网络G与D同时运行,判别网络的目的是尽量使D(G(z))接近0,而生成网络的目的是尽量使它接近1,最终二者在博弈中达到平衡。目标函数表示为:
Ez,P(z)[log(1-D(G(z)))]
(1)
式中:z是潜在表征;x是真实样本图像;P表示概率分布;E表示期望。
1.2 深度卷积生成式对抗网络
深度卷积生成式对抗网络[9]是一种将生成式对抗网络GAN与卷积神经网络CNN结合起来的学习模式,其基本原理与GAN相似,只是将经典GAN中的G和D换成两个改进的卷积神经网络,基本框架如图2所示。
图2 深度卷积生成式对抗网络的流程示意图
深度卷积生成式对抗网络的目标函数可以表示为:
Ez,P(z)[log(1-D(G(z),y))]
(2)
式中:x是真实样本图像,y是输入样本图像,G(z)是生成图像。
GAN是一种无监督学习方法,通过对无标注数据集的学习获得概率分布规律,但是这个过程十分缓慢,容易出现偏差。而深度卷积生成对抗网络利用CNN的监督学习可以为图像训练得到很好的特征表示,而且架构十分稳定可靠。
2 方法设计
2.1 网络体系结构
本文提出的网络架构由两部分组成:人脸恢复网络FRN和识别网络DN。FRN包含一个嵌入式残差块跳跃连接的自动编码器。FRN从输入图像中提取残差特征映射,然后将相应的20维属性向量与提取的残差特征向量在自动编码器瓶颈层处连接起来进行采样。通过这种方式将视觉和语义信息融合一起,以获得高质量的视觉性能。DN的作用是引导面部恢复图像和输入属性与真实图像相似。网络整个架构如图3所示。
图3 人脸恢复网络FRN和识别网络DN示意图
2.1.1 FRN
FRN模块采用深度全卷积自动编码器,将人脸从风格化图像中恢复出来。编码器的卷积层捕获输入肖像的特征图,解码器的卷积层利用这些特征图采取上采样来恢复面部细节。本文提出的FRN通过将低级视觉信息和高级语义信息(即面部属性)结合起来用于面部恢复,可以减少SPF和RF图像之间映射的模糊性。采用跳跃连接的方式对称地连接顶部卷积层和反卷积层,从而获得更高分辨率的肖像视觉细节和更好的恢复质量。每个跳过连接包括三个剩余块,在辅助FRN网络删除输入肖像的样式的同时,提高准确性。除此之外,针对输入图像存在平面内旋转、平移等肖像不对齐问题,FRN使用多个空间变换网络(Spatial Transformer Network,STN)来补偿输入肖像的错位。
本文使用像素l2范数损失函数Lpix和特征保留损失函数Lid来评价面部恢复图像与真实人脸图像之间的外观相似性。损失函数Lpix可以加强恢复图像与真实图像之间基于强度的相似性。对于特性保留损失函数Lid,使用Facenet[10]从图像中提取特征,然后通过比较两幅图像特征之间的欧几里得距离来约束恢复图像和真实图像之间的特征相似性。
2.1.2 DN
为了保证FRN对人脸属性信息进行编码,本文采用条件识别网络DN进行约束。识别网络可以区分FRN恢复的人脸图像属性与所需属性是否匹配以及检测恢复图像与真实图像之间的相似度。
DN由卷积层和全连接层组成。首先,真实图像和恢复图像被输入该网络,属性信息作为约束条件输入到网络的中间层。由于CNN的第一层过滤器提取的是低级特征,更高层过滤器提取的是具有语义信息的图像模式,因此通过将特征图与DN中第四个卷积层的属性向量相连接,可以得到更好的经验结果。当提取的特征与输入属性不匹配时,识别网络会在反向传播过程中将错误传递给FRN网络。因此,通过多次的迭代反馈,可以保证最终结果与真实人脸的面部表情、年龄和性别相匹配。
2.2 损失函数
为了对提出的网络进行端到端的训练,构造了SPF、RF和属性向量三元组(Ip,Ir,a)作为训练数据集,其中:Ir是对齐的真实图像、Ip是合成的未对齐图像。对于每个RF,合成三种不同的艺术风格的未对齐SPF图像,以获得SPF/RF训练对。在训练过程中,将SPF图像Ip及对应的真实面部属性向量a作为输入值,以RF的真实图像Ir作为目标量。
(3)
式中:GΘ(Ip,a)和Θ分别表示FRN的输出值和参数量。将p(Ip,Ir,a)表示为训练数据集内SPF、RF及其相应属性的联合分布。
(4)
式中:Ψ(·)表示从FaceNet的ReLU3-2层提取的特征图。
识别网络DN设计的目标是检测恢复图像与真实图像之间的相似度以及恢复图像具备的面部属性。
Ldis(Θ)=-E(Ir,a),P(Ir,a)[logDΦ(Ir,a)]-
(5)
因此,FNR的总损失函数LFNR是三个损失函数的加权和,通过最小化总损失函数可以得到参数Θ:
LFNR(Θ)=Lpix(Θ)+λLdis(Θ)+ηLid(Θ)
(6)
式中:λ决定外观和属性相似性之间的权衡,η决定图像强度和特征相似性之间的权衡。
由于GΘ(·)和DΦ(·)是可微的,所以对Θ和Φ应用反向传播技术,并利用随机梯度下降(Stochastic Gradient Descent,SGD)和均方根传播(Root Mean Square Propagation,RMSprop)进行优化。
3 实 验
为了验证本文方法的有效性,从定性和定量两个方面与其他先进的方法进行对比。利用给定的训练数据集对这些方法进行重新训练,以完成从风格化人像中恢复真实感面部的任务。
3.1 实验设置
在编码器中,采用内核尺寸为4×4、步长为2的卷积层。在解码器中,采用内核尺寸4×4、步长为2的反卷积层。在训练时,小批量尺寸设置为64,学习率为10-3、衰减率为10-2。在所有实验中,λ和η分别设置为10-2和10-3,而且为了强调外观相似性的重要性,λ值通过乘积因子κ=0.995逐渐降低。由于提出的网络在测试时是前馈的,因此尺寸128×128的图像风格化消除时间需要8 ms。
3.2 数据集
CelebA数据集[11]是香港中文大学的开放数据,包含10 177个名人身份的202 599幅人脸图像,每幅图像具有40个属性标签。本文从数据集中随机选择110 000幅图像进行训练,2 000幅图像进行测试,主要关注秃头、刘海、大鼻子、黑发、金发、棕色头发、眼镜、白发、浓妆、男性、嘴巴张开、胡须、窄眼、无胡须、苍白皮肤、微笑、直发、波浪状头发、口红和年轻等20个属性。为了保证数据的数量和多样性,避免网络模型低泛化能力的出现,需要对数据进行预处理。
首先,裁剪出每幅图像的中心部分,将其调整为像素大小128×128的真实人脸图像Ir。然后,通过旋转和平移增加RF图像的数据量。对于训练集中SPF图像,不可能采取大量风格来合成。因此,本文提出一个风格距离度量:从预先训练的VGG网络的特征图中计算出不同风格的革兰氏矩阵,通过欧式距离的对数来评定不同风格图像的革兰氏矩阵与训练RF图像的平均革兰氏矩阵之间的相似性。从中选择糖果、星光和马赛克风格三种最难恢复的风格来合成训练图像。最终,获得330 000对SPF/RF图像训练集。本文使用2 000幅未对齐的RF图像以10种不同风格合成20 000幅SP图像作为测试数据集。训练数据集和测试数据集是不相交的。
3.3 实验结果分析
图4给出了本文方法利用不同损失函数的人脸恢复可视化结果,其中:(a)是真实图像,(b)是糖果风格化图像,(c)-(f)分别是利用像素损失函数Lpix与特征保留损失函数Lid组合、像素损失函数Lpix与对抗性判别损失函数Ldis组合、总损失函数LFNR以及由面部属性引导的总损失函数LFNR的人脸恢复可视化结果。可以看出,每个损失函数在人脸恢复过程中都产生一定的贡献,但是只有在面部属性引导的总损失函数LFNR的约束下,提出的网络模型才能生成具有清晰真实感且属性匹配的人脸图像。
(a) RF (b) SPF (c) Lpix+Lid
(d) Lpix+Ldis (e) LFRN (f) LFRN+面部属性图4 本文方法中不同损失函数的贡献
图5给出了不同算法的人脸恢复可视化结果,其中第一行是真实图像,第二行从左到右的风格分别是草图、星光、糖果和马赛克。Shiri等[7]提出了一个表面解析法可以一定程度上增强面部细节,但是由于存在着各种不同的风格,其不能产生真实的面部细节,如图5第三行所示,该方法恢复的图像脸部颜色与真实图像不一致,细节比较模糊。CycleGAN[12]是一种使用不成对数据集的图像到图像转换方法,因此风格化图像和真实图像的低级特征不匹配,无法捕获人脸的全局结构,恢复的结果存在失真的问题,如图5第四行所示。Xing等[6]根据面部标志保留的信息,通过对抗性损失,感知损失和性别保持损失的引导下,GPGAN网络可以恢复得到清晰的具有真实感的图像,但是在不同风格图像恢复的过程中也会出现一些不匹配的属性,如头发颜色等,如图5第五行的一、三列所示。相比之下,本文方法的结果显示了更高的保真度和更好的一致性,如图5最后一行所示。本文方法可以生成高质量的真实感图像,而且这些图像也与真实图像的语义构成相匹配。除此之外,该方法对不同风格化图像恢复的结果彼此相似,表明了提出的网络对于不同风格图像恢复的健壮性。
(a) 草图(b) 星光(c) 糖果 (f) 马赛克图5 不同算法的人脸恢复可视化结果
本文利用峰值信噪比(PSNR)和结构相似性指数(SSIM)两个评价指标进一步验证算法的有效性。
PSNR表示滤波图像的最大像素值与噪声的比值,定义为:
(7)
式中:MSE表示均方误差,fmax和fmin分别表示去噪图像的最大和最小像素。PSNR越大,说明去噪图像失真越小、去噪效果越好。
基于感知模型的归一化度量SSIM定义为:
S(x,y)=f(l(x,y),c(x,y),s(x,y))
(8)
表1所示为不同算法对草图、风格化图像进行恢复测试时的指标结果。可以清楚地看到,与其他方法相比,本文方法在草图、风格化图像方面都取得了优异的定量性能。该表还对比了单独使用FRN以及FRN+标准DN时的定量结果。由于标准的DN可以保证FRN生成具有真实感的人脸图像,所以在定性和定量的结果上有所提高,但是标准的DN不能利用面部属性来引导FRN生成更匹配的图像。本文使用的条件DN可以判断FRN生成的属性与输入值的一致性,从而保证FRN在人脸恢复过程中嵌入属性信息,模糊度显著降低,网络性能更好。
表1 不同算法对草图、风格化图像测试时的指标结果
4 结 语
针对现有方法在人脸复原过程中出现失真和重要细节丢失的问题,提出了一种基于深度卷积生成式对抗网络的面部恢复方法。该方法使用面部属性引导的人脸恢复网络FRN以端到端的方式从未对齐的风格化肖像中恢复真实的图像,然后利用判别网络DN区分恢复图像与真实图像之间的相似度及相关属性的一致性。对比实验表明,本文方法从定量和定性角度上都明显优于其他方法。