人脸妆容迁移研究综述

2022-01-25 18:53米爱中乔应旭许成敬霍占强
计算机工程与应用 2022年2期
关键词:妆容化妆人脸

米爱中,张 伟,乔应旭,许成敬,霍占强

1.河南理工大学 计算机科学与技术学院,河南 焦作 454003

2.河南能源化工集团有限公司 九里山矿,河南 焦作 454150

随着社会的发展,人们越来越注重自己的外表形象,在面部美化技术中,化妆是一种通过化妆品来有效改善面部外观的方法。据国家统计局数据显示,2020年12月,全国化妆品零售额为324亿元,同比增长9%;1~12月份全国化妆品零售额为3 400亿元,同比增长9.5%。美妆产业推出众多美妆产品,包括粉底、眼影、唇膏、腮红、贴纸等。但是面对琳琅满目的美妆产品,人们无从选择,更不知什么样的妆容更适合自己。因此,虚拟试妆逐渐成为爱美人士备受青睐的一项技术,而人脸妆容迁移技术是虚拟试妆的核心。

人脸妆容迁移是一项具有挑战的任务。首先它需要从带有妆容的参考图像中提取化妆品成分;其次还需要分析人脸面部结构,以便在未对齐的面部之间准确迁移妆容;最后人脸妆容迁移过程中有许多因素需要考虑,包括头部姿势、面部表情、光照和遮挡等。如图1所示,人脸妆容迁移提供了一种高效的方式来实现虚拟试妆。其中,Sourcex指素颜图像,Referencey指参考图像,Result指妆容迁移后的结果。

由于人脸妆容迁移的研究在零售业和娱乐业有着非常重要的应用价值,越来越多的研究者试图设计各种算法来解决人脸妆容迁移问题。特别是在过去的几年里,随着生成对抗网络的出现,基于生成对抗网络的模型在包括人脸妆容迁移的各种图像生成任务中取得了压倒性的优势。

据作者所知,目前国内外还没有公开发表的关于人脸妆容迁移的综述性文章。本文重点对基于生成对抗网络的人脸妆容迁移方法进行梳理、分析、总结和展望,主要贡献可以归纳为以下三点:

(1)从关注问题、网络架构、优缺点等方面对人脸妆容迁移领域的现有方法进行全面系统的梳理,有利于研究者系统了解基于生成对抗网络的人脸妆容迁移算法的研究现状及核心技术。

(2)对人脸妆容迁移方法常用的数据集、性能评价指标及损失函数进行总结,为未来研究人员设计更好的妆容迁移模型提供经验。

(3)对人脸妆容迁移领域相关发展趋势进行展望,为进一步研究基于生成对抗网络的人脸妆容迁移技术提供可能的发展方向。

1 人脸妆容迁移方法概览

人脸妆容迁移的各种方法主要分为三类:传统方法、卷积神经网络方法以及生成对抗网络(generative adversarial networks,GAN)方法。

基于传统方法的妆容迁移:Tong等[1]通过计算化妆前后色彩与光照变化,调整素颜图像和妆容图像的皮肤纹理和肤色差异,将妆容迁移到素颜图像上。该方法对化妆前后图片对要求较高,实用性较低。Guo等[2]提出类似于物理化妆的人脸妆容迁移方法,其核心是先将源图像和参考图像分为三个图层:面部结构层、皮肤细节层和颜色层,再将参考图像的妆容信息通过每个图层迁移到源图像。该方法迁移过程较为复杂,处理速度较慢,耗费时间较长。Scherbaum等[3]使用人脸的三维形变模型[4]建立素颜到化妆的映射,该方法需要收集同一个人妆前妆后的成对图片。Li等[5]将图像分解成多个固有图层,根据基于物理的反射模型,通过操作图层来模拟化妆,最终实现面部化妆。该方法根据化妆品属性直接对图层进行操作,不要求数据集中的样本妆前妆后人脸对齐。但由于该方法很大程度上依赖固有图层分解的精确性,因此分解误差会降低迁移结果的质量,另外,其处理速度也有待提高。

