题目:Towards Accurate Facial Motion Retargeting with Identity-Consistent and Expression-Exclusive Constraints 链接:https://ojs.aaai.org/index.php/AAAI/article/view/20093 团队:CVTE Research 内容整理:胡玥麟
目录
现有方法通常将该问题表述为三维人脸重建问题,该问题从人脸图像中估计人脸身份和表情等人脸属性。然而,由于缺乏身份和表情的ground-truth标签,大多数基于3d人脸重建的方法都不能准确地捕捉人脸的身份和表情。因此,这些方法可能无法实现预期的性能。
图 1
现有基于3D人脸重建的面部表情估计方法的局限性:由于没有对身份和表情的独立监督,现有的方法可能会产生不正确的身份(即小眼睛)和不正确的表情(即不眯眼),以正确地重建三维脸型。
目标是从输入图像中学习准确的面部表情,用于面部运动的重定向。
解决了面部运动重定向问题,旨在将面部运动从2D面部图像转移到3D角色。提出了一个身份一致性约束,通过鼓励跨多个帧的一致身份预测来学习准确的身份。基于更准确的身份,我们能够获得更准确的面部表情。此外,我们进一步提出了一个表达不一致约束,通过避免矛盾的表达单元(例如,“眉毛低”与“眉毛高”)的同时出现来提高性能。在面部运动重定向和三维人脸重建任务上的大量实验表明,该方法优于现有方法。
提出了一个一致参数估计模型(CPEM),该模型包含两个设计良好的约束,用于准确提取表达式。身份一致约束:显式地在多个帧中强制执行同一个人的所有预测身份系数,以近似平均预测身份,这有助于学习一致且准确的身份,并且对不同的表达具有鲁棒性。因此,准确的身份估计促进准确的表达估计。此外,我们提出了一个表达不一致约束来抑制矛盾表达单元的共存。
本文采用三维人脸重建技术,从图像中估计人脸的身份、表情等信息。
为方便起见,下面分别介绍用于三维人脸重建的三维人脸模型、光照模型和摄像头模型。
是人脸形状,
是3D面部纹理,
是平均值,
分别表示身份基和纹理基,
是表达式模型,
对应的系数是人脸模型的向量.
使用球面谐波(SH)近似模拟场景照明(Ramamoorthi and Hanrahan 2001)。具体来说,使用人脸纹理和表面法线作为输入,通过具有相应SH系数γ的SH基函数计算场景光线。
使用了经验选择焦距的透视相机模型。因此,三维人脸的姿态p由欧拉旋转
和平移
表示。
最后,将所有所需的3DMM系数连接到单个向量
中,该向量用于重建3D人脸,并使用可微分渲染器将其渲染回图像平面。特别地,表情系数
和头姿系数
用于面部运动重定向。
框架的概述
使用三维人脸重构框架:输入人脸图像并输出重建的三维人脸形状,并结合人脸身份和表情。
图 2
使用参数估计网络(PE-Net)从训练中一个人的多个视频帧中估计3DMM系数。为了提高表情估计的准确性,我们使用了新的身份一致约束
和表情不一致约束
以及其他3D人脸重建损失
来训练我们的模型。在推理过程中,我们只取表情系数和头姿系数进行面部动作重定位。
形式上,给定同一个人的T帧作为输入,首先使用参数估计网络估计T组3DMM系数。然后,将预测系数与3DMM先验模型相结合,重建3D人脸,然后使用可微渲染器将其渲染回图像平面。最后,训练参数基于所提出的身份一致约束和表情不一致约束以及若干损失的er估计网络,以自监督方式进行三维人脸重建。
分别是三维人脸重建的自我监督损失和提出的身份一致损失和表情不一致损失。
是相应损失的超参数。在推理过程中,模型每次以一张图像作为输入,并预测3DMM系数,其中表情系数β和头姿系数p用于面部运动重定向到与我们的表情混合形状一致的任何3D目标,3DMM是三维形状和外观建模的简称,它是一种用于创建和编辑面部形状和纹理的方法。3DMM通常用于计算机视觉和图像处理领域,可以用于人脸识别、表情识别等应用。
身份一致性(Identity-consistent)约束
在训练期间强制所有输出标识系数来近似伪标识标签。形式上,在t坐标系中的恒等一致性约束被定义为预测的恒等系数
与伪恒等标签
之间的均方误差:
身份标签在训练过程中不断更新,但作为固定标签来监督每批参数估计网络在反向传播中的身份输出。同一个人多帧的平均身份系数比每帧的具体身份系数更准确,因为它减少了每帧不同表情造成的变化。此模型通过将预测的身份显式逼近到平均预测的身份,充分利用了多帧的身份信息,从不同的人的图像中,即使表情不同,也能估计出一致而准确的身份。
表情独占(Expression-exclusive)约束
表达模型由46个表达单元(即blendshapes)组成,其中有几个表达单元是矛盾的,如“眉下”和“眉上”。然而,在训练过程中,没有对表达系数进行直接监督,避免这些矛盾的表达单元同时出现,给准确的表达学习带来困难。为了解决这个问题,论文提出了一个表达式不一致约束来指导模型抑制那些不应该出现的表达式单元。
假设对于两个相互矛盾的表达式单元,值较大的单元占主导地位并应保留,我们将表达式不相容约束实例化为表达式不相容损失:
是一对矛盾的表情的表达系数,
是一个矛盾的表情对集合
为指标函数,如果
为真,则
;如果
为假,则
。
三维人脸重建中的多帧损失
以自我监督的方式训练所提出的CPEM,而不使用3D监督。除了我们在上面章节中提出的两个约束外,我们还包含了几个用于3D人脸重建的损失函数。它们的定义如下:
分别是测光损失、感知损失、边界损失和正则化损失。(photometric loss,perception loss, landmark loss and regularization loss)
测光损失
使用
损耗来计算第
个输入帧
和渲染帧
之间的光度差异。损失公式:
其中I为像素指数,M为可微渲染器生成的重投影人脸区域。A是一种现有人脸分割方法(在面部皮肤区域的值为1,其他区域的值为0的mask),可以减少眼镜等遮挡带来的误差
感知损失
为了产生更逼真的面部形状,我们还使用了预训练的人脸识别网络在训练期间使用感知损失。具体来说,我们提取输入图像I和渲染图像I的深度特征,并计算余弦距离来衡量两个特征之间的相似度。损失定义为:
式中
表示从人脸识别网络中提取的深度特征,
表示向量内积。
边界损失
landmark loss测量的是ground-truth 2D人脸landmark
与重建的3D人脸中对应的landmark
之间的差值,其中的landmark
已经被学习到的相机模型投影到图像平面中。损失定义为
其中n为地标数量,I为地标指数,
为landmark权重,我们将面部轮廓设为1,面部内区域设为10,以减少轮廓landmark的影响。
正规化的损失
为了防止面部形状和纹理退化,我们在估计的3DMM系数上添加了常用的正则化损失,以强制向平均面部进行先验分布。损失记为
经验地将超参数设置为
基于PyTorch实现我们的方法,并使用Pytorch3d的可微分渲染器。使用Adam优化器,学习率为
。
训练模型进行300K次迭代,批大小为8,输入大小为224×224,并且仅在最后100K次迭代中使用表达式独占损失。使用ResNet50作为参数估计网络的主干。我们改变最后一个完全连接层的输出维度来输出3DMM系数,并在表达式分支上使用sigmoid函数。默认情况下,我们设置T = 4, λ_idc = 1000, λ_exp = 10。
1.不同方法在FEAFA测试集上面部运动重瞄准精度(以平均绝对误差测量)的比较。较小的误差意味着该方法在捕获表达式时性能更好
表 1
2.面部运动重定向不同方法的比较。我们在第一行显示具有不同表情的源人员。第二和第三行显示重定向结果(即:(将面部表情和头部姿势)分别传递给目标人和目标3D角色。我们使用红色虚线框突出显示一些重定向细节。
图 3
3.最先进的三维人脸重建方法的视觉比较。在遮挡、极端光照和大表达条件下的几幅图像上评估了所提出的CPEM。结果表明,在大多数情况下,与其他方法相比,CPEM方法重建的三维人脸几何形状相当。
图 4
4.Voxceleb2测试集上每一帧与第一帧的恒等系数在MAE方面的恒等一致性比较
图 5