人脸年龄合成的生成对抗网络方法综述

2023-10-24 13:57王艺博张珂孔英会于婷婷赵士玮
中国图象图形学报 2023年10期
关键词:人脸老化年龄

王艺博,张珂,2*,孔英会,2,于婷婷,赵士玮

1.华北电力大学电子与通信工程系,保定 071003;2.华北电力大学河北省电力物联网技术重点实验室,保定 071003

0 引言

人脸图像是日常生活中最常见的数据之一,蕴含着丰富的可用信息,如性别、年龄、种族、身份及表情等。随着深度学习的飞速发展,人脸图像处理吸引了大批科研人员的研究兴趣,目前已成为人工智能领域最热门的研究之一。人脸图像是开展与人脸相关问题研究的基础,年龄作为人类重要的生物及社会特征,在社会交往中起着基础性的作用。以人脸图像年龄估计(张珂 等,2019)和人脸图像年龄合成(Shu 等,2016)为代表的人脸图像年龄分析已成为人工智能领域的重要问题之一。人脸图像年龄合成(以下简称人脸年龄合成)在各个领域有着广泛的应用,从社会保障到数字娱乐,如根据旧时的照片预测失踪人员或通缉嫌疑人的现貌、改进跨年龄验证(Park等,2010;Wu等,2012)的人脸识别系统及一些商用软件的智能换脸技术等。人脸年龄合成由于其重要的应用价值,已成为计算机视觉领域的一个热门话题。在过去的20 年里,人们已经对其进行了广泛研究。

人脸年龄合成是一项有难度的研究课题。首先,人脸衰老是一个极其复杂的面部变换过程,人的一生中脸的形状与纹理随着年龄的增长呈现出非线性变化。虽然人类的整体衰老趋势大致相同,但每个人的衰老过程由他/她的个性化因素(如痣、胎记等)主导。此外,人脸年龄合成执行困难的另一个原因是对数据集的严格要求。大多数现有方法需要成对样本作为训练数据,即同一个人在不同年龄的人脸图像,有些方法甚至需要在很长的年龄跨度内进行配对样本,这是非常难以收集的。因此,由于涉及遗传学和生活方式的极端挑战以及对训练数据集的严格要求,人脸年龄合成任务是一项极具挑战性的任务。

尽管问题本身存在极大的挑战,但该领域一直吸引着众多学者。从人类学理论到深度学习结构(LeCun 等,2015),从使用传统图像处理算法到使用生成对抗网络(generative adversarial network,GAN)的方法,人们在人脸年龄合成领域进行了许多研究,且取得了突破性进展。随着深度学习的快速发展,基于GAN 的人脸年龄合成方法大幅提升了合成图像的质量。本文对人脸年龄合成任务的相关数据集、研究进展、优势与不足及评价指标进行综述,对比和总结相关方法的性能,指出该领域目前存在的挑战,并对未来可能的研究方向进行展望。

1 问题定义

人脸年龄合成,也称人脸老化或年轻化,是指合成指定年龄条件下的人脸图像,同时保留其个性化特征(Ramanathan 等,2009)。其基本思想是利用计算机技术对不同年龄(组)之间的年龄映射模式进行建模,以目标年龄为条件合成满足要求的高质量人脸图像。

已知一幅人脸图像,人脸年龄合成的流程可以分为以下几个阶段:1)获取人脸年龄数据集;2)人脸检测与定位(Kazemi 和Sullivan,2014),指检测并定位出所给图像中的人脸;3)年龄特征提取,从人脸图像中提取能代表对应年龄(组)的老化纹理与形状特征,有效的年龄特征可以提高人脸年龄合成的性能;4)年龄合成,通过训练学习特定的年龄模式以及输入人脸和目标年龄标签之间的映射,直接生成特定年龄(组)的人脸;5)合成性能评价,为了验证年龄合成方法的有效性,需要设定合理的性能指标对其进行评价,对年龄合成算法进行性能方面的评估是十分必要的。

由于人脸检测与定位技术已经成为计算机视觉中一个较为独立的研究方向,因此本文将针对人脸年龄合成问题的其他阶段总结其研究现状。

2 常见人脸年龄合成数据集

在人脸年龄合成研究中,首要问题是收集具有不同年龄或年龄段的高质量人脸数据集,数据集的质量直接关系到训练模型的鲁棒性及稳定性。收集的数据集应满足以下几个条件:1)数据集中应包含同一个人不同年龄的多幅图像,且需很长的时间跨度,以提升生成模型的训练质量;2)数据集包含的图像数量及来源人数尽可能多,确保模型学习的老化模式更加精细;3)数据集中图像的年龄标签尽可能准确,防止训练过程出现偏差;4)数据集中每个年龄组的图像数量尽可能均衡分布,保证生成模型学习的老化模式更全面。因此,收集数据集的过程极具挑战性。下面总结了几种常见的人脸年龄合成数据集。

1)FG-NET(the face and gesture recognition network)(Panis 等,2016)。FG-NET 数据集发布于2002年,包含了1 002 幅来自82 个人的彩色和黑白图像,每幅图像均带有身份和年龄标注,同时提供68 个人脸关键点信息。该数据集的年龄标注类型为年龄值,年龄跨度为0~69 岁,平均年龄为16 岁,平均每个受试者有6~18 幅不同年龄的图像。FG-NET 曾是年龄方面最流行的数据集之一,但由于其图像数量较少,年龄分布不平衡,故目前的年龄合成研究很少使用该数据集。图1 为FG-NET 数据集的示例图像。

图1 FG-NET数据集的示例图像Fig.1 Images in the FG-NET dataset

2)MORPH(Ricanek 和 Tesafaye,2006)。MORPH 数据集发布于2006 年,是由美国北卡罗来纳大学的研究者们收集的受限条件下的大型人脸老化数据集,已经广泛应用于年龄合成、识别与估计等方面。该数据集由Album1和Album2两部分组成,收录了同一个人在不同年龄段的图像,其年龄标注类型均为年龄值。Album1包含515个受试者的1 690幅灰度人脸图像,其收集时间跨度为1962—1998 年,受试者年龄为15~68岁,平均年龄为42岁。相对于Album1,Album2 包含13 618 个受试者的55 134幅人脸图像,数据样本为200 × 240像素和400 × 480像素两种尺寸的近正面人脸彩色图像。图像收集时间跨度为2003—2007 年,受试者年龄为16~77 岁,平均年龄为33 岁。除年龄外,MORPH 数据集还提供了人物的其他信息,如性别、种族、是否戴眼镜等。由于Album2 图像数量较Album1 多,年龄合成方面的研究大多使用Album2 进行实验。图2 为MORPH Album2数据集示例图像。

