Learning an Animatable Detailed 3D Face Model from In-The-Wild Images

0、摘要

  1. 虽然现有的单目3D人脸重建的方法可以重建精细的几何细节,但是他们都有一些限制。一些方法重建出的人脸无法逼真的动画化,因为他们没有模拟出皱纹如何随着表情变法化而变化。其他的一些方法是在高质量的脸部扫描数据集上训练的,在现实图片(in-the-wild images)中效果并不是很好。

in-the-wild images:计算机视觉领域的术语,用于描述现实世界中的图像,通常指的是非受控制的、具有多样性和复杂性的图像。
“In-the-wild” :意为“野外、野生”,表示这些图像并非受控制、标准化的实验室环境下获得的图像,而是在真实的生活场景中获取的,包括不同的拍摄角度、光照条件、图像质量等方面的变化。这些变化使得这些图像具有更高的多样性和复杂性,

  1. 本文提出的一个方法,可以回归出与个人相关但随表情变化的3D面部形状和动画细节。这个模型(DECA:Detailed Expression Capture and Animation)被训练的可以从低维潜在表示中鲁棒地生成一个UV位移图,这个潜在表示由个人特定的细节参数和通用表情参数构成。同时另一个回归器也被训练来从单张图像中预测细节、形状、反照率、表情、姿态和照明参数。
  2. 本文引入了细节一致性损失,该损失可以将个人特定的细节与表情相关的皱纹进行分离。有了这个分离操作,就可以在保持个人特定的细节不变的情况下,通过控制表情参数来合成逼真的个人特定的皱纹。
  3. DECA是在“in-the-wild”图像中学习而来的,没有配对的三维监督信号,但在两个基准上都实现了最先进的三维重建精度。

1、引言

  1. 三维人脸重建广泛应用:用于VR/AR的3D avatar creation(三维虚拟人物创建),视频编辑,图像合成,人脸分割,虚拟化妆,语音驱动的面部动画等。
  2. 现有大多数方法是通过利用预先计算好的三维人脸模型,结合了几何或外观的先验知识。但是这些方法只能重建粗略的面部形状,不能捕捉如表情相关的皱纹等几何细节,这些细节对实现真实感和支持人类情感分析非常重要。
  3. 一些方法可以重建细节的面部几何,但是他们需要高质量的训练扫描,或者是对遮挡情况缺少鲁棒性。这些方法都没有探索重建的皱纹如何随着不同的表情而改变。
  4. 还有一些方法有可以学习表情相关细节的模型,但要么用精细的三维扫描作为训练数据,因此无法推广到无约束图像(unconstrained images)中去,要么将表情相关的细节建模为外观贴图的一部分,而不是几何形状,这样会阻止逼真的网格光照处理(mesh relighting)。

unconstrained images:指的是没有特定限制和要求的图像,例如随意拍摄的照片、网络上的图片等。这些图像没有被限制在特定的环境或条件下,也没有受到任何限制或控制,因此通常会呈现出更多的变化和不确定性,可能包含更多的噪音和失真。

mesh relighting:是指对网格模型的表面进行光照处理,以改变其外观和视觉效果。它通常用于在虚拟场景中实现逼真的光照和渲染效果,例如在电影、游戏和虚拟现实等应用中。通过改变光源位置、颜色和强度等参数,可以在不改变网格模型的形状和结构的情况下改变其外观,从而实现更加逼真的渲染效果。

  1. 本文引入的DECA可以在没有2D-3D监督下从“in-the-wild”图像中学习一个可动画化的位移模型。但与之前方法不同的是,这些可动画化的表情相关的皱纹是特定于个人的,并且是从单张图片中回归出来的。
  2. DECA的细节模型是基于FLAME的粗略几何形状(coarse geometry),作者将位移(displacements)形式化成个体相关的细节(subject-specific detail)参数和FLAME下颌姿态和表情参数的函数。这意味着,通过调整这些参数,可以控制位移,从而改变面部的形状和表情。例如,改变FLAME模型的表情参数可以调整面部表情的强度,而改变下颌姿势可以控制嘴巴的开合程度。主体特定细节参数可以捕捉个体之间的差异,例如皮肤质地和面部特征等,从而使生成的3D人脸更加逼真和个性化。

