《Cascaded Regressor based 3D Face Reconstruction from a Single Arbitrary View Image》论文解读
本文来自四川大学,论文原文:
人脸3D重建就是从一张或多张照片中重建出人脸的3D的模型。本文提出了回归框架下的人脸3D重建,这篇文章给我的感觉就是SDM的3D版本,而经典的3DMM和ASM很类似,不知道我的看法是否正确。本文将3D重建建模成为回归问题,这样的话很多回归的方法就可以用在这里了,更进一步,深度学习的方法也是可以用在这里的。
概述
传统的3D重建问题解决方法是模型匹配(model fitting),本文将3D重建问题建模成回归问题,训练样本为3D模型和对应的多角度2D图片,2D人脸图片需要事先标记好特征点位置。2D图片上特征点位置和3D形状相关性比较大,而且对光照比较鲁棒。跟之前的方法相比,本文的算法可以从任意角度图片重建人脸,速度快,精度高。
问题模型
2D的人脸图片可以看做是3D人脸在2D平面上的一个投影。
模型求解
重建过程
如图所示,本文提出的重建过程是:先选定一个初始的3D形状
前文说过,训练需要的数据是人脸图片和其中的特征点坐标以及对应的3D模型。
如何求
这里的
2D平面上特征点和基准的差值为
根据这个差值可以使用回归算法就可以得到
其中
分析一下这个式子:
训练过程
上面讲的是模型的测试过程或者说是重建的过程,在这个过程里面需要训练的就是
至此本文的算法部分就讲完了。
结果
本文的算法和之前的方法相比,误差下降了很多,而且不同旋转角度对结果影响不大
作者还分析了特征点标记时候的噪声对结果的影响,发现在训练时候引入适当噪声结果更好
对于数据驱动的问题,结果常常会被数据影响,本文还分析了对新角度和新样本的泛化能力
总结
本文将3D重建问题建模成回归问题,感觉就像SDM的3D版本。个人感觉作者在训练时候使用的特征比较简单,似乎可以改进。这种基于回归框架使得3D重建问题有了很多新的可能性,就像人脸特征点检测一样,自从引入了回归模型以后,error大大降低。而且回归问题也可以引入深度学习,甚至可以实现端到端的重建,输入一张人脸,直接输出3D模型。