图2 MORPH数据集的示例图像Fig.2 Images in the MORPH dataset

3)CACD(the cross-age celebrity dataset)(Chen等,2015)。CACD 数据集发布于2013年,由2 000位名人的163 446 幅彩色人脸图像组成,均为网站收集,年龄标注类型为年龄值。图像收集的时间跨度为2004—2013 年,年龄范围为16~62 岁,平均年龄为31 岁。CACD 数据集同时还提供了16 个人脸关键点的标注信息。这些图像是在非受限条件下拍摄的,人物的姿势、照明和表情有巨大变化,因此它成为一个非常具有挑战性的数据集。图3 为CACD 数据集的示例图像。

图3 CACD数据集的示例图像Fig.3 Images in the CACD dataset

4)Adience(Eidinger 等,2014)。Adience 数据集发布于2014 年,其中收集了2 284 个人共26 580 幅人脸图像,每幅图像均带有年龄组和性别标注。该数据集的年龄跨度为0~60+岁,它的标注采用的是年龄段的形式而不是具体的年龄值,其中包括0~2、4~6、8~13、15~20、25~32、38~43、48~53和60~100 共8 个年龄段。该数据集中的图像均含有噪声、姿势和光照等变化,尽可能真实地模拟现实生活的情景。

5)CelebA(the celebfaces attributes)(Liu 等,2015)。CelebA 数据集是香港中文大学多媒体实验室2015 年公开的一个大规模的人脸属性数据集,包含10 177位名人的202 599幅彩色图像,覆盖了背景及姿势方面的较大变化。每幅图像有40 个二进制属性注释,如是否佩戴眼镜、长短发、鼻子、嘴唇、发色、性别等。该数据集的年龄跨度为0~100 岁,年龄标注类型也为年龄组。图4为CelebA 数据集的示例图像。

图4 CelebA数据集的示例图像Fig.4 Images in the CelebA dataset

6)IMDB-WIKI(Internet Movie Database-WiKipedia)(Rothe 等,2015)。IMDB-WIKI 数据集发布于2015 年,是一个包含20 284 位名人共523 051 幅图像的数据集,图像和年龄、性别信息从IMDB 和WiKipedia 网站收集,年龄标注类型为年龄值,年龄跨度为0~100 岁。其中,获取自IMDB 和WiKipedia网站的数量分别为460 723幅和62 328幅,是目前规模最大、包含人数最多的人脸年龄数据集。

7)UTKFace(Zhang 等,2017)。UTKFace 数据集发布于2017 年,是一个具有较长年龄跨度的大型人脸数据集,它有20 000幅带有年龄、性别和种族标注的人脸图像,年龄范围为0~116 岁,平均年龄为33 岁。图像是从Google 和Bing 搜索引擎收集的,覆盖了姿势、面部表情、光照、遮挡和分辨率等方面的较大变化。

8)FFHQ(the flickr faces high quality)(Karras等,2019)。FFHQ 数据集是NVIDIA 公司于2019年开源的一个高质量的人脸数据集,其图像来自于Flickr。FFHQ 数据集包含70 000 幅1 024 × 1 024 像素分辨率PNG 格式的高清人脸图像,在年龄、种族和图像背景上丰富多样且差异明显,年龄范围为0~100岁。图5为FFHQ数据集的示例图像。

图5 FFHQ数据集的示例图像Fig.5 Images in the FFHQ dataset

表1总结并对比了上述常见已公开的人脸年龄合成数据集,主要包括以下方面:图像数量、来源人数、年龄范围、标签类型、来源身份、平均年龄及图像状态。目前人脸年龄合成任务中最常用的数据集为MORPH与CACD。人脸年龄合成数据集与人脸识别等传统人脸数据集相比,规模较小,且图像质量良莠不齐。然而,人脸年龄合成任务需要大规模的标签正确、年龄分布均衡的高质量人脸图像,所以收集和建立满足要求的人脸年龄合成数据集是非常必要的。

表1 常见已公开的人脸年龄合成数据集Table 1 The common published face age synthesis datasets

3 人脸年龄合成方法的分类

在过去的20 年中,人脸年龄合成取得了令人瞩目的进展,人们提出了大量解决这一问题的方法。目前,人脸年龄合成方法可分为传统图像处理方法和基于机器学习的方法这两大类。其中,传统图像处理方法包括基于物理的人脸年龄合成方法(Suo等,2012;Tazoe 等,2012)和基于原型的人脸年龄合成方法(Kemelmacher-Shlizerman 等,2014;Tiddeman等,2001)。基于机器学习的方法又称为基于模型的方法,可分为参数化线性模型方法、基于时间架构的深度生成模型方法和基于GAN 的方法。本文主要总结目前主流的、合成质量最好的基于GAN 的人脸年龄合成方法,将在下一节单独综述,本节仅简要归纳其余方法。

3.1 基于传统图像处理的人脸年龄合成方法

基于物理的人脸年龄合成是通过建立参数化模型机械地模拟人脸的面部结构(Ramanathan 和Chellappa,2006)、皮肤皱纹(Ramanathan 和Chellappa,2008;Suo 等,2010)、肌肉形状(Suo 等,2012)等方面的衰老机制。Todd 等人(1980)提出一种修正的心形应变变换对头部轮廓生长进行建模。Wu 等人(1994)提出一个3 层动态皮肤模型来模拟皱纹的纹理结构。