基于卷积神经网络的妆容迁移方法:随着深度学习的不断发展以及传统人脸妆容迁移方法的局限性,一些学者对基于卷积神经网络的妆容迁移进行了研究。Liu等[6]提出一种深度局部妆容迁移网络,具体流程为:首先从已上妆人脸数据库中挑选与当前素颜人脸最相近的图片;然后采用全卷积图像分割网络进行人脸分割,提取五官区域;最后是完成对粉底(对应面部)、唇彩(对应双唇)、眼影(对应双眼)的妆容迁移。该方法虽然可以控制妆容浓度,但整体效果不够自然。Wang等[7]提出了一种自动化妆检测器和卸妆框架,对于化妆品检测,其采用局部约束字典学习算法来定位化妆品的使用情况,并使用一种基于局部约束的耦合字典学习(LC-CDL)框架来实现卸妆。王伟光等[8]提出一种基于卷积神经网络的新方法,首先对源图像和参考图像的特征信息进行定位和提取,通过妆容迁移网络和损失函数实现妆容的自动迁移。黄妍等[9]提出一种多通路的分区域快速妆容迁移网络模型,通过人脸关键点检测完成端到端的人脸校准,利用通路差异的损失函数根据不同面部区域的妆容特点优化网络,最后通过泊松融合及多通路的输出生成迁移结果。

基于生成对抗网络的妆容迁移方法:传统方法和基于卷积神经网络的方法虽能够实现人脸妆容迁移的效果,但是几乎所有方法都将妆容风格视为不同组件的简单组合,这导致整体输出图像看起来不自然,迁移效果整体较差。近年来,生成对抗网络技术[10]不断发展,由于其能够产生视觉上逼真的图像的能力而被广泛用于计算机视觉任务[11-14]。相比于传统和基于卷积神经网络的人脸妆容迁移方法,基于生成对抗网络的人脸妆容迁移方法可以显著提升迁移效果,已经成为当前人脸妆容迁移领域的研究热点。

图2按时间顺序展示了近几年基于生成对抗网络的代表性工作。根据重点解决的问题不同,基于生成对抗网络的人脸妆容迁移研究可以分为五类:第一类受CycleGAN[15]启发,在循环生成对抗网络上训练的面向上妆和卸妆的妆容迁移网络,如BeautyGAN[16]、Paired-CycleGAN[17]、LADN[18];第二类是面向迁移鲁棒性的人脸妆容迁移网络,如PSGAN[19]、FAT[20]、PSGAN++[21];第三类是基于3D人脸模型的人脸妆容迁移网络,如CPM[22];第四类是基于弱监督的人脸妆容迁移网络,如CA-GAN[23];第五类是除以上四类之外的其他解决人脸妆容迁移问题的方法,如DMT[24]。

图2 近年来人脸妆容迁移领域的代表性工作Fig.2 Chronological overview of recent representative work in facial makeup transfer

2 生成对抗网络方法

表1从基础网络、模型、年份、优点、局限性和适用场景六个方面对2018年到2021年基于对抗生成网络的代表性人脸妆容迁移方法进行了归纳总结。下面将详细介绍面向上妆和卸妆的妆容迁移方法、面向鲁棒性的妆容迁移方法、基于3D人脸模型的妆容迁移方法、基于弱监督的妆容迁移方法、其他妆容迁移方法等五类方法。

表1 基于GAN的人脸妆容迁移模型对比Table 1 Comparison of facial makeup transfer models based on GAN

2.1 面向上妆和卸妆的妆容迁移方法

面向上妆和卸妆的妆容迁移方法是指一个妆容迁移网络同时训练两个映射,一个用于上妆,一个用于卸妆。代表工作主要有BeautyGAN[16]、PairedCycleGAN[17]、LADN[18]和SLGAN[25],典型网络架构如图3所示。

BeautyGAN:由于妆容风格是由几种局部化妆品组成,现有风格迁移方法无法实现提取并迁移局部的精致的妆容信息。针对该问题,Li等[16]提出一个双输入/输出生成对抗网络框架——BeautyGAN,将全局域级损失和局部实例级损失合并在同一网络中,在统一的框架下实现妆容迁移,该模型的网络框架图如图3(a)所示。为了保持面部特征和消除伪影,作者在总目标函数中加入了感知损失和循环一致性损失,具体公式见3.2和3.3节。在域级迁移的基础上,采用基于不同面部区域计算的像素级直方图损失来实现实例级迁移,对比实验证明了直方图损失对实例化妆品迁移是有益的。BeautyGAN作为最早使用GAN进行妆容迁移的方法,从人类视觉感角度,相比于传统方法,迁移效果获得显著的提升。但BeautyGAN只在正脸图像上有较好的迁移效果,鲁棒性相对较差,不能对妆容迁移结果进行编辑。

PairedCycleGAN:受到CycleGAN的启发,Chang等[17]提出了面向上妆和卸妆的PairedCycleGAN模型。该模型使用无监督学习方法解决妆容迁移问题,不要求妆前妆后成对的训练数据。该模型中引入两个不对称函数G和F,其中G负责迁移妆容风格,F负责卸妆,该模型的网络框架图如图3(b)所示。由图3(b)可知,给定一张素颜图片和一张化妆图片,该模型同时学习一个妆容迁移函数G和一个卸妆函数F。为了实现迁移特定化妆风格的同时保持源图像的身份一致性,作者提出身份损失和风格损失,具体损失函数见3.5节的公式(6)~(8)。相比于之前的工作,该模型生成图像的速度更快,源图像的身份特征信息保持得更好,但在迁移适用性、鲁棒性和可编辑方面存在和BeautyGAN相同的局限性。