coarse geometry:指的是3D几何模型的粗略形状,通常由一组简单的基本几何形状组成,如三角形网格或多边形网格等。这种粗略的形状通常用于初始化或近似3D形状,并作为后续细节建模的基础。在人脸建模中,常用的粗略几何模型包括FLAME、3DDFA等。

subject-specific detail:指的是与个体有关的、在面部表情、纹理等方面具有独特特征的细节信息。在3D人脸建模中,由于每个人的面部表情和纹理都是不同的,因此需要通过建模来捕捉这些个体差异,并将其整合到人脸模型中以实现更加真实和准确的重建。在这种情况下,"subject-specific detail"通常指用于描述这些个体特征的参数或函数。

displacements:在三维人脸重建中,“displacements"指的是从粗略3D几何模型(如FLAME)到实际人脸表面的偏移量。在这种情况下,重建过程是通过在粗略模型的基础上引入一系列偏移量(也称为"displacement maps”)来捕捉面部表情、纹理等细节信息,从而生成一个更加真实和准确的3D人脸模型。这些偏移量可以根据个体特征进行调整,以实现更加个性化的重建。

  1. 细节一致性损失能够将特定个人的细节和表情相关的皱纹分离开,目的就是在控制重建面部的表情相关皱纹的时候,可以同时保留特定个人的细节(痣、眉毛、与表情无关的皱纹等)。
  2. 作者发现,如果给同一个人的不同表情的照片,它们的三维人脸形状和个人特定的细节是一样的,但是表情和皱纹的强度会随着表情发生变化。利用这一观察,作者通过对同一身份的不同照片交换细节代码,来强制新渲染的结果看起来要与原始输入的图像一致。
  3. 总结本文的亮点:提出了一个方法,可以从“in-the-wild”中学习可动画的位移模型,通过改变表情参数即可实现;引入细节一致性损失;重建的几何细节不像其他方法那样容易受遮挡、姿态变化、光照变化的影响,具有很好的鲁棒性;基准测试中也是最先进的。

2、相关工作

  1. 许多单目三维人脸重建方法是估计固定线性形状空间的统计人脸模型的参数,这样只能捕捉低频(low-frequency)形状信息,这就导致了重建结果过于平滑,缺少细节和高频信息。

low-frequency:低频形状信息指的是脸部表情或形状的整体变化趋势或模式,这些变化模式比较平滑或缓慢,例如脸部的整体平移、旋转或缩放。与之相反,高频形状信息指的是脸部表情或形状的细节,例如皱纹、皮肤纹理等。因此,如果使用仅包含低频形状信息的线性形状空间来重建人脸,可能会导致重建结果过于平滑。

  1. 还有一些方法不是基于模型的,直接回归三维人脸的体素或网格,所以相比基于模型的方法能够捕捉到更多的变化。但是这些方法需要显示监督学习,使用基于优化的模型拟合(an optimization-based model fitting)或者通过采样统计的人脸模型生成的合成数据方法(synthetic data generated by sampling a statistical face model),所以也只能捕捉到粗略的形状变化。

“an optimization-based model fitting” 指的是一类模型拟合的方法,即通过优化损失函数来调整模型参数,使得模型的输出与观测数据尽可能地匹配。
“synthetic data generated by sampling a statistical face model” 是指通过对一个统计人脸模型进行采样生成合成数据,以扩充训练数据集的方法。在这种方法中,可以通过控制采样参数来生成不同的合成数据,从而增加训练数据的多样性。

