Face Alignment in Full Pose Range: A 3D( 二 )


2:VDC损失函数的说明
中文称,顶点距离损失 ;
计算VDC损失函数的损失时传入的数据为:利用神经网络回归出训练数据集中每张照片的3DMM参数(40个形状向量参数,10个表情向量参数,12个数组成摄像机矩阵),该批训练照片的每个真实的3DMM参数(这个数据先前已存在PKL文件中)
计算算法思路大概实现:根据神经网络回归出的3DMM参数,利用如下公式重建出三维人脸模型,并用稠密特征点表示该重建的三维人脸模型,即维度时[3 , 53215] ; 同时利用这批数据的真实3DMM参数,然后根据同样的公式重建出三维人脸模型,采用同样的表达方式表达该三维人脸模型 ;
之后在计算两个三维人脸模型的顶点距离损失 ;则该损失值就是该图片的损失值 ;
3:WPDC损失函数的说明:
中文称:权重参数距离损失
传入的参数:同上
大致算法计算形式:先根据固定算法给62个3DMM参数分配固定的权重,然后在计算回归出的3DMM参数与真实的3DMM参数在固定权重上的距离损失; 该损失值就是此照片损失 ;
4:vdcfrom wpdc
中文称:用vdc 微调 wpdc损失函数训练好的模型 ;
大概过程:先使用wpdc损失函数同上进行训练模型 ; 保存模型的参数 ; 重新开始此次训练时,将神经网络模型的参数初始化为刚刚用wpdc训练好模型的参数,然后继续用vdc损失函数去训练该模型 ;
5:owpdc
优先权重参数距离损失 ; 赋予每个参数不同的优先权,具体暂时不太懂 ;
中使用的是元联合优化策略,动态的组合fwpdc和vdc ;
五:
**** 模型的测试:(应该是套路吧:用xx数据集对该模型进行测试,主要就是计算该数据集中每个照片的NME,然后得到该数据集中偏航在0-30,30-60,60-90°之间的所有照片的平均NME,之后便可以用NME来衡量对比模型的好坏)
测试时用到的数据集是:-3d数据集 ; 该数据集中包含了大姿态的照片以及每个照片人工标注的68个特征点 ; 还有AFLW数据集,该数据集的标签是每个图片的21个特征点 ; 用-3D数据集对这个模型展开测试,主要就是计算每个图片的NME(预测的特征点与真实的特征点距离,除以该人脸的边界框bbox的大小,即 nme = dist / ),然后便可以得到-3D数据集中偏航在0-30°,30°-60°,60°-90°的所有照片的平均NME,之后用NME来衡量这个模型的好坏。
另外我们还需利用神经网络回归出每个照片的预测的3DMM参数,然后结合bfm模型中的形状向量基,平均形状等数据,利用公式重建出三维人脸模型,并用稀疏特征点表示该三维人脸模型 ;
之后利用每个图片的真实68特征点获得bbox框的大小;
计算该图片真实的68特征点与预测的68特征点在二维平面上的距离损失 = dist ;
nme = dist /; 从而得到每个图片的NME ;
之后便可以计算0-30° , 30°-60°,60°-90°的所有照片的平均nme , 可知在大姿态情况下,nme是相对于其他方法来说算是优秀的;
六:与其他论文的结果比较
本节主要目的就是利用AFLW-2000-3D数据集和AFLW数据集在多论文中描述的方法中对比别人的模型 。同时作者利用300W与300W-LP两个不同的数据集去训练别人的模型,既保证了对比的公平性又证明了人脸轮廓分析方法合成的300W-LP数据集对训练模型有很大的提升 。之后计算AFLW-2000-3D数据集中每个图片的NME,因此可以用NME来衡量哪个模型更优秀;下图是比较的一个表格
对于上图表格的说明与解析:
1:比如这个表,我们用300W数据集去训练LBF中的模型(保证最大的公平性),得到模型后;用AFLW-2000-3D数据集对该模型展开测试,主要就是计算AFLW-2000-3D数据集中每个图片的NME;从而可以得到AFLW-2000-3D数据集中图片偏航在0-30°之间的所有照片的平均NME,,,。之后就可以用NME来衡量该模型的好坏。下一列就是用AFLW数据集对该模型进行测试,目的也是为了计算每个图片的NME,之后便可以得到AFLW数据集中图片偏航在0-30°,30-60°之间的所有照片的平均NME,然后我们用NME的比较来衡量模型的好坏;