图3 面向上妆和卸妆的妆容迁移方法框架图Fig.3 Framework diagram of makeup transfer methods for makeup and makeup removal

LADN:针对生成对抗网络不能在全局对抗中传递高频细节,只适用于简单风格的问题,Gu等[18]提出一种局部对抗分离网络(LADN)。其核心思想是在一个内容-风格分离网络中,使用多个重叠的局部对抗鉴别器,实现面部图像之间的局部细节迁移。局部对抗鉴别器可以在无监督的环境下进行跨图像风格迁移时,更好地区分生成的局部图像细节是否与给定参考图像中的相应区域一致。跟之前的方法相比,LADN是第一个实现极端和戏剧性妆容风格上妆和卸妆的。为了处理极端妆容风格包含的高频成分,LADN引入非对称损失函数,具体损失函数见3.5节的公式(9)、(10)。LADN在上妆和卸妆效果上较之前的方法有了进一步的提高,但在对极端妆容风格进行卸妆时,存在局部颜色一致而整个面部颜色存在差异的问题。

SLGAN:Horita等[25]提出一个风格编码(style code)和潜在编码(latent code)联合引导的生成对抗网络模型——SLGAN,这是第一个将风格编码和潜在编码引导框架应用于妆容迁移和卸妆的方法。该框架由生成器G、风格编码器SE、映射网络MN和判别器D组成,如图3(c)所示。生成器包括共享编码器Enc、风格引导解码器Gs和风格不变解码器Gi。判别器D为多任务判别器,与风格编码器SE架构相同。SLGAN提出了一个感知化妆损失和风格不变的解码器,前者可以根据直方图匹配迁移化妆风格,后者可以通过计算解码器输出和风格引导编码器之间的欧式距离以避免身份迁移。此外,SLGAN还使用自适应实例归一化(AdaIN)来调整生成器参数,能够执行插值妆容迁移。定性和定量实验表明,SLGAN的妆容迁移和卸妆效果相比于之前的方法有一定的提升,局限性在于SLGAN不适用于极端妆容风格迁移。

2.2 面向鲁棒性的妆容迁移方法

面向鲁棒性的妆容迁移方法是指在面部表情和姿态具有差异的条件下,妆容迁移网络仍能获得满意的迁移效果。代表工作主要有PSGAN[19]、FAT[20]和PSGAN++[21],其网络架构如图4所示。

图4 面向鲁棒性的妆容迁移方法框架图Fig.4 Framework diagram of robustness oriented makeup transfer methods

PSGAN:针对在源图像和参考图像存在表情和姿态差异的情况下迁移效果较差和不能实现可控的妆容色彩迁移以及特定部位迁移的问题,Jiang等[19]提出了姿态和表情鲁棒的空间感知生成对抗网络,如图4(a)所示。该网络主要包括三个模块:妆容蒸馏网络(MDNet)、注意力妆容形变模块(AMM)、妆容应用网络(MANet)。PSGAN使用注意力妆容形变模块来处理不同头部姿态和面部表情之间的转换以实现鲁棒性的妆容迁移,但当参考图像存在遮挡和阴影时,迁移鲁棒性较差,且该方法也不能实现卸妆。

FAT:受Transformer[33]中的自注意力机制的启发,Wan等[20]设计了一个面部属性变换器(FAT)对源图像和参考图像之间的语义对应和交互进行建模,进而精确地估计和迁移人脸属性,其网络框架图如图4(b)所示。此外,为了方便面部形状变形和变换,作者将薄板样条函数(TPS)集成到FAT中,创建了空间FAT。通过FAT和空间FAT可以实现高质量的妆容迁移,空间FAT是结合颜色迁移和形状变换的妆容迁移方法,这也是第一个除了颜色和纹理之外,还可以迁移几何属性的方法。值得注意的是,该方法不仅适用于人脸妆容属性迁移,也适用于其他人脸属性迁移,比如人脸年龄属性,局限性在于不能实现卸妆和妆容编辑。

PSGAN++:Liu等[21]在PSGAN的基础上,解决了妆容迁移中的上妆和卸妆问题,其网络框架如图4(c)所示。该网络框架主要包含四个模块:妆容蒸馏网络(MDNet)、注意力妆容形变模块(AMM)、风格迁移网络(STNet)以及身份蒸馏网络(IDNet)。相比于之前的妆容迁移方法,PSGAN++是一种多功能的方法,能够实现姿势/表情鲁棒、部分妆容迁移、妆容程度可控、细节保存迁移以及卸妆等多个功能。无论是定性还是定量实验结果,都表明该方法在迁移效果上有进一步的提升。但与PSGAN相同的是,当参考图像存在遮挡和阴影问题时,迁移效果会受到影响。

