【论文阅读】Joint 3D Face Reconstruction and Dense Alignment with Position Map Regression Network

Joint 3D Face Reconstruction and Dense Alignment with Position Map Regression Network

基于PRNet的联合三维人脸重建和密集对齐

论文地址:https://openaccess.thecvf.com/content_ECCV_2018/papers/Yao_Feng_Joint_3D_Face_ECCV_2018_paper.pdf

本文工作:

  • 设计了一个称为UV位置图的2D表示,它记录了UV空间中完整人脸的3D形状,然后训练一个简单的卷积神经网络从单个2D图像中回归。
  • 将权重掩码集成到训练过程中的损失函数中,以提高网络的性能。
  • 网络权重很轻,处理图像只需9.8毫秒,比以前的工作速度快得多。

本文结论:

  • 提出了一种端到端方法,很好地解决了三维人脸对齐和三维人脸重建的问题。
  • 本文方法对姿态、照明和遮挡具有鲁棒性。
  • 我们的方法比其他方法运行速度更快,适合实时使用。

专业名词解释

3D变形模型(3DMM): 是一个通用的三维人脸模型,用固定的点数来表示人脸。它的核心思想就是人脸可以在三维空间中进行一一匹配,并且可以由其他许多幅人脸正交基加权线性相加而来。

单目主要是可见光摄像头,主要用于非活体检测;
双目则是由一个可见光摄像头和一个红外光摄像头组成,在活体检测中以双目为主。

2D相机例如通常使用的面阵相机,线扫相机采集出来的图像,称之为平面图像。
点云:3D相机如常用的激光线扫相机,双目结构光相机采集出来的数据称之为深度图(点云图)。

鲁棒性:指控制系统在一定(结构,大小)的参数摄动下,维持其它某些性能的特性。

UV(二维纹理坐标):UV纹理空间使用字母U和V来指示二维空间中的轴。UV纹理空间有助于将图像纹理贴图放置在3D曲面上。

体素数据(体积元素数据):体素数据存储在一个三维数组中,它也可以被认为是存储为一个三维纹理。

共形拉普拉斯权重的Tutte嵌入:我们使用保角拉普拉斯权重和网格边界映射到正方形来计算Tutte嵌入。为了保证嵌入的对称性,我们将对称线映射到正方形的对称线上,只展平网格的一侧,并通过反射获得另一半的展平。


前人工作介绍:

一开始旨在检测特殊2D基准点[66、64、38、46]的人脸对齐通常被用作其他人脸任务(如人脸识别[59])的先决条件,并在很大程度上帮助3D人脸重建[68、27]。
2D对齐在处理大姿态或遮挡问题时存在困难[65,30]。一些工作开始使用CNN来估计3D可变形模型(3DMM)系数[32、67、47、39、48、40]或3D模型扭曲函数[4、53],以从单个2D面部图像恢复相应的3D信息,提供密集面部对准和3D面部重建结果。

两个端到端的作品[28][9]绕过了模型空间的限制,在各自的任务上实现了最先进的性能。[9] 训练复杂网络以从单个图像回归68个具有2D坐标的面部地标,但需要额外的网络来估计深度值。此外,该方法不提供密集对准。[28]开发了3D人脸的体积表示,并使用网络将其从2D图像回归。然而,这种表示丢弃了点的语义含义,因此网络需要回归整个体积以恢复面部形状,而面部形状只是体积的一部分。因此,这种表示限制了恢复形状的分辨率,需要复杂的网络对其进行回归。

基于模型的方法很好地保留了点的语义,但在模型空间中受到限制,最近的无模型方法不受限制,实现了最先进的性能,但放弃了语义,这促使我们寻找一种新方法,以无模型的方式重建具有对齐信息的3D人脸。


具体工作及贡献:

  1. 一个端到端的位置映射回归网络(PRN)来联合预测密集对齐和重建3D人脸形状。
  2. 对于训练,我们提出了一个权重掩码,为位置图上的每个点分配不同的权重,并计算加权损失。它是一个非常轻的加权模型,该网络具有更侧重于区分区域的加权损失,以从单个2D面部图像回归UV位置映射,有助于提高我们网络的性能。
  3. 为了直接回归3D面部结构和密集对齐,设计了一个UV位置图,它是一个2D图像,记录了完整面部点云的3D坐标,同时保留了每个UV位置的语义。
  4. 对AFL W2000-3D和Florence数据集的比较表明,我们的方法在3D人脸重建和密集人脸对齐两项任务上比其他最先进的方法实现了25%以上的相对改进