“只能捕捉到粗略的形状变化”的理解:虽然无模型方法不需要事先定义一个具体的3D面部模型,而是直接预测3D面部形状(例如体素或网格),因此可以捕捉比基于模型的方法更多的变化。但是,所有这些方法都需要明确的3D监督,而这种监督是通过基于优化的模型拟合或合成数据生成的。这些方法中的一个需要使用3D面部模型和优化算法,不断调整模型参数,直到该模型与给定的2D图像对齐。另一个方法则需要使用统计面部模型生成合成的3D面部形状。这些方法虽然是无模型方法,但是也需要基于模型的方法来提供训练模型所需的明确的3D监督。 所以, 也是只能捕捉粗略形状变化。

  1. 还有一些方法是并不着重于捕捉面部高频几何细节,而是重建粗略几何结构的面部,在加上高保真纹理信息。但是这其中由于使用了baked-in shading方法把细节烘培进了纹理中,所以当光照变化的时候无法影响这些细节,所以无法逼真应用。而DECA则是捕捉了这些细节作为几何的一部分,这样就可以动画化并重新光照(relighting)。换句话说:DECA在粗略重建中多加了光照参数,这样就可以更好的动画化。

relighting:指的是在一张已有的图像上改变光照的方向、强度或颜色等参数,从而得到一个新的看起来似乎是在不同光照条件下拍摄的图像。这个过程可以用于许多应用,例如电影特效、虚拟现实和增强现实等。

  1. 综上,粗略重建是完全不够的,只能捕捉低频信息,所以DECA加了个细节重建,来生成UV位移图。

对于高频、低频、中频细节理解:通常来说,低频信息包含了大体的面部结构和姿态信息,属于粗略重建;中频信息包含了面部的粗略纹理和表情信息,也可以看作是粗略重建(当然本文认为是细节重建);高频信息则包含了细微的面部细节和纹理信息,属于细节重建。

  1. 在细节重建中,常规的方法是先用基于优化的方法将统计人脸模型拟合到图像上,得到一个粗略的形状估计,然后使用shape from shading(SFS)方法从单目图像或者视频中重建面部细节。但是这些方法速度较慢,产生的结果对遮挡的鲁棒性也不够好。并且粗略模型拟合的步骤中需要面部特征点,这使他们在大视角和遮挡的情况下容易出错。

为什么粗略模型拟合需要特征点就会导致大视角和遮挡情况下容易出错:这是因为面部特征点通常只在正面或半侧面视角下可见,当面部出现遮挡或大视角变化时,这些特征点可能无法准确地被检测到,从而导致粗略模型拟合的错误。特别是在大视角下,由于面部结构的形变和变形,这些特征点可能会发生较大的位置偏移,导致拟合的模型不准确。因此,不依赖于面部特征点的模型自然更具有鲁棒性和稳健性。

SFS(Shape from Shading):它是一种三维形状恢复的方法,通过观察物体在不同的光照条件下的表面阴影来推断物体表面的三维形状。SfS方法通过对照片进行分析来推断出光源方向、光源强度和物体表面法线方向等参数,进而反演出物体表面形状。在人脸重建中,SfS方法被广泛用于从单张图像中推断出人脸表面的细节和形状。

  1. 而大部分基于回归的方法是首先利用统计人脸模型来重建一个粗略的形状,然后用回归的方法进行细化以捕捉局部细节,比如有的方法是使用高分辨率扫描数据计算局部皱纹统计量,并利用这些统计量来约束从图像或视频中的细节重建,还有的方法是直接回归每个像素的位移图来进行人脸重建。但是这些方法只是在没有遮挡的区域重建细节,遮挡的区域不能很好的重建,所以会造成遮挡部分的可见伪影(artifacts)。因此后来提出通过用人脸分割方法来确定遮挡区域的方法,然后采用基于实例的空洞填充方法来处理被遮挡区域,从而增强了对遮挡的鲁棒性。