2.3 基于3D人脸模型的妆容迁移方法

基于3D人脸模型的妆容迁移方法是指通过对源图像和参考图像拟合一个三维人脸模型来分解图像的形状和纹理以实现妆容迁移的方法。代表工作主要有CPM[22]和SOGAN[26],其网络架构如图5所示。

图5 基于3D人脸模型的妆容迁移方法框架图Fig.5 Framework diagram of makeup transfer methods based on 3D facial model

CPM:Nguyen等[22]于2021年提出一个不仅可以迁移妆容颜色,还可以实现图案迁移的整体妆容迁移框架。该框架包括两个分支:颜色迁移分支和图案迁移分支,分别处理妆容颜色和妆容图案的迁移,两个分支可以独立地并行运行,如图5(a)所示。为了减少源图像和参考图像在形状、头部姿势和表情之间的差异,颜色迁移分支和图案迁移分支在训练时都使用了UV空间中的扭曲面。受3D人脸模型的启发,作者借鉴PRNet[34]的思想,使用UV转换函数提取面部图像的UV位置图和UV纹理图,并将纹理图分别送入两个分支在UV空间实现妆容变换,两个分支的输出融合为最终的纹理图,使用渲染函数UV-1将其转换为标准图像表示。实验结果表明,无论是图案迁移还是颜色迁移,CPM的迁移效果都领先于当前的方法,但不足之处是CPM不能实现卸妆。

SOGAN:目前的妆容迁移方法虽然在较大的姿势和表情变化时也有不错的迁移效果,但当参考图像上存在遮挡和阴影时,就会错误地迁移阴影,导致输出图像出现重影伪影,这使得输出图像的相应位置缺少妆容细节。为此,Lyu等[26]提出一种新的妆容迁移方法——SOGAN(3D-aware shadow and occlusion robust GAN),其网络框架如图5(b)所示。该方法只在UV纹理空间中迁移化妆,利用人脸在UV空间的对称性,提出翻转注意模块(FAM)和妆容迁移模块(MTM)来减轻阴影和遮挡的影响,以实现更精确的妆容迁移。但其局限性在于该方法不适用于极端妆容风格迁移,且不能实现卸妆功能。

2.4 基于弱监督的妆容迁移方法

基于弱监督的妆容迁移方法是指在妆容迁移过程中采用弱监督方式训练迁移网络的方法。代表工作主要有CA-GAN[23]和MakeupBag[27],MakeupBag[27]的网络架构如图6所示。

图6 MakeupBag网络框架图Fig.6 Framework diagram of MakeupBag

CA-GAN:Robin等[23]为人脸妆容迁移提出一个新的目标,即学习一种颜色可控的妆容风格合成。CA-GAN是一种颜色感知的条件GAN,可以将图像中特定对象的颜色修改为任意的目标颜色。CA-GAN引入了一个生成模型,它可以将图像中的特定对象(如嘴唇或眼睛)的颜色修改为任意目标颜色,且保留背景。由于颜色标签很少,并且获取成本较高,该方法使用的是弱监督条件生成对抗网络,这能够更好地学习可控合成。虽然该模型可以实现对多种化妆品的颜色控制,但人脸妆容的空间信息却没有被考虑。

MakeupBag:Hoshen[27]提出MakeupBag,将妆容迁移过程分为两个阶段,(1)妆容提取;(2)妆容应用,其网络框架如图6所示。MakeupBag将妆容提取视为一项弱监督的妆容分割任务,该模块的输出是一个妆容分割掩膜(Mask),用于创建妆容迁移后的目标图像的估计图像。在妆容应用阶段,生成器由全局生成器和局部增强器组成,将源图像和参考图像以及分割图作为输入,输出一个妆容迁移后的真实图像,以实现在任意人脸上应用妆容风格。相比于之前的方法,MakeupBag不仅允许编辑化妆风格,还可以实现更高分辨率和更高质量的妆容迁移,其局限性为该方法也不能实现卸妆和妆容编辑。

2.5 其他妆容迁移方法

DMT:Zhang等[24]提出了DMT(disentangled makeup transfer),实现了不同场景下妆容迁移的模型。该模型能够处理不同的化妆迁移场景,包括成对迁移、插值迁移、混合迁移和多模态迁移,这些都是相关研究无法实现的。DMT是第一个借助解耦表征(disentangled representation)来解决妆容迁移的模型,相比之前的方法,模型在迁移效果上有进一步的提高,其局限性为不适用于极端妆容迁移且不支持卸妆。