首次以端到端的方式一起解决人脸对齐和3D人脸重建问题,而不受低维解空间的限制。
我们最终提供了一个以超过100FPS运行的轻量级框架,以直接从单个2D面部图像获得3D面部重建和对齐结果。


3D面部重建:

基于3DMM的方法早期在完成单目3D人脸重建任务中十分流行:建立输入图像和3D模板之间的特殊点的对应关系,包括人脸标记点[37、68、56、27、10、29、19]和局部特征[26、49、19],然后求解非线性优化函数以回归3DMM系数。
缺点:这些方法严重依赖于人脸标记点或其他特征点检测器的准确性。

基于3DMM和CNN的方法:首先使用CNN学习输入图像和3D模板之间的密集对应关系,然后使用预测的密集约束计算3DMM参数。最近的工作还探索了使用CNN直接预测3DMM参数。[32、67、47、39、48]使用级联CNN结构来回归精确的3DMM系数,由于迭代需要大量时间。[15、57、31、36]提出了端到端CNN架构,以直接估计3DMM形状参数。最近还研究了无监督方法,[55,3]可以在无需训练数据的情况下回归3DMM系数。
缺点:这些方法的主要缺陷是基于模型的,导致有限的几何约束在模型空间中。

在没有3D形状基础的情况下重建3D人脸:[24,33,20,53,51]可以通过扭曲参考3D模型的形状来生成3D结构。[4] 还可以通过深度网络学习3D薄板样条(TPS)扭曲函数来重建面部的3D形状,该深度网络将通用3D模型扭曲为特定于对象的3D形状。
缺点:这些方法重建的面部几何结构也受到参考模型的限制,这意味着模板变化时结构不同

[28]提出通过体积CNN回归将图像像素直接映射到全3D面部结构。该方法不再局限于模型空间,但需要复杂的网络结构和大量的时间来预测体素数据。


人脸对齐:

3D面部对齐,这从拟合3DMM[44,67,18]或将3D面部模板[51,5]与2D面部图像配准开始。显然,基于模型的三维重建方法可以很容易地完成三维人脸对齐的任务。

稀疏人脸对齐通过[8,9]使用深度网络直接预测热图,以获得3D面部地标,并实现最先进的性能。

密集面部对齐意味着该方法应提供两个面部图像之间以及2D面部图像和3D面部参考几何体之间的对应关系。[40]使用多约束来训练CNN,该CNN估计3DMM参数,然后提供非常密集的3D对齐。[22,63]通过深度网络直接学习2D输入图像和3D模板之间的对应关系,当这些对应关系不完整时,只考虑可见人脸区域。

与之前的工作相比,本文方法可以在位置图回归后直接建立所有区域的密集对应关系。本文方法不需要中间参数,如3DMM系数和TPS扭曲参数,这意味着我们的网络可以运行得非常快。

实现方法:

UV位置图或简称位置图是记录UV空间中所有点的3D位置的2D图像。在过去几年中,UV空间或UV坐标(从3D表面参数化的2D图像平面)已被用作表示信息的方式,包括面部纹理(纹理图)[3、13、45、61]、2.5D几何(高度图)[41、42]、3D几何(几何图像)[21、54]和3D面部网格之间的对应关系[7]。

而本文使用UV空间 存储 与相应的2D人脸图像对齐的3D人脸模型中的点的3D位置。

左:输入图像的3D图及其对应的对齐3D点云(作为地面实况)
右:第一行是输入的2D图像、提取的UV纹理贴图和相应的UV位置贴图。
第二行是UV位置贴图的x、y和z通道。
正x轴指向图像的右侧,最小z位于原点。

当投影到x-y平面时,地面真实3D面部形状与2D图像中的面部精确匹配。因此,位置图可以表示为Pos(ui,vi)=(xi,yi,zi),其中(ui,vi)表示人脸表面第i个点的UV坐标,(xi,yi,zi)表示人脸结构的相应3D位置,(xi,yi)表示输入RGB图像中人脸的相应2D位置,zi表示该点的深度。(ui,vi)和(xi,yi)表示面的相同位置,因此可以保留对齐信息。我们的位置图可以很容易理解为用x、y、z坐标替换纹理图中的r、g、b值。因此,该位置图记录了具有语义的3D人脸的密集点集,我们能够通过使用CNN直接从无约束2D图像回归位置图,同时获得3D人脸结构和密集对齐结果。它不同于其他2D表示,如投影归一化坐标码(PNCC)[67,48],普通深度图像[53]或量化UV坐标[22],后者仅保留输入图像中可见面部区域的信息。本文提出的位置图还推断出人脸的不可见部分,因此本文方法可以预见完整的3D人脸。