伪影(artifacts):指的是重建结果中出现的不真实的或者不准确的图像区域。这些区域通常是由于采集数据不完整或者模型假设不准确导致的。伪影可能表现为一些重建的细节或形状不真实或者不连续,或者出现不自然的图像纹理。伪影可能会影响到重建结果的真实感和质量,需要通过改进算法或者改进数据采集方式来减少其出现。

  1. 后来还出现了无模型方法,不需要统计人脸模型,有的是直接重建细节丰富的网格模型,有的是重建了表面法向量,这些法向量可以添加到粗略重建中以增加细节,还有通过联合学习的方法进行重建。虽然这些方法比固定的统计模型方法要更灵活,但是他们捕捉到的几何细节有限。latas等人使用图像翻译网络来推断漫反射法线和镜面法线,从而实现逼真的渲染。而且与DECA不同的是,这些细节重建方法都是不能在重建后提供动画细节的。

联合学习:指的是同时学习一个统计人脸模型和使用该模型进行从图像到3D人脸的重建。通过这种方式,模型可以同时受益于大量的训练数据和先前的知识,以实现更准确和鲁棒的人脸重建。联合学习的过程中会不断地优化统计人脸模型,并且结合输入的图像信息进行人脸重建。优化的目标是使得重建的人脸与输入的图像尽可能相似,同时保持统计模型的先验知识。

图像翻译网络(Image translation network):是指一类深度学习模型,旨在将一种视觉风格的图像转换为另一种视觉风格的图像,通常使用对抗生成网络(GAN)进行训练。GAN模型由两个部分组成:生成器和判别器。生成器尝试生成类似于目标图像的图像,判别器则尝试区分真实的目标图像和生成的图像。在训练过程中,生成器的目标是欺骗判别器,使其无法区分生成的图像和真实的目标图像。
在Lattas等人的研究中,他们使用图像翻译网络将输入图像转换为具有不同光照和材质属性的图像,从而推断出法向量和高光信息。这种方法可以提高人脸重建的渲染效果,使重建的结果更加逼真。

  1. DECA采用的重建面部细节的同时还能允许结果动画化的方法。而之前关注于可动画化的方法通常是从高质量的3D面部网格中学习褶皱或属性之间的关系,例如年龄、性别、姿态或表情。DECA则不同,只需要从野外图片中学习可动画的细节模型,不需要配对的3D训练数据来监督。与FaceScape方法相比,DECA更加简单,更加鲁棒。

FaceScape:是一种人脸重建方法,有两个步骤,第一个步骤是采用卷积神经网络(CNN)从输入的人脸图像中提取粗略的3D形状。第二个步骤是从预测的粗略形状中提取纹理图像,使用另一个神经网络来预测精细的3D形状。因此,该方法需要两个神经网络来完成整个3D脸部模型的预测,其中第二个网络需要基于第一个网络提取的特征图来学习。

  1. 有的方法是使用基于表面反射率的动态(表情相关的)混合形状来纠正身份和表情。他们将几何细节建模为表面反射率的一部分,因此这些细节的着色不会随着不同的光照而自适应,从而导致不真实的渲染效果。而DECA则将细节建模为几何位移,这种方式在重新照明时看起来更自然。简单来说,DECA对于细节建模使用了不同的方法,能够更好地适应不同的光照,从而产生更真实的渲染效果。
  2. 总结来说:DECA是可以单目输入产生可动画化的特定个人的细节特征,并且是弱监督的。亮度在于细节一致性损失。

3、准备工作

  1. 首先是几何先验:采用了广义3DMM的FLAME(Faces Learned with an Articulated Model and Expressions)模型,是一种统计3D头部模型,它将独立线性身份形状空间(Separate linear identity shape)和表情空间与线性混合蒙皮(LBS)和姿势相关的修正混合形状(Pose-dependent corrective blendshapes)相结合,以实现颈部、下巴和眼球的动态表达。

独立线性身份形状空间(Separate linear identity shape):在 FLAME 模型中指的是将人脸形状分解成由各自的形状参数构成的矢量空间,其中每个参数都对应于一种特定的人脸形状。这些参数用于描述人脸的形状特征,例如眼睛、鼻子、嘴巴等部位的形状。“Linear” 表示这些参数之间存在线性关系,可以用线性组合的方式来生成新的形状。