BeautyGlow:Chen等[29]提出一种无监督的按需妆容迁移方法——BeautyGlow,该方法是第一个基于Glow[35]的妆容迁移框架。BeautyGlow不需要训练生成器和鉴别器,使得它更加稳定。该方法不适用于极端妆容迁移且鲁棒性较差。

Eye Makeup Transfer:Zhu等[28]提出了一种自动编码器结构,使用合成的成对数据和非成对数据进行眼妆迁移。同时,基于妆容表征,该框架通过简单地调整妆容权重来控制化妆程度,但该方法只适用于眼妆迁移。

IPM-Net:Huang等[30]提出一个新的身份保持化妆模型IPM-Net,该模型将人脸图像分解成两种不同的信息编码——身份内容编码和妆容风格编码,只需改变妆容风格编码就可以生成目标人物的各种妆容图像。该模型既可以保持源图像的背景信息,也可以保持原始身份信息。在迁移效果评定标准方面,IPM-Net采用FID[36]和LPIPS[37]用于妆容真实性和多样性评价。该方法不适用于极端妆容迁移和不支持卸妆。

自动上妆模型:包仁达等[31]提出一种掩码控制的自动上妆生成对抗网络,通过利用掩码,能够重点编辑上妆区域且约束无需化妆的区域不变,保持源图像主体信息。同时可对人脸的眼睛、嘴唇和肤色单独编辑妆容,实现特定区域上妆,丰富了上妆功能,但该方法也不适用于极端妆容迁移且鲁棒性有待提高。

SCGAN:Deng等[32]提出了一种全自动的妆容迁移模型,通过编辑样式编码,即可实现带有阴影控制的全局/局部妆容迁移。该模型由目标风格码编码、人脸身份特征提取和妆容融合三部分组成。参考图像被分解成三部分——眼睛、皮肤、嘴,特定的风格编码器提取每部分的特征,并将这些特征映射到一个解耦风格潜在空间W,人脸身份特征编码器从源图像中提取人脸身份特征,妆容融合解码器将风格码ω与人脸身份特征融合生成最终迁移结果。该方法灵活且准确,但无法迁移面部区域的局部图案。

2.6 小结

面向上妆和卸妆的妆容迁移方法需要同时训练两个子网络,一个用于上妆,一个用于卸妆。关键在于网络架构和损失函数的设计,既要考虑全局域级损失又要考虑局部实例级损失。总的发展趋势是从监督学习向无监督、半监督和自监督方向发展,由简单妆容迁移向支持极端妆容迁移发展。

面向鲁棒性的妆容迁移方法重点关注妆容迁移的鲁棒性问题,提升迁移前后面部表情和姿态存在差异时的迁移效果。目前仍然存在的问题是当参考图像存在遮挡和阴影问题时,迁移效果不能满足市场需求,有待进一步提高。

基于3D人脸模型的妆容迁移方法可能是人脸妆容迁移网络发展的主流。用三维人脸模型分解图像的形状和纹理来实现妆容迁移有着天然的优势。选择更合适的三维人脸模型,设计更合理的网络模型和损失函数,同时提高模型的鲁棒性,较好地解决遮挡和阴影问题,可能是人脸妆容迁移继续发展的趋势。

基于弱监督的妆容迁移方法主要解决特定问题时标注数据少,并且获取成本较高的问题。使用有限的、含有噪声的或者标注不准确的数据来进行模型参数的训练,也是一种解决数据标注的可行方法。

3 常用损失函数

在人脸妆容迁移任务中,损失函数是影响迁移效果的关键因素之一。常用的人脸妆容迁移损失函数主要包括对抗损失、循环一致性损失、感知损失、妆容损失等。在本章中,用A和B分别表示源图像域和参考图像域,Isrc指源图像,Iref指参考图像,指妆容迁移图像,指卸妆后图像,和指源图像和参考图像的重构图像。

3.1 对抗损失

对抗损失是基于生成对抗网络人脸妆容迁移网络的基本损失函数,其原理为通过生成器和判别器的不断博弈,使生成器生成的图像更加真实,使判别器不断提高对来自不同域的图片的判别能力。对抗损失计算公式为:

其中,E(*)代表分布期望,G代表生成器,D代表判别器。

3.2 循环一致性损失

由于缺少足够的三元组数据(源图像、参考图像及迁移图像),大多数妆容迁移方法以无监督方式训练网络。引入循环一致性损失可以约束重建图像,循环一致性损失函数的定义为:

3.3 感知损失