基于原型的人脸合成方法使用非参数模型,利用原型人脸的特征来合成目标人脸,其基本思想是计算特定年龄组的平均人脸作为该年龄组的原型人脸(Rowland 和Perrett,1995),将其与目标年龄组原型人脸的面部形状与纹理差异作为老化模式,应用于目标人脸上进而合成老化人脸。然而,由于老化模式是通过平均人脸获得的,一些重要的个性化特征(如皱纹等)可能会被平均化,从而导致个人身份丢失,因此基于原型的方法在一定程度上忽略了人脸的身份信息。在实际应用(如跨年龄人脸识别)中,保持身份已是基本要求。为了改善上述问题,Shu 等人(2015)提出了一种基于词典学习的方法,为每个年龄组构建对应的年龄耦合字典,输入图像的稀疏编码系数表示其个性化的过渡模式。Wang等人(2016b)提出了一种结合多层滤波器的标签约束字典学习(Olshausen 和Field,1997)的方法,学习一个标签来约束字典,字典鼓励类内样本稀疏表示(Lee等,2007)并抑制类内噪声。

3.2 基于机器学习的人脸年龄合成方法

基于机器学习(即模型)的人脸年龄合成方法利用机器学习模型实现年龄(组)之间的人脸映射,这类方法能够从人脸年龄数据集中学习其对应的老化纹理和形状特征,生成较为逼真的人脸年龄图像。

参数化线性模型属于较为传统的基于模型的方法,主要采用主动外观模型(active appearance model,AAM)(Cootes 等,2001)和三维变形模型(3D morphable model,3DMM)(Blanz 和Vetter,1999)来表示人脸的形状结构和外观,以模拟面部老化。基于AAM 的方法(Lanitis等,2002)主要是利用AAM 建立各年龄段的面部参数模型,再根据目标年龄在方向老化轴上移动主动外观模型参数,进而合成目标年龄的老化人脸。而基于3DMM 的方法则是借助三维人脸重建技术,在对三维人脸图像分析的基础上建立其参数化模型,通过改变其身份参数渲染出老化效果,即可得到目标年龄的人脸图像。然而,由于人脸老化是一个非线性过程,这些方法建立的仍是线性模型,所以其合成图像的质量仍然有所欠缺。

伴随着神经网络的快速发展,深度学习方法在图像生成方面表现出卓越的能力,深度生成模型成为人脸年龄合成领域较受欢迎的方法。其中,基于时间架构的深度生成模型利用分层学习表示法对年龄进程进行建模,下面简述最具代表性的3 种方法。

由于人脸随年龄增长表现为一种非线性变化过程,为了更好地解释这种非线性过程,Duong 等人(2016)引入了时间受限玻尔兹曼机(temporal restricted Boltzmann machines,TRBM)(Sutskever 和Hinton,2007)来表示具有几何约束和空间RBM的非线性老化过程,捕捉不同年龄组人脸之间的老化转换;Wang 等人(2016a)提出了一种基于递归神经网络(recurrent neural network,RNN)的循环人脸老化模型,该模型采用两层选通递归单元作为基本递归模块,通过对两个连续年龄组之间的中间状态进行建模,以实现更好的老龄化过渡;Duong 等人(2017)提出利用时间非体积保持(temporal non-volume preserving,TNVP)方法来模拟每个阶段的面部老化过程,该方法通过使用ResNet 块(He 等,2016)映射两个连续年龄组的数据密度来实现短期老化,最终通过短期阶段的链接来实现长期老化合成。

上述3 种基于时间架构的深度生成方法可以有效地学习时间信息,即使目标年龄与受试者的输入年龄相差甚远,也可以实现老化。然而,这些方法更侧重于建模两个年龄组之间的人脸转换,其中年龄因素起主导作用,而身份信息起次要作用,因此很难同时实现年龄准确性和身份持久性,特别是对于长时间跨度的年龄增长。此外,它们在训练阶段需要对同一个体的大量配对图像进行长时间训练,由于缺乏大型纵向人脸老化数据集,因此在实际应用中潜力有限。

3.3 小结

综上所述,基于物理的方法通常只关注直观的面部特征,难免会忽略一些微妙的变化(如老年色素、色斑、胡子变白等),造成合成图像的不合理性。此外,该方法需要同一个人在不同年龄下的大量人脸,计算成本高且难以收集。基于原型的方法所产生的老化模式使得一些重要的个性化特征可能会被平均化,从而导致个人身份丢失。虽然一些基于字典学习的方法(Shu等,2015;Wang等,2016b)在一定程度上保留了个性化的身份特征,但其合成图像会出现严重的重影伪影。在基于模型的方法中,参数化线性模型方法很难找到适用于特定年龄组的通用模型,且这类方法建立的仍是线性模型,所以其合成图像的质量仍然有所欠缺。而基于时间架构的深度生成模型方法在年龄合成过程中,难以同时实现年龄准确性和身份持久性,特别是对于长时间跨度的年龄增长。

上述方法对人脸年龄合成进行了一系列探索,虽然图像合成质量不佳,但其为人脸年龄合成领域奠定了坚实的基础,具有深远意义。人们对人脸年龄合成的研究并没有就此止步,随着卷积神经网络的飞速发展,基于GAN 的人脸年龄合成方法应运而生,该方法可以有效地改善上述方法存在的问题及缺陷。

4 基于GAN的人脸年龄合成方法

近年来,生成对抗网络GAN(Goodfellow 等,2014)在图像合成和翻译任务中取得了重大进展(曹仰杰 等,2018),使用生成对抗网络框架来解决人脸老化问题成为该领域的主流。基于GAN 的年龄合成方法的主要思想是利用对抗学习机制对年轻和老年人脸图像分布之间的映射函数进行建模,并通过学习的映射直接将测试人脸转换到目标年龄(组)。基于GAN 的方法最显著的优点是,合成的人脸图像更具视觉保真度,并且具有更少的重影伪影。此外,基于GAN 的模型可以以端到端的方式进行训练,显著降低了算法的整体复杂度。

自GAN 提出后,研究者们在其框架基础上不断进行改进与优化,衍生出一系列变体模型。依据这些变体基本思路的不同,基于GAN 的年龄合成方法可以分为4类:基于经典GAN的人脸年龄合成方法、基于序列GAN 的人脸年龄合成方法、基于翻译GAN的人脸年龄合成方法和基于条件GAN 的人脸年龄合成方法。序列GAN 利用数据间的顺序关系,采用分段式方法训练GAN 网络,改进方向体现在增加GAN 中生成模型的数量;翻译GAN 将对抗域转换研究与GAN 相结合,将计算机视觉问题视为图像域转换问题;条件GAN 主要对GAN 进行条件约束,在原始GAN的基础上增加条件变量,使得GAN根据图像与对应的标签进行训练。本节将分别总结以上4 种人脸年龄合成方法。