表情空间与线性混合蒙皮(LBS):是计算机图形学中一种常见的技术,用于将网格模型表面上的顶点与骨骼系统相关联。该技术基于一个假设:网格表面上的每个顶点对于所有骨骼的影响是线性的,也就是说,每个顶点在不同骨骼的影响下只会有不同程度的缩放、旋转和平移,不会发生形状的扭曲或变形。这个假设下,每个顶点在不同骨骼的影响下可以通过线性插值得到最终位置,从而实现蒙皮效果。基本思想是将3D物体的表面分割成一系列较小的三角形面片,并将每个面片的顶点与骨骼的控制点(关节)建立对应关系。在动画过程中,通过对关节旋转的控制,对表面进行相应的变形,再通过线性插值的方式计算出各个面片上的顶点位置,最终呈现出整个物体的动画效果。

姿势相关的修正混合形状(Pose-dependent corrective blendshapes):一种基于混合形状技术的方法,用于对三维模型进行姿势相关的微调。它可以通过在原始三维模型上应用不同的混合形状来表示不同的姿势,从而更准确地捕捉模型的形态和动作。这种方法通常用于三维动画和计算机游戏中,可以提高模型的表现力和真实感。在FLAME模型中,姿势相关的修正混合形状被用于调整脖子、下颌和眼球的形状,以更好地适应不同的姿势和表情。

  1. 对本文使用公式FLAME的理解:首先FLAME需要给定面部身份、姿态和表情参数,它会生成一个由5023个顶点组成的网络模型。具体包括两部分:首先由一个基础网格通过添加形状、姿态和表情变化得到一个平均模板网络Tp,如下这个公式:在这里插入图片描述
    其中身份、姿势和表情的基础形状被表示为线性子空间S、P和E,可以通过给定参数进行线性组合得到混合形状。
    接下来通过LBS和姿势相关的修正混合形状使得得到的模型可以蒙皮和表情变形,如下公式:
    在这里插入图片描述
    其中,J是FLAME模型中关节位置的函数,它取决于身份参数β,因为不同的身份具有不同的关节位置。因此,TP(β,θ,ψ)中的θ用于描述关节的旋转,J(β)用于描述关节的位置。W是混合权重矩阵,它将每个顶点与相应的关节相关联,控制每个关节对每个顶点的影响程度。
  2. 接下来,由于FLAME没有外貌模型(Appearance model),也就是没有上色,作者便使用Basel Face Model的外貌模型,但需要把它转换成FLAME模型的UV布局才能兼容。这个外貌模型会输出一个三维的UV外貌贴图,这样就可以模拟皮肤、头发等物体的颜色和纹理。
  3. 由于弱监督需要用到渲染,那么就需要一个相机模型。由于野外图片通常是从远处拍摄的,所以作者使用了正交相机模型将3D人脸模型投影到2D图像上。
  4. 接下来还需要一个光照模型,这样才能满足动画化。作者使用了球谐函数,假设人脸表面是朗伯表面(只具有低频反射),反射率是朗伯系数。
  5. 最后还需要一个纹理渲染的函数,来生成2D图片。
  6. 总结:在FLAME先验基础上大致完成了重建,但是由于FLAME是低网格分辨率,所以大部分的中频信息都有所丢失,作者接下来的方法篇章就介绍如何通过表情相关的位移模型给FLAME增加中频信息。