感知损失函数可以在迁移妆容风格时保持源图像的个人身份信息,感知损失不是直接计算像素级欧氏距离之间的差异,而是计算深度卷积网络提取的高级特征之间的差异,该网络一般使用在ImageNet上预训练的VGG-16模型。感知损失计算公式为:

3.4 妆容损失

妆容损失包含嘴唇、眼睛和面部的三个局部颜色直方图损失。在生成图像和参考图像Iref的相同面部区域分别执行直方图匹配得到一个重新映射图像,其约束生成图像和参考图像在Mitem的位置具有相似的化妆风格。Mitem是通过人脸解析模型获得的局部区域,item∈{l ips,eye,face}。局部直方图损失计算公式为:

总妆容损失计算公式:

其中,λ1、λ2、λ3为权重参数,一般设为λ1=1,λ2=1,λ3=0.1。

3.5 其他损失

除了以上四种损失函数外,不同的妆容迁移方法还根据网络训练的不同目标提出了一些特有的损失函数,包括PairedCycleGAN[17]提出的身份损失、风格损失,LADN[18]提出的高阶损失、光滑损失,PSGAN++[21]提出的妆容细节损失等。

(1)身份损失

身份损失类似于循环一致性损失,其目的是在妆容迁移过程中保持源图像的身份信息,利用L1损失减小源图像的重构图像和源图像之间的差异,其公式为:

其中,G负责妆容迁移,F负责卸妆,E(*)代表分布期望。

(2)风格损失

PairedCycleGAN[17]除了身份损失,还提出了两种风格损失——L1重建损失LS和风格判别器损失LP。风格损失是为了确保特定化妆风格细节的成功迁移。首先LS是为了保证参考图像的重构图像和参考图像越接近越好,如公式(7)所示。然而在像素域使用L1损失虽有助于一般结构和颜色(例如眉毛的形状和眼影)的迁移,但不能迁移睫毛和眼线这些边缘区域。针对这一问题,作者增加了一个辅助判别器DS来判断给定的一对面部图像是否妆容相同。由于缺乏真实妆容图像对,作者根据通过扭曲Iref来匹配Isrc中检测到的面部特征点(Landmarks)生成一个合成Ground-truth——W(Isrc,Iref)。辅助判别器DS的损失函数如公式(8)。

其中,G负责妆容迁移,F负责卸妆,E(*)代表分布期望。

(3)高阶损失

为处理极端妆容包含的高频成分,LADN[18]在妆容迁移分支中增加了高阶损失Lho。受PairedcycleGAN[17]的启发,作者也生成一个合成groundtr uth——W(Isrc,Iref),其保留了参考图像妆容风格的大部分纹理信息。通过对W(Isrc,Iref)和Iref的局部块(local patches)应用拉普拉斯滤波器计算高阶损失,其计算公式为:

(4)平滑损失

在一些极端妆容卸妆的过程中,很难从化妆后的图像中观察到人的原始面部颜色。因此LADN[18]基于化妆后的面部颜色通常是平滑的这一假设在卸妆分支中加入了平滑损失Lsmooth,其计算公式为:

(5)妆容细节损失

妆容损失提供了面部区域级别的约束,但这样的损失很难迁移包括高光和腮红在内的化妆细节。因此,PSGAN++[21]提出一个妆容细节损失。首先使用密集面部对齐方法来检测源图像和参考图像的密集面部特征点。然后选择位于化妆细节区域(鼻子、脸颊)的K个特征点构成妆容细节标志。妆容细节损失是计算I Bsrc和Iref之间相应妆容细节特征点之间的差,其公式为:

其中,E(*)代表分布期望,G表示生成器,k表示第k个特征点。

4 数据集与评价指标

4.1 数据集

随着人脸妆容迁移算法的不断发展,该领域数据集越来越丰富且更具针对性,图像的质量和数量不断提高。表2从数据集名称、时间、主题数量、每个主题包含图像张数、是否有妆前妆后图像和图像总数六方面列举了2012年至2021年提出的有关人脸妆容数据集。

表2 人脸妆容数据集Table 2 Facial makeup dataset

YMU(YouTube makeup)于2012年提出,它主要是来自YouTube视频化妆教程,共收集了151个主题,特别是白人女性。通过拍摄人脸化妆前后的照片,每张人脸对应四张图像:化妆前两张图像和化妆后两张图像,该数据集共有604张图片。这些面部图像中的妆容从细微到浓重不等。同时该数据集包含了表情和姿势的一些变化,在同一个对象的多张照片上,照明条件相对固定。

