本次是用GAN模型弄出时光机效果~ 穿越时空的人脸 得到你100年前的样子~~
时光穿梭第一步:解决数据集难题
鉴于最近StyleGAN在高质量人脸合成和编辑方面的成功,许多工作都集中在使用预先训练好的StyleGAN模型进行人像编辑。
然而,现有的技术通常会处理定义明确的语义属性。例如,添加或删除一个微笑或修改图片中人像的年龄。
这项工作背后的逻辑是保持这些构成一个人身份的属性不变,与此同时,用这辆人工智能的马车送他们回到过去或去往未来。
在这种情况下,人们面对的主要问题是缺乏合适的数据集。众所周知,即使有完美的神经网络模型,数据集仍然是每个人工智能研究者的噩梦。
数据不平衡、不充分或不可用是深度学习领域常见的问题,会导致数据偏见或结果不准确。
为了克服这个问题,来自康奈尔大学的华裔科学家Eric Ming Chen(左2)主导的研究团队创建了FTT(穿越时光的人脸)数据集。
Chen与来自佐治亚大学的华人科学家Jin Sun等人共同发刊,详细解释了「穿越时光的人脸」数据集的运作原理。
该数据集中的图片来自维基共享资源(Wikimedia Commons)。该平台拥有众包和开放许可的五千万张图片。FTT分析了26,247张19至21世纪的肖像,平均每十年大约有1,900张图片。
GANs父子层次结构,化身AI「时光机」
这些变化是如何实现的呢?
研究团队借助了StyleGAN(生成对抗网络)父子层次结构。特殊之处在于,他们没有选择训练一个涵盖所有年代的单一模型,而是为每十年的图像集添加一个子模型,通过训练模型集更好地综合每个时期的数据分布。
同时,为了保留被描述者的身份和姿势,研究团队采用一个父模型,将这些信息映射到隐空间向量中。
首先,训练一个StyleGAN模型集,每个年代各设置一个,使用对抗性损失和身份损失来训练一张混合人脸图。这张人脸图是子模型的输出,经过修改后,该混合图与父模型的颜色相似。
研究团队提示,在此过程中,有必要避免由于ArcFace(一种流行的面部识别模型)中的特征计算导致的身份损失的不一致性。由于ArcFace模型只在现代图像上训练,研究人员发现它在历史图像上的表现很差。
之后,每张真实图像被投射到十年流形上的一个向量w上(下图中的1960)。在该向量上,生成器G′t被训练来将精细化细节转移到所有的子模型上。最后,在输入图像上应用一个掩码,以鼓励模型保留人像的面部细节。
在微调全部子模型后,研究团队发现,FTT的不同年代的子模型(下图橙色)在发型、妆容发生改变的同时,都成功捕捉到父模型中(下图蓝色)每张图片的人像特征。
这项全新的合成图像框架有两大亮点:首先,它使人像穿越时光的愿望成真;其次,在对人脸进行时光转换时,该技术还能保留人像的大部分细节。
尽管它在数据集中还存在微小偏差(例如,在20世纪初的图像中出现了几个短发的女性),导致输出图像的不一致,但与以前的工作相比,这个模型在真实性上有了很大改善。
「穿越时光的人脸」开启了时光穿梭的第一步。如此高的准确度让人不禁遐想:这次跨越时光的是人像,那么下次呢?
参考资料: