AI 科技评论报道
编辑 | 陈大鑫
从单一的人脸图像生成其对应的视频是一个有趣的问题,研究者们通常利用人脸图像的稀疏特征点(landmarks)结合生成对抗网络(Generative Adversarial Networks, GANs)来进行人脸视频的生成。然而,由稀疏人脸特征点生成的人脸图像通常会遭受质量损失、图像失真、身份改变,以及表情不匹配等问题。
AI 科技评论今天介绍一篇能很好解决上述问题的论文,在本文中,作者使用重建出的三维人脸动态信息来指导人脸视频的生成,旨在生成逼真的和身份不变的面部视频。三维人脸动态可以更好的表示人脸的面部表情和动作,可以作为有力的先验知识指导高度逼真的人脸视频生成。
原文标题:Image-to-Video Generation via 3D Facial Dynamics
论文地址:https://ieeexplore.ieee.org/abstract/document/9439899
在文中,作者精心设计了一套三维动态预测和人脸视频生成模型(FaceAnime),来预测单张人脸图像的 3D 动态序列,然后通过稀疏纹理映射算法进一步渲染3D动态序列的皮肤细节。
最后,利用条件生成对抗网络引导人脸视频的生成。实验结果显示,FaceAnime能从单张静止的人脸图像生成高保真度、身份不变性的人脸视频,较其它方法效果更好。
1 背景及简介
当前的人脸视频生成方法普遍采用人脸的稀疏特征点(landmarks)来引导图片或视频的生成,然而作者认为使用稀疏的二维特征点引导人脸图像/视频生成的主要缺点有:
1、稀疏人脸特征点不能很好地表示人脸图像的几何形状,容易导致人脸整体形状和面部结构细节的缺失,进而导致合成图像的失真和质量损失;
2、稀疏的二维特征点不携带源人脸图像的任何内容信息,这可能会导致生成的图像过拟合于只包含训练集的人脸图像中;
3、在视频生成过程中应保留人脸身份信息,但稀疏的2D特征点没有身份信息,容易导致合成结果的身份变化。
文章的主要贡献如下:
- 不同于广泛使用2D稀疏人脸landmarks进行图像/视频的引导生成,文章主要探索包含人脸丰富信息的3D动态信息的人脸视频生成任务;
- 设计了一个三维动态预测网络(3D Dynamic Prediction,3DDP)来预测时空连续的3D动态序列;
- 提出了一个稀疏纹理映射算法来渲染预测的3D动态序列,并将其作为先验信息引导人脸图像/视频的生成;
- 文章使用随机和可控的两种方式进行视频的生成任务,验证提出方法的有效性。
2 方法描述
本文提出的 FaceAnime 包含一个 3D 动态预测网络(3D Dynamic Prediction, 3DDP)和一个先验引导的人脸生成网络(Prior-Guided Face Generation, PGFG)。
首先,本文方法基于三维形变模型(3D Morphable Models, 3DMM)对单张人脸图像进行三维重建, 3DDP网络随后预测该图像未来的3D动态序列,之后将动态序列进行稀疏纹理映射渲染,最后使用PGFG网络完成相应的人脸生成。
模型的整体网络架构和操作流程如下图1所示:
图1. FaceAnime的整体框架图,包括3DDP网络(左)和PGFG网络(右)
(1)3D人脸重建和稀疏纹理映射
3D形变模型(3D Morphable Model, 3DMM)用来从2D人脸图像中预测相应的3D人脸。其中,描述3D人脸的顶点(vertex)可由一系列2D人脸中的正交基线性加权得出:
其中,
是平均脸,
是形状主成分基,
是相应的形状系数,
是表情主成分基,
是对应的表情系数。反过来,3D人脸顶点也可以通过变换映射到一个2维图像平面上,对应的公式可以表达为:
其中,V表示3D顶点在2维平面上的映射坐标,
是固定的正交映射矩阵,
是对应的旋转矩阵,而t为偏移向量。通过最小化映射landmarks和检测的landmarks之间的
距离,最终可以求得 3DMM 中的系数。
如图2所示,给定一张源人脸图像(Source Face),其3D形状可以通过改变重建的 3DMM 系数来进行任意的修改, 则目标人脸的稀疏纹理可以由修改后的3DMM 系数获得。在人脸重定向任务中,修改的 3DMM 系数可由参考人脸视频帧得到,而在人脸预测任务中,则由 LSTM 模块预测得到。为了防止在纹理映射中,密集的纹理先验信息太强而导致目标动作中出现不符合期望的结果,因此在纹理映射过程中本文采用间隔采样即稀疏纹理映射,以适应不同的人脸运动变化。
图2. 给定不同的3DMM系数所得到的不同三维人脸重建和稀疏映射的结果
不同于以往只针对某一种任务的视频生成,在本文中作者提出了三个不同的生成任务,即人脸视频重定向(Face video retargeting),视频预测(Video prediction)以及目标驱动的视频预测(Target-driven video prediction)。对于retargeting任务,作者使用参考视频来提供序列的变化信息,而不使用3DDP来预测。
视频预测:给定一个观测到的动态序列(3DMM coefficients),LSTM对其进行编码:
为了预测出一个合理的动作,LSTM不得不首先学习大量的动作输入以识别在姿态序列中运动的种类以及随时间的变化。在训练过程中,未来动态序列可以由下式生成:
其中
表示预测得到的3DMM系数,其表示在时刻t的3D dynamic。基于以上公式,模型可以从一个初始的dynamic学到一个合理的未来序列。
目标驱动的视频预测: 对于LSTM来讲,要实现目标引导的运动生成,模型需要两个输入,即source dynamic和target dynamic。不同于视频预测,作者使用了一个计时器来对target dynamic进行重新赋权。整体的LSTM预测可以用公式表示为:
这里
表示target dynamic,T为预测长度,即