VMU(virtual makeup)于2012年提出,它是使用Taaz的公开工具修改了FRGC(face recognition grand challenge)数据集中的51名白人女性的面部图像以模拟化妆而形成的。其主要创造了三个虚拟妆容:(1)仅使用口红;(2)仅使用眼妆;(3)整个面部化妆,包括唇膏、粉底、腮红和眼妆。因此,该数据集包含每个主题的4个图像,1张妆前图像,3张妆后图像,共有204张图片。

MIW(makeup in the“wild”)于2013年提出,数据集中化妆和素颜的面部图像是从互联网上获取的,其面部是不受约束的,不包含人脸图像的妆前妆后的成对图像。该数据集包含154张图片,其中化妆图像77张,素颜图像77张。

MIFS(makeup induced face spoofing)于2017年提出,该数据集是为了研究化妆引起的人脸欺骗问题而提出的,共包含107个化妆变换前后对象,这些变换都来自随机的YouTube化妆教程视频。每个对象有两对化妆前后的图像和两个目标图像。

MT(makeup transfer)于2018年提出,是目前大多数人脸妆容迁移研究采用的数据集。该数据集包括3 834张女性图片,其中包含1 115张素颜图像,2 719张化妆图像,包括亚洲人、欧美人等,在姿势、表情、背景等方面都有不同。素颜图像均为裸妆,化妆图像包含了许多化妆风格,比如烟熏妆、复古妆、韩国化妆风格以及日本化妆风格等。与之前的化妆数据集相比,MT是最大的数据集。该数据集示例样本如图7(上)所示,第一行为素颜图像,第二行为化妆图像。

LADN Makeup于2019年提出,其构造过程如下:首先从互联网上收集没有遮挡的高质量人脸图像,通过面部特征点检测器过滤掉没有正面人脸的图像;然后根据是否有化妆对其中一小部分图像进行标记,从中提取眼影和嘴唇区域的色调直方图,进而训练一个简单的多层感知机分类器;最后利用分类器对剩余图像进行标注,最终得到333张素颜图像和302张化妆图像。同时,为了实现极端妆容迁移,该数据集还增加了115张化妆色彩、风格、区域覆盖差异较大的极端妆容图像。

FCC Dataset于2019年提出,它共有18 425张包含浓妆、淡妆以及不化妆的面部图像,数据集有低分辨率(256×256)和高分辨率(512×512)子集,包含了不同种族的不同化妆风格。该数据集包含了不同对象的化妆前后图像,也可以用来研究彩妆应用下的人脸识别问题。

Makeup-Wild于2020年提出,它包含具有各种姿势、表情以及复杂背景的人脸图像,主要是从网上收集素颜和化妆人脸图像,并手动删除正面脸和中性表情的图像,包含了403张妆容图像和369张素颜图像,其主要是用来对人脸妆容迁移算法的鲁棒性进行测试。该数据集示例样本如图7(中)所示,第一行为素颜图像,第二行为化妆图像。

CPM于2021年提出,它包含了四类数据集:CPM-Real、CPM-Synt-1、CPM-Synt-2和Stickers,其中CPM-Real为无监督的数据集,包含了3 895张妆容图像,数量比之前最大的妆容数据集MT多43%。化妆风格方面,该数据集既包含颜色化妆又包含图案化妆,Stickers是577张高质量图像的贴纸数据集,用于增加妆容风格的多样性。CPM-Synt-1和CPM-Synt-2为监督数据集。CPM-Synt-1是带有图案的妆容数据集,共包含了5 555张图像,每张图像都有对应的图案ground-truth分割掩码以及UV图。CPM-Synt-2数据集专为图案迁移评估设计,包含1 625个图像三元组(源图像、参考图像、ground-truth)。该数据集示例样本如图7(下)所示,从上往下依次为CPM-Real、CPM-Synt-1、CPM-Synt-2。

图7 流行妆容数据集的视觉实例Fig.7 Visual examples of popular makeup datasets

4.2 评价指标

(1)定性指标

该指标具有一定的主观性,主要是通过人眼来进行判断人脸妆容迁移的效果。图8展示了不同人脸妆容迁移方法在MT数据集上的定性实验效果。由图可知,当参考图像和源图像之间没有明显的空间错位时,虽然使用特定妆容迁移方法可以有效提高妆容迁移的准确度,但也存在一定的问题,如BeautyGlow生成的图像中,眼影明显比参考图像暗;LADN生成的图像包含头发周围的伪像,几乎没有保留源图像的身份;PSGAN在眼睛周围生成了不自然的结果;SLGAN的头发颜色发生了改变等。

图8 不同方法在MT数据集上的定性结果Fig.8 Qualitative results of different methods on MT dataset

(2)定量指标

定量评估主要包括:用户感知评价;inception score(IS);弗雷歇距离(Frechet inception distance,FID);MS-SSIM等四种评测指标。

