Face Aging with Identity-Preserved Conditional Generative Adversarial Networks

Face Aging with Identity-Preserved Conditional Generative Adversarial Networks

Abstract

人脸老化对于年龄识别和娱乐相关的应用具有重要意义。然而,我们没有同一个人的不同年龄段对应的标签使得问题很好挑战性。由于不同人的老化速度不同,我们的人脸老化方法的目的是合成目标年龄在某一特定年龄组的人脸,而不是合成具有确定年龄的人脸。将目标年龄的人脸进行分组,人脸老化相当于将人脸迁移到某一年龄组集合中。同时,合成的人脸应该与输入人脸具有相同的特征。因此我们提出一个Identity-Preserved条件生成对抗网络(IPCGANs)框架。

主要创新点 贡献

1.使用了年龄分类网络和保持人脸身份细节网络。
2.通过用户调查验证了结果的可靠性。
3.作者提出的IPCGANs 是一个通用的框架。可以用来解决其他的多属性迁移问题。

数据集

作者使用了公开数据集CACD,包含2000名年龄在16岁至62岁之间的名人的面部照片,总过超过16万张。所有的图片都标注了年龄。在这个数据集中,姿势、光照、表情甚至风格都有很大的变化。作者90%用来训练,其余用来测试。作者将数据集分为五组。11-20, 21-30, 31-40, 41-50, and 50+ is 8,656,36,662, 38,736, 35,768 and 26,972, respectively.

主要思想

Face Aging with Identity-Preserved Conditional Generative Adversarial Networks_第1张图片
论文结构很清晰。可分为四个模块。一个生成网络,一个判别网络,一个年龄分类网络,和一个预训练的AlexNet。
网络的输入将图像与对应的目标年龄结合起来,经过生成网络输出。然后输入判别网络。将生成的图片经过了一个分类网络。最后还将生成的图片和输入图片一块输入预训练好的AlexNet计算感知loss。

损失函数

CGANs based face generation module
这里使用了LSGAN损失函数
L D = 1 2 E x ∼ p x ( x ) [ ( D ( x ∣ C t ) − 1 ) 2 ] + 1 2 E y ∼ p y ( y ) [ ( D ( G ( y ∣ C t ) ) 2 ] L G = 1 2 E y ∼ p y ( y ) [ ( D ( G ( y ) ∣ C t ) − 1 ) 2 ] \begin{aligned} L _ { D } & = \frac { 1 } { 2 } \mathbb { E } _ { x \sim p _ { x } ( x ) } \left[ ( D ( x | C _ { t } ) - 1 ) ^ { 2 } \right] \\ & + \frac { 1 } { 2 } \mathbb { E } _ { y \sim p _ { y } ( y ) } \left[ \left( D ( G ( y | C _ { t } ) ) ^ { 2 } \right] \right. \\ L _ { G } & = \frac { 1 } { 2 } \mathbb { E } _ { y \sim p _ { y } ( y ) } \left[ ( D ( G ( y ) | C _ { t } ) - 1 ) ^ { 2 } \right] \end{aligned} LDLG=21Expx(x)[(D(xCt)1)2]+21Eypy(y)[(D(G(yCt))2]=21Eypy(y)[(D(G(y)Ct)1)2]
Identity-preserved module
为了是生成的人脸保持原有的身份信息。作者引入了perceptual loss去控制人脸的细节。这里 h ( x ) h(x) h(x)代表提取的特征层,实验表明,较低的特征层善于保存内容,而较高的层保存的图片的颜色,纹理部分,因此作者采用了计算底层特征之间的均方误差。
L i d e n t i t y = ∑ x ∈ p x ( x ) ∥ h ( x ) − h ( G ( x ∣ C t ) ∥ 2 L _ { i d e n t i t y } = \sum _ { x \in p _ { x } ( x ) } \left\| h ( x ) - h \left( G ( x | C _ { t } ) \left\| ^ { 2 }\right. \right. \right. Lidentity=xpx(x)h(x)h(G(xCt)2

Age classification module
L a g e = ∑ x ∈ p x ( x ) ℓ ( G ( x ∣ C t ) , C t ) L _ { a g e } = \sum _ { x \in p _ { x } ( x ) } \ell \left( G ( x | C _ { t } ) , C _ { t } \right) Lage=xpx(x)(G(xCt),Ct)
Objective function
G l o s s = λ 1 L G + λ 2 L i d e n t i t y + λ 3 L a g e D l o s s = L D \begin{aligned} G _ { l o s s } & = \lambda _ { 1 } L _ { G } + \lambda _ { 2 } L _ { i d e n t i t y } + \lambda _ { 3 } L _ { a g e } \\ D _ { l o s s } & = L _ { D } \end{aligned} GlossDloss=λ1LG+λ2Lidentity+λ3Lage=LD
Face Aging with Identity-Preserved Conditional Generative Adversarial Networks_第2张图片

缺点

个人认为生成的图片不是很清楚。
代码开源:
https://github.com/dawei6875797/Face-Aging-with-Identity-Preserved-Conditional-Generative-Adversarial-Networks

你可能感兴趣的:(Face Aging with Identity-Preserved Conditional Generative Adversarial Networks)