4.1 基于经典GAN的人脸年龄合成方法

基于经典GAN 的人脸年龄合成方法直接使用GAN 来模拟任何两个年龄(组)之间的年龄变化进程,通常为不同的年龄(组)映射训练多个模型。但仅使用GAN 模型并不能取得良好的效果,为此,研究者们引入各种网络来提升合成图像的质量。

Yang 等人(2018)提出一种金字塔结构的人脸年龄合成方法,该方法强调额头和头发部分对面部合成的重要性,为了增强老化细节,引入金字塔结构的鉴别器,通过预训练的神经网络以细粒度方式提取人脸多维度特征,合成更加细致真实的人脸年龄图像。该方法适用于存在姿势、表情和化妆等变化的各种人脸样本,并实现了良好的老化效果。该方法的结构原理图如图6所示。

图6 金字塔结构与GAN结合的结构原理图(Yang等,2018)Fig.6 The structural schematic diagram of the combination of pyramid structure and GAN(Yang et al.,2018)

Tatikonda 等人(2022)提出了带有属性操作人脸年龄进展(face age progression with attribute manipulation,FAWAM)模型,该模型中的人脸老化模块(face aging,FA)就是由上述金字塔GAN 结构来实现的。

Liu 等人(2019)提出了一种属性增强的小波基生成对抗网络(attribute enhanced wavelet-based GAN,AEWGAN)的人脸老化模型。该模型将小波包变换(wavelet packet transform,WPT)模块引入到鉴别器中,通过在频率空间的多个尺度上提取与年龄相关的纹理细节特征来提高生成图像的视觉保真度。为了提高合成图像的质量,与上述金字塔GAN 结构不同,Liu 等人(2021)将注意力机制引入AEWGAN,提出属性感知注意生成对抗网络(attribute-aware attentive GAN,A3GAN)。该网络在属性感知生成器中引入注意力机制,将图像修改范围限制在与年龄相关的区域并保留输入图像中的细节。

由于条件对抗自动编码器(conditional adversarial autoencoder,CAAE)方法(Zhang 等,2017)在年龄合成过程中存在生成图像分辨率低、重影伪影严重等问题,因此,宋昊泽和吴小俊(2019)在CAAE 的基础上提出一个人脸老化/去龄化的高质量人脸图像生成模型(high quality image generation model,HQGM)。HQGM 使用VGG(Visual Geometry Group)-Face 模型对输入图像进行特征提取,不仅可以去除人工鬼影噪声,还增加了人脸特征信息和纹理信息。与CAAE 相比,HQGM 合成的人脸图像有效缓解了重影伪影问题,峰值信噪比(peak signal-to-noise ratio,PSNR)比CAAE 高3.2 dB,结构相似性 比CAAE高0.06。

Huang 等人(2021a)提出了一种渐进式人脸老化框架(progressive face aging GAN,PFA-GAN),将复杂的老化过程表述为一个由多个子网络组成的渐进式神经网络,每个子网络仅学习图像域中两个相邻年龄组之间的特定老化效应。PFA-GAN 的结构原理图如图7所示,其合成图像示例图如图8所示。

图7 PFA-GAN的结构原理图(Huang等,2021a)Fig.7 The structural schematic diagram of PFA-GAN(Huang et al.,2021a)

图8 PFA-GAN的合成图像示例图Fig.8 The composite image examples of PFA-GAN

为了得到生成图像的确切年龄,Jeon 等人(2021)提出了连续人脸老化生成对抗网络(continuous face aging GAN,CFA-GAN)。CFA-GAN 将人脸图像特征分解为两个正交特征:身份基特征和年龄基特征,以提取与年龄无关的个人特征。该方法是第1次尝试处理连续目标年龄。

4.2 基于序列GAN的人脸年龄合成方法

基于序列的方法主要思想是每个年龄(组)针对老化模式单独训练一个模型,第n个模型的输出作为第n+1 个模型的输入,以此类推,在相邻年龄(组)之间产生序列模式,逐步实现合成目标年龄的人脸图像。在该模型中,训练过程按顺序执行,n个生成模型顺序连接组合成一个完整的网络。这种方法侧重于关注数据集的顺序关系,通过逐步训练的方式将原始输入图像转换到目标年龄组。

Shen 等人(2018)提出了FaceFeat GAN,通过特征合成和特征到图像映射两个阶段合成保留身份的人脸图像,即利用高级特征域和低级图像域的两级竞争,提高合成图像的质量和多样性。这两个领域的竞争并不是相互独立的,而是相互协作以取得更好的结果。与直接将随机噪声映射到图像的单阶段模型不同,该模型两阶段合成包括多样特征生成的第1 阶段和特征到图像渲染的第2 阶段。只要第1 阶段生成的特征足够真实,第2 阶段的生成器就能够将其解码为视觉保真的高质量人脸老化图像。

Duong 等人(2019)基于TNVP 提出了一种受试者依赖的深度衰老路径(subject-dependent deep aging path,SDAP)模型用于合成老化图像。SDAP在TNVP 结构中嵌入年龄控制器,该年龄控制器可以决定合成过程中年龄变化的程度。这种体系结构既有利于通过最大限度地提高训练数据的可用性,也有利于根据不同受试者的特点采用不同的老化路径。SDAP 使用深度卷积神经网络来学习非线性过程,并将年龄转换嵌入逆强化学习(inverse reinforcement learning,IRL)框架下的整个年龄序列,通过优化奖励老化过程为个体受试者提供最佳的老化发展路径。

4.3 基于翻译GAN的人脸年龄合成方法

基于翻译的方法将年龄视为“风格”,将人脸的老化模式视为一种“风格转换”,从目标年龄组的图像中提取其对应的风格,再转换到输入人脸图像上。即从图像的一个集合域转移到图像的另一个集合域。该方法的两个主流方向是以CycleGAN 或Style-GAN 为基础模型,二者有本质上的区别:CycleGAN旨在学习映射函数实现“风格转换”,StyleGAN 则通过逐层提高图像分辨率合成目标图像。

4.3.1 以CycleGAN为基础模型的方法

Zhu 等人(2017)提出了一种利用非配对图像进行图像域转化的无监督学习模型CycleGAN,可以实现将图像从源域X翻译到目标域Y。CycleGAN 在对抗性训练过程中学习两个映射函数:G:X→Y 和F:Y→X,为了保证图像转换周期可以使图像回到原始图像,作者引入循环一致性损失保证前向过程和后向过程均可进行,其模型原理图如图9所示。

图9 CycleGAN的模型原理图(Zhu等,2017)Fig.9 The model schematic diagram of CycleGAN(Zhu et al.,2017)((a)forward cycle process;(b)backward cycle process)

由于CycleGAN 不需要成对的图像,这一优势可用于人脸老化,将图像从一个年龄(组)转换为另一个年龄(组)。受此启发,Palsson 等人(2018)将人的年龄看做图像的潜在风格,认为人脸老化是图像风格转换问题。他们将CycleGAN 框架应用于人脸老化,通过在年龄组之间训练CycleGAN 模型来实现Group-GAN。由于Group-GAN 在生成年龄变化较小的图像时具有更好的性能,而FA-GAN(face aging GAN)(Johnson 等,2016)则相反,因此作者将Group-GAN 与FA-GAN 融合后形成F-GAN 模型,通过训练不同年龄组的循环一致生成对抗网络,并将年龄估计器集成到损失函数中,生成所需年龄组的人脸图像。F-GAN的合成图像示例如图10所示。

图10 F-GAN的合成图像示例Fig.10 The composite image examples of F-GAN

Li等人(2021)以CycleGAN 为基础模型,将年龄估计模块嵌入到编码器—解码器架构中,该年龄估计模块与图像生成模块共享同一个编码器,通过统一的网络结构实现目标人脸图像合成。

受到CycleGAN 在多个领域成功解决图像到图像转换问题的鼓舞,Atkale 等人(2022)提出了一个人脸老化循环生成对抗网络(face aging cycle GAN,FACGAN)。该网络在多尺度特征融合模型中使用了空洞卷积,因为空洞卷积在多尺度特征学习中是最佳方法,它可以比普通卷积处理更多的参数。

4.3.2 以StyleGAN为基础模型的方法

Karras 等人(2019)基于风格转换思想,提出了一种样式生成器StyleGAN,实现了高级属性(如身份、姿势)与随机噪声(如雀斑、头发)的自动无监督分离。由于AdaIN 操作对每个特征映射进行归一化,从而潜在地破坏了特征之间的信息,导致Style-GAN 生成的大多数图像显示出类似水滴状的伪影,作者随后提出改进模型StyleGAN2(Karras 等,2020),通过将归一化步骤从生成器中移除,使水滴伪影完全消失。

Alaluf 等人(2021)将StyleGAN2 模型应用于人脸年龄合成,提出SAM(style-based age manipulation)方法,其编码器将输入图像与目标年龄直接编码为一系列样式向量输入到StyleGAN2 中,以生成所需年龄的输出图像。SAM 鼓励模型学习将年龄与其他面部属性分离的非线性路径,显示了在真实人脸图像上建模年龄变换的端到端方法的好处。该网络的编码器设计与Li 等人(2021)所提方法如出一辙。SAM的合成图像示例图如图11所示。

图11 SAM的合成图像示例图Fig.11 The composite image examples of SAM

4.3.3 其他类型方法

除上述两种基础模型外,还有一些其他类型的基于翻译GAN 的人脸年龄合成方法。Triple GAN(Fang 等,2020)采用三重翻译损失来模拟不同年龄群体之间年龄模式的强大相互关系,不同年龄域的渐进映射完全相关。Triple GAN 通过约束不同年龄标签的输出来保留合成人脸中的身份信息,使身份保持更加稳定。Deb 等人(2021)从提高人脸识别性能的角度出发,提出了一个特征老化模块用于学习低维空间中深度特征的投影,该模块可以指导生成器输出老化的人脸图像。Duan 等人(2022)认为同一个人在不同情绪下的衰老模式是不同的,因此提出了用于人脸老化的跨域人脸属性学习模型DEFNet(different emotional face aging network)。该网络不仅可以有效地学习不同情感风格,还可以生成对应的人脸衰老图像。

4.4 基于条件GAN的人脸年龄合成方法

基于条件生成对抗网络(conditional GAN,cGAN)的方法一般通过单个以目标年龄(组)为条件的模型来学习任何两个不同的年龄(组)的映射,在同一框架中同时实现人脸老化和年轻化。条件是以标签的形式作用于模型,该标签被转换为独热编码向量(one-hot code vector),这个热编码向量用于强制网络在所需年龄合成人脸图像。依据网络改进方向的不同,将其分为3 类,即基础型网络、改进编码器的网络和使用注意力机制的网络。

4.4.1 基础型网络

Song 等人(2018)基于双条件GAN 机制提出了一种人脸年龄合成方法AgeGAN,该方法可以从多组不同年龄的未标记人脸图像中训练人脸老化和年轻化。尽管AgeGAN 在面部衰老和年轻化方面取得了令人满意的成果,但在结构优化和合成图像质量增强方面仍有很大的改进空间。针对这些问题,Song 等人(2022)进一步提出改进模型AgeGAN++,改进主要体现在以下几个方面:1)减少整个网络的规模,在训练过程中原始条件GAN与双条件GAN之间共享权重;2)从潜在身份特征空间中分离年龄信息,只提取个人身份信息;3)改变AgeGAN 鉴别器中年龄条件的判别形式。AgeGAN++的结构原理图如图12所示,其合成图像示例如图13所示。

图12 AgeGAN++的结构原理图(Song等,2022)Fig.12 The structural schematic diagram of AgeGAN++(Song et al.,2022)

图13 AgeGAN++的合成图像示例图Fig.13 The composite image examples of AgeGAN++