①用户感知评价是对风格迁移效果的主观评价指标。一般做法为:随机选择N名学生,并每次提供若干张图像,其中一个是素颜图像,一个是妆容图像,不同方法得到的迁移图像。参与者需要根据质量、真实感和化妆风格对迁移图像排序,排名越高表示迁移效果越好。

②inception score(IS)[42]是一种衡量生成图像清晰度和多样性的指标。IS值越大,表示生成图像质量越高。计算公式为:

其中,E表示期望值,DKL表示两分布之间KL散度。

③弗雷歇距离(Frechet inception distance,FID)[36]是计算真实图像和生成图像的特征向量之间距离的一种度量。距离越近,即FID值越小,表示生成模型的效果越好,即图像质量好和清晰度高。计算公式为:

其中,X和G表示真实图像和生成图像,μx和μg是各自特征向量的均值,Σx和Σg表示各自特征向量的协方差矩阵,tr表示矩阵的迹(主对角线各元素的和)。相比于IS,FID对噪声有更鲁棒的敏感性,且对模式崩溃也更为敏感,故FID的实际应用相对更广泛一些。

④MS-SSIM(multiscale structural similarity)是在SSIM[43]算法基础上提出的,是一种计算多尺度结构相似性的方法,可以衡量两幅图像之间的相似度。计算公式如式(14)所示。当M=1时,表示原始图像;当M=2时,表示原始图像缩小一半,以此类推。

其中,L(X,Y)是亮度对比因子,C(X,Y)是对比度银子,S(X,Y)是结构对比因子,α、β和γ是用于调整各个分量的权重。

5 总结与展望

人脸妆容迁移具有重要的理论研究价值和巨大的市场应用价值,但据作者所知,目前还没有公开发表的关于人脸妆容迁移的综述文章。本文根据人脸妆容迁移领域重点解决的问题,将基于生成对抗网络的人脸妆容迁移算法分为面向上妆和卸妆的妆容迁移方法、面向鲁棒性的妆容迁移方法、基于3D人脸模型的妆容迁移方法、基于弱监督的妆容迁移方法和其他妆容迁移方法五类。从网络架构、损失函数、数据集和评价指标四个方面对现有人脸妆容迁移算法进行了系统的总结和梳理,并分析了各个模型的贡献及局限性。经过对该领域的系统研究,基于生成对抗网络的人脸妆容迁移技术下一步可能的发展趋势主要有:

(1)引入单张图像的三维人脸建模技术

现实中人脸是三维的,其三维特征将影响人脸图像的视觉外观,比如形状、姿势和表情。又因为目前人脸妆容迁移数据集都是由单张图像组成的。因此,如何将单张图像的三维人脸建模技术有效地引入人脸妆容迁移领域,并重建包含三维人脸特征信息的妆容图像将是人脸妆容迁移领域中一个很有价值的发展方向。CPM[22]首次在这一方向上有所尝试,但还有许多问题有待完善。

(2)将妆容迁移方法应用于实时视频中

近年来对妆容迁移方法的研究主要集中在静态图像,针对视频的研究很少。每一帧的姿势和表情在视频中是不断变化的,与图像妆容迁移相比,视频妆容迁移是一项更具挑战性但更有意义的任务,在视频中实现良好的妆容迁移效果具有非常广阔的市场应用前景,是未来的重点研究方向。

(3)交互式人脸妆容迁移

将图像语义分割中的交互式分割和人脸妆容迁移相关结合,研究交互式人脸妆容迁移,具有重要的市场应用价值。交互式人脸妆容迁移指使用点、框或线标记迁移的目标区域,也可以标记非目标区域,实现用户定制化的人脸妆容迁移。无论从用户个性化需求还是化妆品企业的产品设计,交互式人脸妆容迁移有巨大的潜在市场应用价值。

(4)构建高分辨率的人脸妆容迁移数据集

目前的大多数妆容数据集规模小且分辨率不高,随着算法模型的发展,对数据集的要求也越来越高。如何构建高分辨率的人脸妆容迁移数据集,进而实现高分辨率图像的妆容迁移,也是后续值得研究的一项课题。

总之,基于生成对抗网络的人脸妆容迁移是一项新兴的具有挑战性的课题,既是机遇也有挑战,不仅受到学术界的广泛研究,在商业界也有重要的研究价值。此综述的目的也是为基于对抗生成网络的人脸妆容迁移算法的进一步研究提供参考。

猜你喜欢
妆容化妆人脸
有特点的人脸
一起学画人脸
给语言“化妆”
三国漫——人脸解锁
化妆
能打造光泽透亮质感的妆容
拯救妆容的“小棒子”
走偏锋 暗黑哥特妆容AB面
少女的化妆
长得象人脸的十种动物