4、方法

  1. DECA核心思想是:每个人根据他们面部表情会展示不同的细节(如皱纹),但是形状的其他属性是不变的,也就是说脸部细节应该分成静态的特定个人的细节和动态的表情相关的细节。但是这很困难,每个人的静态细节都不同,每个人的不同表情的表情相关面部细节也不同。所以DECA学习了一个基于表情条件的细节模型,可以从特定个体的细节潜在空间和表情空间中推断面部细节。
  2. 学习细节位移模型最困难的地方在于缺少训练数据。之前的工作都是特定专业的相机扫描,花费很大,而且无法捕捉大量不同表情和种族年龄多样性的身份,所以作者提出了一个从野外图片学习几何细节的方法。
  3. 首先是进行粗略重建,使用包含ResNet50的神经网络加上一个全连接层作为编码器,从2D图片中去回归低维向量。这组低维向量包含了FLAME的全部参数:100个FLAME形状参数、50个表情参数、50个反照率参数等等。这个encoder会预测一个共236维的向量。粗略重建的目标是最小化如下损失函数:
    在这里插入图片描述
    分别是特征点损失,眼睛闭合损失,光度损失,身份损失和性质一致性损失以及正则损失。
  4. 特征点损失:通过定义的相机模型,将重建的人脸渲染成2D图片,和原始输入图片对比68个特征点的位置损失,产生loss。
  5. 闭眼损失:通过测量上眼睑特征点和下眼睑特征点的距离,比对渲染图像的上下眼睑距离,产生loss。作者这里特意指出,单纯的在特征点损失上加眼睛部分的权重会影响整体重建的形状不太理想。而这里的眼睑距离是相对距离,所以不太会受渲染的图片和原图没有对齐的影响。
  6. 光度损失:测量渲染图像和原始图像的光度损失,也就是rgb等像素损失。这里作者加了一个人脸分割的算法,用来分割有遮挡(眼睛、头发等)和无遮挡的皮肤部分,放到mask中就可以实现了对遮挡的鲁棒性。
  7. 身份损失:作者使用了一个预训练好的人脸识别网络,通过这个神经网络将原始图像和渲染后的图像映射成低维向量,再比较两个向量之间的距离来判断身份的相似度。
  8. 形状损失:作者认为同一个人的不同图片,粗略重建之后形状参数应该是一样的。之前的方法是要求同一个人的形状参数之间的距离比不同人的形状参数距离大于一个固定的距离,缺点是这个固定的边界很难选择。本文提出了一个新的方法,即将同一人不同图片提取的形状参数互换,理论上重建的效果应该是一样的。这里需要注意:对于新渲染的图片(换了code之后的),要使用光度损失和身份损失,因为这样才能保证渲染的效果很好,光度损失确保渲染图像具有良好的光照和颜色,而身份损失确保渲染图像准确地代表人物的特征。
  9. 粗略损失也要有一个正则项。
  10. 接下来是细节建模:核心思想是通过对粗略重建施加一个UV位移图,用以增强粗略重建的几何信息。和粗略重建类似,作者也是训练了一个编码器,对原始图片编码一个128维的向量,代表的特定个人的细节。接着和FLAME的表情参数、颌位参数拼接起来,由解码器生成UV位移图(为了渲染所以生成的是法线图)。
  11. 这里解码器用了粗略重建提取的表情参数和颌位参数,用来捕捉动态表情的皱纹细节。
  12. 添加中频信息渲染过程:上一步得到了UV位移图,接下来就是利用它来加细节。首先把粗略重建得到的模型及其法线转化到UV空间中,将它们与位移图D进行结合,生成细节几何模型M’,如下这个公式:
    在这里插入图片描述