为了在年龄合成过程中保留身份信息,Tang 等人(2018)提出了身份保留条件生成对抗网络(identity-preserved conditional GAN,IPCGAN),其身份保留模块采用ImageNet 预训练神经网络提取conv5层的特征,并引入感知损失保证人脸身份一致性。IPCGAN的结构原理如图14所示。

图14 IPCGAN的结构原理图(Tang等,2018)Fig.14 The structural schematic diagram of IPCGAN(Tang et al.,2018)

Huang 等人(2021c)提出的多任务框架(multitask learning framework,MTLFace)中的人脸年龄合成(face age synthesis,FAS)部分也有同样的目标,其结构原理图如图15 所示。其身份条件模块可实现身份级人脸合成,并采用了权重共享策略来提高合成人脸的年龄平滑度。

图15 MTLFace的结构原理图(Huang等,2021c)Fig.15 The structural schematic diagram of MTLFace(Huang et al.,2021c)

为了利用人脸的全局和局部信息,Li 等人(2018)提出了全局和局部一致的生成对抗网络(global and local consistent age GAN,GLCA-GAN)来合成老化或年轻化的人脸图像。该网络的生成器包含1个全局网络和3个局部网络,分别用于生成整个面部结构以及模拟面部关键子区域的细微变化。He 等人(2019)提出的S2GAN 模型与GLCA-GAN 有异曲同工之处,可同时建模人类共有的衰老模式与个体的衰老特性。

大多数现有的老化方法仅限于改变纹理,忽略了在人类老化和生长过程中发生的头部形状变化。Or-El 等人(2020)基于此想法提出了一种新的多域图像到图像生成对抗网络架构Lifespan,其学习的潜在空间通过改变头部形状以及外观实现0~70 岁的连续年龄变换过程。

为了有效地建模非线性的形状和纹理变换,Huang 等人(2021b)提出AgeFlow,该框架集成了基于流的模型和GAN 的优点。而He 等人(2021)提出了一种基于潜在表示分解的人脸年龄合成模型(lifespan face synthesis,LFS)。该网络使用条件卷积和通道注意两个不同的变换模块,使合成图像具有年龄敏感性并保留身份。LFS的结构原理图如图16所示。

图16 LFS的结构原理图(He等,2021)Fig.16 The structural schematic diagram of LFS(He et al.,2021)

4.4.2 改进编码器的网络

Zhang 等人(2017)基于cGAN 方法提出了一种条件对抗式自动编码器CAAE,通过学习流形和潜在空间之间的映射合成带有目标年龄标签的目标年龄人脸,实现平滑的年龄进展与回归。

受Intro VAE(variational auto-encoder)的启发,Li 等人(2020a)提出了一种解纠缠对抗式自动编码器(disentangled adversarial autoencoder,DAAE)用于面部年龄分析任务。在变分证据下界和身份知识提取的监督下,DAAE将人脸图像分解为3个独立的因素:年龄、身份和无关信息。作者认为这3 个因素都是面部衰老的条件,为了充分利用这些条件,提出一种分层条件生成器,通过类条件批量归一化将分离的身份和年龄向量传递到高层和底层。

4.4.3 使用注意力机制的网络

为了将老化效果限制在与年龄变化密切相关的区域,Li 等人(2020b)将注意力机制引入cGAN 来实现年龄合成。该模型使用两个独立的生成器对老化及年轻化过程进行建模,并以循环方式对其进行联合训练。此工作首次将空间注意力机制引入人脸年龄合成。该方法的合成图像示例如图17所示。

图17 注意力机制与条件GAN结合的合成图像示例Fig.17 The composite image examples of the combination of attention mechanism and conditional GAN

Zhu 等人(2020)基于同样的思想提出注意力条件生成对抗网络(attention conditional GAN,ACGAN),该网络在生成器中引入注意力机制,使其生成老化人脸时,仅修改与人脸老化相关的区域。Shi等人(2020)在此网络的基础上引入归一化,提出了条件注意归一化生成对抗网络(conditionedattention normalization GAN,CAN-GAN)。该网络利用两个年龄组之间的年龄差异来捕捉具有不同注意因子的面部衰老区域。条件注意归一化层能够通过学习的注意力图增强人脸的年龄相关信息,同时平滑人脸的年龄无关信息。

4.5 小结

基于GAN 的方法是一种新兴的利用深度卷积网络训练模型的方法,虽然训练过程需要花费较高的时间和计算成本,但这种方法可以生成一个能应用于所有年龄组的单一模型,并且生成的模型可以从一个年龄组平滑而真实地过渡到另一个年龄组,极大地推进了人脸年龄合成任务的进展。

综上所述,使用经典GAN 来模拟人脸老化的方法,一方面由于输入信息考虑不全面,导致身份保留度受影响;另一方面,其在年龄条件的控制下处理所有年龄映射及网络,生成图像的年龄精度可能不理想。基于序列GAN 的方法侧重于关注数据集的顺序关系,存在严重的依赖性,如果某一个模型的输出出现问题,将会影响到整个模型的性能。此外,这种方法对数据集的要求也较为严格,需要每个年龄组连续完整的图像。基于翻译GAN 的优点是,它不需要同一个人不同年龄的大量照片,只需要数据集中的每个年龄组有充足的图像即可。基于条件GAN 的方法需要具有清晰正确标签的数据集。与基于翻译和基于序列的方法相比,该方法具有显著的优势,但条件GAN 十分依赖数据集中给定的有限的标签,且难以实现进一步的细化控制。基于GAN 的方法与传统方法相比,虽然合成图像的质量有所提升,但仍存在一些难以克服的问题。因此,人们需要进一步探索更加优秀的人脸年龄合成方法。

5 年龄合成评价指标和性能

目前的研究中,人脸年龄合成方法的效果评价主要从定性评估和定量评估两方面进行。定性评估主要靠人眼来判断,一般的做法是开展志愿者调查(user study),将原始图像与生成图像上传到网站,寻找志愿者对其进行打分,最终取平均得分作为模型生成图像质量(image quality)的评价结果。由于人的主观观念强烈,每个人的标准是不一致的,导致定性评估不是一个严格的评判标准,只能作为一个参考。人的视觉检查在评估低维数据时可以工作地很好,但在高维数据的情况下可能有些不尽人意。为了更直观展示定性对比的结果,图18 给出5 种代表方法在MORPH数据集上的合成图像示例。