端到端训练需要无约束的2D人脸图像及其相应的3D形状。
300W-LP[67]是一个大型数据集,包含超过60K个具有拟合3DMM参数的无约束图像,适合形成训练对。此外,该数据集的3DMM参数基于Basel人脸模型(BFM)。
我们使用对应BFM的UV坐标。我们使用[3]中的参数化UV坐标,该坐标计算具有共形拉普拉斯权重的Tutte嵌入[17],然后将网格边界映射到正方形。
由于BFM中的顶点数超过50K,选择256作为位置图大小,这样可以获得具有可忽略重采样误差的高精度点云。


网络结构和损失函数:


PRN体系结构:绿色矩形表示剩余块,蓝色矩形表示转置卷积层

由于我们的网络将输入RGB图像转换为位置图图像,因此我们采用编码器-解码器结构来学习传递函数。
网络的编码器部分从一个卷积层开始,然后是10个残差块[25],将256×256×3输入图像缩减为8×8×512特征图,解码器部分包含17个转置卷积层,以生成预测的256×256 x 3位置图。我们对所有卷积或转置卷积层使用核大小4,并使用ReLU层进行激活。

本文建立了一个损失函数来测量面部真实位置图和网络输出之间的差异。均方误差(MSE)是此类学习任务的常用损失。然而,MSE平等对待所有点,因此不完全适合学习位置图。由于人脸的中心区域比其他区域具有更多的鉴别特征,我们使用加权掩模来形成我们的损失函数。
权重掩码是一个灰色图像,记录位置图上每个点的权重。它具有与位置图相同的大小和像素到像素的对应关系。根据我们的目标,我们将点分为四类,每一类在损失函数中都有自己的权重。68个面部关键点的位置具有最高权重,以确保网络学习这些点的准确位置。颈部区域通常吸引较少的注意力,并且在无约束图像中经常被头发或衣服遮挡。学习颈部或衣服的3D形状超出了我们的兴趣范围,因此我们为颈部区域的点分配0权重,以减少训练过程中的干扰。
在这里插入图片描述
从左至右:UV纹理贴图、UV位置贴图、带分割信息的彩色纹理贴图(蓝色表示眼睛区域,红色表示鼻子区域,绿色表示嘴巴区域,紫色表示颈部区域)、最终权重遮罩。

预测位置图表示为表示每个像素坐标的u,v的Pos(u,v)。给定地面实况位置图Pos(u,v)和权重掩码W(u,v),我们的损失函数定义为:
在这里插入图片描述
权重比:子区域1(68个面部标志):子区域2(眼睛、鼻子、嘴):子区域3(其他面部区域):子区域4(颈部)=16:4:3:0。


训练细节:

训练集:

300W-LP,它包含不同角度的人脸图像,并带有估计3DMM系数的注释,从中可以容易地生成3D点云。
根据地面真相边界框裁剪图像,并将其重新缩放为256×256。然后利用其注释的3DMM参数生成相应的3D位置,并将它们渲染到UV空间以获得地面真相位置图,我们训练中的地图大小也是256×256,这意味着要回归的点云精度超过45K。

数据增强:

在2D图像平面中随机旋转和平移目标人脸来扰动训练集。具体而言,旋转角度为-45度到45度,平移变化为输入大小的10%,比例为0.9到1.2。与[28]类似,我们还通过缩放比例范围为0.6到1.4的颜色通道来增强训练数据。为了处理具有遮挡的图像,我们通过将噪声纹理添加到原始图像中来合成遮挡,这类似于[50,63]的工作。通过上述所有增强操作,我们的培训数据涵盖了所有困难的情况。

优化:

使用Adam优化器,学习率从0.0001开始,每5个周期后衰减一半。批量大小设置为16。


实验结果:

测试数据集:

AFL W2000-3D由[67]构建,用于评估具有挑战性的无约束图像上的3D人脸对齐。该数据库包含来自AFLW[35]的前2000幅图像,并使用拟合的3DMM参数和68个3D人脸标记点扩展其注释。
AFL W-LFPA是由[32]构建的AFL W数据集的另一个扩展。通过根据姿态从AFL W中提取图像,作者构建了包含1299张偏航角分布平衡的测试图像的数据集。此外,每幅图像都标注了13个额外的地标,作为AFL W中仅21个可见地标的扩展。该数据库在3D人脸对齐任务上进行评估。我们使用34个可见地标作为基本事实来衡量结果的准确性。
Florence是一个3D人脸数据集,包含53个受试者,其地面真实3D网格从结构光扫描系统获取[2]。在实验中,每个受试者都生成了与[28]相同的不同姿势的渲染:间距为-15、20和25度,旋转间隔在-80和80之间。我们将我们的方法在人脸重建方面的性能与该数据集上的其他最新技术方法VRN-Guided[28]和3DDFA[67]进行了比较。