之后计算M’的法线N’,用这个N’法线图去结合粗略重建模型M渲染出带有中频细节的图像,如下这个公式:
在这里插入图片描述

  1. 接下来是损失函数介绍,这里也有对渲染后的细节图和原图进行对比的损失,我的理解是:这里是为了让细节重建编码器提取更准确的细节信息,而粗略重建那部分,由于是基于估计的反照率的方法来提取纹理,不是通过UV位移图来提取细节的,所以受到反照率的限制,渲染的结果是没有中高频信息的,所以那地方的光度损失是为了粗略重建编码器能够提取更准确的低频信息。
  2. 细节光度损失跟粗略损失差不多,也是用到了mask掩码来应对遮挡的情况。
  3. ID-MRF损失函数:用ID-MRF(隐式多样化马尔可夫随机场)来对原始图像和细节重建渲染图像提取特征补丁,目标是最小化两个图像之间最近邻补丁的差异。这里作者解释了为什么不使用对抗性损失来捕捉高频细节,因为训练不稳定,作者则是采用了ID-MRF损失,该损失在局部补丁级别上将生成的内容调整到原始输入,并鼓励模型捕捉高频细节。因此,ID-MRF损失能够有效地捕捉高频细节,同时避免了对抗性训练带来的不稳定性问题。作者用的是VGG19网,在第3、4个卷积中计算ID-MRF损失。注意这里同样只对皮肤区域(无遮挡区域)计算损失。

ID-MRF:一种用于重建几何细节的损失函数。该方法的目标是将生成图像的几何细节与输入图像的几何细节保持一致。
首先,该方法使用预先训练的神经网络从输入图像和细节渲染中提取特征补丁。这些特征补丁来自于不同的网络层,每个层都可以捕捉到不同尺度和语义的特征。然后,该方法将提取的特征补丁从两个图像中找到相应的最近邻特征补丁,并计算它们之间的差异。最小化这些差异可以促使生成图像的几何细节与输入图像的几何细节保持一致。因此,ID-MRF损失可以鼓励生成图像捕捉高频细节,同时保持低频特征与输入图像的一致性。相比于其他方法使用鉴别器来捕捉高频信息,ID-MRF损失可以更稳定地训练模型。

特征补丁(feature patch):是指从图像中提取的、具有一定大小和形状的特征区域。在计算机视觉中,通常使用卷积神经网络等方法对图像进行特征提取,得到的特征图通常也是由若干个特征补丁组成的。这些特征补丁可以用于图像分类、目标检测、图像分割等任务。在本文中,ID-MRF损失从预训练网络的不同层中提取特征补丁,并使用这些特征补丁来计算损失,以实现对几何细节的重建。

  1. 软对称损失函数:这个损失用到了翻转操作,目的是提高模型对于自遮挡的鲁棒性,通过对于原始的面部几何形状进行水平翻转得到一个镜像面,然后将这个镜像面与原始面部几何形状进行比较,从而约束模型生成的几何形状,使得两个面部几何形状在非可见区域上更加相似。这个过程相当于对于模型训练数据的扩充,增加了更多自遮挡的情况,从而提高了模型对于这种情况的鲁棒性。

为什么“这个过程相当于对于模型训练数据的扩充”:由于翻转操作的进行,面部特征的位置和方向都会发生改变,这样得到的镜像样本就会呈现出与原始样本不同的面部表情和朝向等特征,从而相当于扩充了训练数据的多样性,增加了更多的自遮挡情况。

  1. 同样细节重建需要正则项,目的是减少噪声。
  2. 最后是细节分离操作:核心思想是,同一个人在两张照片中应该拥有同样的粗略几何和特定个人的细节。而对与渲染的细节重建图片,同一个人,交换不同的不同图片的细节代码,对于渲染图片来说应该是没有区别的。
  3. 细节一致性损失:将原始图片的静态特定个人的细节代码换成另一张同一个人的特定个人的细节代码,然后进行细节重建,再通过比对渲染出的结果和原图,应用细节损失函数得出loss,如下图:
    在这里插入图片描述

5、实施细节

  1. DECA是在两百万张图片上训练的,其中运用了FAN(面部对齐网络)模型对人脸图像提取特征点,对每个图像运用两次这个网络,每次都会使用不同的面部裁剪,如果两次得到的面部标志能够匹配,那么就保留这个图像,否则就丢弃,它们很可能包含错误或不一致性。这么做会增强对遮挡的鲁棒性。
  2. DECA用了pytorch,同时用了pytorch3D中的可微分渲染器。

你可能感兴趣的:(论文总结,计算机视觉,图形渲染)