图18 5种代表方法在MORPH数据集的定性对比示例Fig.18 The qualitative comparison examples of five representative methods on MORPH dataset

定量评估则是从统计数据角度出发,计算模型的各项指标值来对模型进行评估分析。与定性评估相比,定量评估更精确、更客观。因此,本节将重点对定量评估进行介绍。常用的年龄合成评价指标有身份保留度、年龄准确性、FID(Fréchet inception distance)、结构相似性(structural similarity,SSIM)、PSNR等。

5.1 身份保留度

身份保留度通常使用人脸验证实验获取人脸验证精度(face verification accuracy,FVA)来衡量。人脸验证实验的基本方法是,利用在线人脸分析工具,如Face++、VGG-Face、SeetaFace Engine2 的Seeta-Face 识别部分进行人脸验证,检查人脸年龄合成过程中的身份保持情况。来自同一受试者不同年龄(组)的合成图像之间的验证置信度即为人脸验证精度,人脸验证精度越高表明身份信息保留度越高。

身份相似性分数(identity similarity score,ISS)(Song等,2022)也是身份保留度的一种表现形式,主要通过计算输入图像与合成图像之间的余弦距离来实现。身份相似性分数越高,表明身份信息保留度越高。此外,个别研究还考虑到面部属性一致性(face attribute consistency,FAC),除身份外,在年龄转换过程中应保持稳定的面部属性(如性别、种族等),FAC 值越高,合成人脸图像的身份信息保留度越高。

5.2 年龄准确性

年龄合成使输入人脸图像转化到目标年龄条件,为了证明合成图像是否正确落入目标年龄(组),应对其进行客观的年龄估计以测量合成准确性。年龄准确性具体有以下3种表现形式。

1)年龄估计误差(age estimation error,AEE)。年龄估计误差为每个年龄组中输入与合成人脸的年龄分布之间的差异,是一种广泛使用的评估指标。具体来说,通过Face++在线人脸分析工具估计每个年龄组中真假人脸的年龄以进行公平比较,同一年龄组中真假人脸的平均年龄之间的差异即为年龄估计误差。年龄估计误差越低,表明合成图像的年龄越准确。

2)年龄估计精 度(age estimation accuracy,AEA)。通过Face++在线人脸分析工具估计每个年龄(组)中真假人脸的年龄,计算各年龄(组)的年龄匹配率,年龄匹配率是合成图像的预测年龄是否在正确年龄(组)中的比率,该比率表示为年龄估计精度。年龄估计精度值越高,表明合成图像年龄越精确。

3)平均绝对误差(mean absolute error,MAE)(Yi等,2015)。平均绝对误差是指合成人脸图像的年龄估计值与目标年龄(组)的平均误差,其定义为

式中,N为合成图像的数量,ai为第i幅图像目标年龄,为第i幅图像的估计年龄。平均绝对误差越小,年龄合成方法的性能越好。

5.3 FID

FID(Heusel等,2017)是一种通过计算输入图像与生成图像的特征向量之间距离来衡量两组图像的相似度的度量方法。其基本思想是先使用Inception V3 图像分类模型(Szegedy 等,2016)提取图像特征,并利用特征函数将数据分布建模为高斯分布,再计算分布间的距离。FID的定义为

式中,x 和y 分别表示真实图像和生成图像,μ(∗)和Σ(∗)分别表示x,y 对应高斯分布的均值和协方差矩阵。FID 值越低意味着两个分布之间越接近,也就意味着生成模型的效果越好,生成图像的质量越高。

5.4 SSIM

SSIM 是一种基于图像的亮度l、对比度c和结构s共3 个方面来评估图像的相似性的方法。SSIM 考虑人类视觉系统对图像的评价结果,从图像的结构信息出发衡量图像间的相似性。SSIM的定义为

式中,x,y 分别表示输入图像与生成图像,μ(∗)、δ(∗)和δxy分别表示图像的均值、方差以及x,y 的协方差,C1及C2为常数。输入图像和生成图像越相似,SSIM 值越大,结构相似性越高,即生成图像的质量越高。

5.5 PSNR

峰值信噪比PSNR 即图像像素信号峰值与噪声的平均能量之比,是一种基于对应像素点间的误差对图像进行质量评价的指标。PSNR 定义为峰值信号能量与均方误差(mean square error,MSE)之比。给定一个大小为m×n的输入图像x 和生成图像y,其均方误差MSE定义为

而峰值信噪比的定义为

式中,m,n分别表示图像的长和宽,MAXl表示图像中最大的像素值。输入图像与生成图像越相似,两者的均方误差越小,即峰值信噪比越高,生成图像的质量越高。

5.6 基于GAN的人脸年龄合成方法的性能对比

为了对比基于GAN 的人脸年龄合成方法的优劣,对部分基于经典GAN、序列GAN、翻译GAN及条件GAN 的合成方法的性能进行对比,结果如表2—表5 所示。值得注意的是:1)由于人脸年龄合成算法类型较多,无法对各个方法进行完整的性能对比分析,本文仅整理基于GAN 的具有代表性的人脸年龄合成研究方法;2)所有表中使用的数据均来自于原文。

表2 基于经典GAN的人脸年龄合成方法的性能对比Table 2 The performance comparison of face age synthesis methods based on classical GAN

表3 基于序列GAN的人脸年龄合成方法的性能对比Table 3 The performance comparison of face age synthesis methods based on sequential GAN

表4 基于翻译GAN的人脸年龄合成方法的性能对比Table 4 The performance comparison of face age synthesis methods based on translational GAN

表5 基于条件GAN的人脸年龄合成方法的性能对比Table 5 The performance comparison of face age synthesis methods based on conditional GAN

从表2—表5中可以发现:

