【CVPR2019】S2GAN: Share Aging Factors Across Ages and Share Aging Trends Among Individuals

小透明第一次写技术类型的文章,如有疏漏还请大家不吝赐教。行文顺序就按照我看论文的顺序,当作我个人的记录,还请见谅。

说个题外话,S2GAN是中科院自动化所 He Zhenliang 写的,网上没有找到博客解读。正好最近出不了门,在cvpr2020出来之前,先翻翻19年的文章去。之前用过他的 AttGAN,惊为天人。如果没有StarGAN,现在说不定就是AttGAN的天下了。好了开始!

Abstract:

通常,我们人类遵循大致常见的衰老趋势i.e. 大家共有的衰老趋势),例如,皱纹只会趋于更大,更长或更深。然而,每个人的衰老过程更多地取决于他/她的个性化因素,包括不变性因素,例如身份以及个性化的衰老模式(i.e. 每个人的衰老趋势),例如,一个人可能会因头发变白而衰老,而另一个人可能因后退而衰老。发际线。遵循这一生物学原理,在这项工作提出了一种有效的方法来模拟自然衰老。为每个个体建立个性化的衰老基础,以描绘他/她自己的衰老因素。然后,不同的年龄会共享此基础,这是通过特定年龄的转换得出的。特定年龄的转换代表了所有个人共享的衰老趋势。所提出的方法可以实现连续的面部老化,并具有良好的老化精度,身份保持性和保真度。此外,根据有效的设计,独特的模型能够适应所有年龄段,并且大大节省了预测时间。


Idea:

作者认为,以前的人脸 老化/年轻化 模型的本质都是 人群到人群 的转换。不在乎个人的老化进程,只要生成图像保持身份信息一致,以及满足年龄组的老化结果就行。

文中提出自然衰老过程的新观点,即每个个体在不同年龄阶段的面部图像都是从个性化衰老基础得出的,而从衰老基础到目标衰老人脸图像的特定年龄转变模式在所有个体之间共享,即共有的衰老模式

其实本质就是,身份保持网络不仅要抽象出身份信息(ID)这种静态信息,还要能表达出个人特有的老化基础这种动态信息。把个人老化基础人类共有的老化模式结合就能得出具有个性化的人脸老化图像了。


Contribution:

•自然衰老过程的新观点,即特定个人不同年龄的面孔都来自相同的个性化衰老基础,而所有个体都共享从衰老基础到目标衰老面孔的特定年龄转变。

•降低计算成本。 独特的模型能够满足所有目标年龄,因此受益于共享机制(S2模块),大大节省了预测时间。

•有利的连续老化,这可以通过对相邻年龄组的老化变换进行插值来实现,优于现有的离散逐组年龄合成方法[1、17、40、42、19]。

•S2模块与现有方法正交,因此可以在许多具有转换网络的最新方法(例如[17、42、19])中用作插件模块,以减少其计算量并启用持续老化,同时仍保持自己的优势。


Method:

前面说了那么多,终于到方法部分了

离散年龄生成的Generator

因为没有找到源码,只能从作者的描述来看模型整体结构

Generator

生成器部分采用CycleGAN的生成器作为基础模型

1.编码器部分提取 Personalized Basis(个人衰老模式) 作为个人特征

2.中间用线性组合系数(linear combination coefficients)与编码器特征相乘来作为 Aging Transforms操作

3.解码器将人脸衰老特征解码,得到目标图像。

具体结构

1.encoder: 2*down-sampling + 6*residual-blocks + 1*conv 用来提取个性化衰老模式。

2.linear combination coefficients: Wi 具体怎么实现没交代,来代表人类共享的老化模式。与提取的个人衰老基础 Bi 进行矩阵乘法,(像一个比较大的卷积核或者Attention map?)这个操作比较新颖,以往的人脸属性生成任务中目标标签一般是直接concat到编码器特征中,然后解码。这次则采用了乘性的操作,用类似于系数矩阵来与个人信息做乘积。

3.decoder: 3*residual_blocks + 2*up-sampling


连续年龄生成的Generator

连续年龄生成,是基于几个年龄组进行加权,原理与上面相似。


Discriminator:

这部分不是本次的创新点,本着效果至上的原则,鉴别器分为3部分:

1.年龄组分类器: 预训练好的ResNet-50与VGG-16的ensemble model

2.Global Discriminator: Conv*7 [stride 2,1,2,2,1,2,2]+ 2*FC 

3.Local Discriminator: Conv*6 [stride 2,1,2,2,1,2,] + 2*FC

Result:


部分定性生成结果
定量生成结果

说实话定性结果倒不是很惊艳,但是定量的年龄准确率非常高,平均年龄基本都落在年龄组中间,方差也小。

我不禁在想,这个准确率大幅提升是不是因为那个预训练的ResNet和VGG16的ensemble model的功劳。。。。就像高考前先做了一遍卷子再进的考场?


Defect:

总的来说,我觉得这篇文章的愿景很好,切入点很新颖,希望能够捕获个性化的衰老模式,而不只是传统的ID信息。但是模型结果中只能看出模型的生成结果细腻,多样性丰富,但是我个人觉得是没有达到个性化生成的结果。在缺少配对信息的时候,很难去证明生成图像是否真正符合具体个体的老化模式。而且也缺乏对个性化这个词的量化标准。(ps.有个朋友就和我说过,写论文很多时候就是用数据来讲故事,讲个好故事很重要。)

具体我个人觉得不足的地方

1. 作者在结论中自己也说了,单张图像无法包含所有的个人信息,Bi并不能表现其衰老的速度,模型的本质还是 人群人群 的生成任务。

2. 身份信息保留方面采用了原图生成图像L1损失,可能是为了节省算力?个人觉得不太妥其实可以稍微用点成熟的技术,对结果的提升应该有帮助。据说大框架用的是CycleGAN?可以考虑双向学习重新重建原图像再算L1,或者改用感知损失。

瑕不掩瑜,大佬还是很牛逼的,是个很有启发性的工作!

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

友情链接更多精彩内容