评估标准:

归一化平均误差(NME),首先在68个人脸标志的稀疏集合上评估了我们的方法,并将我们的结果与数据集AFL W2000-3D上的3DDFA[67]、DeFA[40]和3D-FAN[9]进行了比较。
累积误差分布(CED)曲线:
在这里插入图片描述
为了进一步研究我们的方法在姿态和数据集上的性能,我们还报告了AFL W20003D数据集上具有小、中、大偏航角的NME,以及AFL W2000-3D和AFL W-LPF A数据集的平均NME。
从AFL W2000中随机选择696张脸,以平衡分布。结果表明,我们的方法对姿态和数据集的变化具有鲁棒性。尽管所有最先进的3D人脸对齐方法都对AFL W2000-3D数据集进行了评估,但由于其注释管道基于地标行进法[68],地面真相仍然存在争议[63,9]。因此,我们在图6中看到了NME大于6.5%的一些结果,我们发现在某些情况下,我们的结果比实际情况更准确。 在这里插入图片描述

图中:来自AFL W2000-3D数据集的示例表明,在某些情况下,我们的预测比地面实况更准确。绿色:通过我们的方法预测地标。红色:来自[67]的基本事实。

本文还将密集比对结果与其他方法进行了比较,包括在唯一的测试数据集AFL W2000-3D上的3DDF A[67]和DeF A[40]。为了用相同的点集比较不同的方法,我们从所有方法提供的最大公共面部区域中选择点,最后使用大约45K点进行评估。
在这里插入图片描述

3D脸部重建:

本文评估了3D人脸重建任务方法,并在AFL W2000-3D和Florence数据集上与3DDF A[67]、DeF A[40]和VRN-Guided[28]进行了比较。使用与评估密集对齐相同的点集,并改变度量,以保持与其他3D人脸重建评估方法的一致性。首先使用迭代最近点(ICP)算法找到网络输出和地面真实点云之间的对应最近点,然后计算由3D坐标的外眼间距离归一化的均方误差(MSE)

由于AFLW2000-3D数据集使用3DMM拟合的结果进行标记,因此我们进一步评估了我们的方法在Florence数据集上的性能,其中地面真实3D点云是从结构光3D扫描系统获得的。我们使用[28]中的实验设置,将我们的方法与3DDFA和VRN-Guided [28]进行比较。评估图像是来自Florence数据库的具有不同姿态的渲染,我们从地面真实点云计算边界框,并使用裁剪图像作为网络输入。
在这里插入图片描述

与Florence数据集上的VRN-Guided相比,我们的方法实现了28.7%的相对较高性能。为了更好地评估我们的方法在不同姿态下的重建性能,我们计算了不同偏航角范围的NME。但是,3DDFA和VRN引导无法在姿态变大时保持低误差。本文恢复的点云覆盖的区域比VRN-Guided的更大,VRN-Guided忽略了侧面部分。此外,由于VRN-Guided分辨率的限制,我们的方法提供了更精细的面部细节,尤其是鼻子和嘴区域。

运行时间:

由于网络使用基本的编码器-解码器结构,与VRN中的1.5GB相比,模型大小仅为160MB[28]。测量过程的运行时间,该过程定义为从输入裁剪的人脸图像到恢复3D重建方法的3D几何体(点云、网格或体素数据)或获得对齐方法的3D地标。
用于评估的硬件是NVIDIA GeForce GTX 1080 GPU和Intel(R)Xeon(R)CPU E5-2640 v4@2.40GHz。
DeFA需要11.8ms(GPU)来预测3DMM参数,另外23.6ms(CPU)来根据预先设定的参数生成网格数据,3DFAN需要29.1ms(GPU),首先估计2D坐标,25.6ms的GPU来获得深度值,VRN-guided检测68 2D坐标使用28.4ms(GPU)的界标,然后使用40.6ms(GPU)的体素数据进行回归,我们的方法在9.8ms(GPU)的一次通过中提供了裁剪图像的三维重建和密集对齐结果。

消融实验:

进行了几个实验来评估权重掩码对训练的影响,并在AFLW2000上提供稀疏和密集对齐CED来评估不同的设置。我们用三种不同的权重比进行了实验:(1)权重比1=1:1:1∶1,(2)权重比2=1:2:1:0,(3)权重比3=16:4:3:0。我们可以看到,权重比1对应于不使用权重掩模的情况,权重比2和3在损失函数的强调方面略有不同。
在这里插入图片描述
在具有68个界标(左)和所有点(右)的AFLW2000-3D数据集上评估权重掩码的效果


  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值