1)生成对抗网络可以有效提高人脸年龄合成的质量。随着GAN 及其变体模型的发展,人脸年龄合成的图像质量有了一定提高。与基于物理、原型、参数化线性模型及基于时间架构的深度生成模型的方法相比,基于GAN 的方法采用对抗学习机制学习年龄映射,生成目标年龄图像,大幅度提高了人脸年龄合成的图像质量。AgeGAN++方法利用双条件GAN机制进行年龄合成,并引入图像重建误差的损失函数来保留个人身份,使MORPH 数据集上的年龄估计精度达到70%,CACD 数据集达到73%,身份相似性分数达到0.82,取得了优异的合成效果。PFAGAN 方法在非线性流形空间考虑年龄合成,采用端到端的方式训练模型,将MORPH 数据集的年龄估计误差缩小到0.14,CACD 数据集缩小到0.11。此外,近年来提出的各方法均能将人脸验证精度近似达到100%。这些方法表明,充分利用发展GAN 及其变体模型,并引入合理的损失函数可以有效提高人脸年龄合成质量。

2)虽然生成对抗网络方法较其余方法可以提高人脸年龄合成的质量,但近些年非受限条件数据集逐渐公开,人脸年龄合成的研究重心却依然停留在受限条件数据集,如MORPH、FG-NET数据集。现有方法主要在受限条件数据集上进行年龄合成研究,各项评价指标均有所提高,有的甚至趋于饱和。此外,CACD 数据集作为非受限数据集,由于其发布时间较早,已经得到了广泛使用,但其余的非受限数据集大多还未被研究者们利用起来。仅有少数研究基于除CACD 以外的非受限条件数据集,如Age-GAN++在对比FID 指标时使用了UTKFace 数据集。非受限条件数据集还没有被投入太多研究的原因在于非受限条件下的人脸图像包含各种变化,如光照、化妆、遮挡以及角度等,导致图像合成质量不理想,给年龄合成带来了巨大挑战,所以非受限条件下的人脸年龄合成在未来有广阔的发展空间。

6 结语

尽管人脸年龄合成研究取得了巨大进展,但人脸年龄合成的图像仍存在图像质量较差、真实感较低、年龄转换效果和多样性不足等问题。究其原因,主要是因为当前人脸年龄合成研究仍存在以下困难:

1)现有人脸年龄合成数据集的限制。基于深度生成网络的人脸年龄合成方法依赖于对数据集的训练,数据集的数量和质量直接关系到生成模型的好坏。年龄、性别、种族、表情和分辨率等因素对人脸年龄合成影响较大,因此,为人脸年龄合成任务建立一个年龄跨度长、图像数量多、图像分辨率高、年龄分布均衡、区分种族且标签正确的大型人脸数据集是十分必要的。此外,外部因素也是影响数据集质量的因素之一,例如每个人的衰老模式并不相同,受生活方式、环境和疾病的影响,包含这些信息的数据集可以为未来的研究提供新的方向。

2)引入人脸年龄合成的先验知识不足。人脸衰老是一个复杂的过程,每个人的衰老模式都不尽相同。人脸老化是一个时序过程,存在顺序关系;但现有的方法模型旨在学习任意人脸到目标年龄人脸的通用转换模型,不仅未考虑年龄间的顺序关系,而且未考虑人脸衰老的动态变化过程,影响了生成人脸年龄图像的精度,并导致生成的人脸年龄图像同质化严重。一些方法(Liu 等,2019,2021)注重保持人脸身份一致性,将保持人脸属性的一致性引入人脸年龄合成模型中,通过属性解耦提升了人脸年龄合成图像的质量,但忽视了人脸其他属性对人脸年龄合成的影响。所以探索如何从影响人脸年龄合成的内在因素中提取隐含的知识,并将先验知识融入到人脸年龄合成方法中是亟待解决的重要问题之一。

3)人脸年龄图像的细粒度性被忽视。对人脸年龄合成图像的细粒度性问题(赵勋 等,2021)缺乏研究。人脸相邻年龄类间相似性高、难以区分,人脸图像中对年龄敏感的细节区域(如皱纹、头发和斑点等位置)对年龄判别影响较大,所以进行细粒度人脸年龄分析是十分必要和可行的。未来研究中可以将人脸年龄合成归纳为一类新的细粒度图像生成任务,即生成属于相同类别但具有明显细节差异的细粒度图像。然而现有人脸年龄合成方法均强调在实现年龄转换的同时,尽可能保持其他人脸属性不发生变化,容易生成同质化的人脸年龄图像,虽然He 等人(2019)提出同时对人类共有的衰老模式和个体的衰老特性进行建模,但这种个体衰老特性仅由输入人脸图像决定,无法合成多样性的细粒度人脸年龄图像。所以,如何对人脸衰老的特异性进行建模,针对输入人脸合成多样的细粒度人脸年龄图像,是未来人脸年龄合成研究的重要方向之一。

4)高分辨率下的人脸年龄合成问题。人脸年龄合成过程中的合成图像质量取决于使用的算法。根据各种方法的性能比较可知,使用与GAN 相关的人脸年龄合成方法是目前已知方法中效果最好的,但仍有提升空间。一些文献将金字塔结构(Yang 等,2018)、注意力机制(Li等,2020b)等引入人脸年龄合成模型中来提升合成图像的整体质量。此外,在未来的研究中,高分辨率下的人脸年龄合成是一个新的挑战,因为处理高分辨率图像需要高计算成本与高速度设备,这对寻找资源需求较低且速度更快的算法或方法提出了挑战。

5)目前人脸年龄合成方法的评价标准不规范。在人脸年龄合成领域的模型评价方法中,虽然有一些比较常用的评价指标,但如何综合且客观准确地评价不同的模型,仍然没有一个严谨的规范。本文中提到的各模型采用的评价指标参差不齐,难以说明具体哪个模型更好。因此,在未来的研究工作中,相关部门机构与学者可以依据已有理论制定出一系列合理的评判标准,或业界内自主地形成一套通用的主流标准。实现这一目标,对人脸年龄合成领域的长远发展来说具有里程碑式的意义。

猜你喜欢
人脸老化年龄
延缓大脑老化,要怎样吃
变小的年龄
有特点的人脸
三国漫——人脸解锁
节能技术在开关电源老化测试中的应用
年龄歧视
算年龄
杜绝初春老化肌
马面部与人脸相似度惊人
长得象人脸的十种动物