论文《FML: Face Model Learning from Videos》效果展示
论文《3D Face Reconstruction from A Single Image Assisted by 2D Face Images in the Wild》效果展示
论文《Joint 3D Face Reconstruction and Dense Alignment with Position Map Regression Network 》效果展示
直观感受完面部 3D 重建效果后,我们再来探究模型背后的算法。
传统 3D 人脸重建方法,大多立足于图像信息,如基于图像亮度、边缘信息、线性透视、颜色、相对高度、视差等一种或多种信息建模技术进行 3D 人脸重建。
三维变形模型(3DMM)
随着技术的发展,研究者们又提出了基于模型的 3D 人脸重建方法,这是目前较为流行的 3D 人脸重建方法。3D 模型主要用三角网格或点云来表示,现下流行的模型有通用人脸模型(CANDIDE-3)和三维变形模型(3DMM)及其变种模型,基于它们的 3D 人脸重建算法既有传统算法也有深度学习算法。
三维变形模型(3DMM)是一个通用的三维人脸模型,用固定的点数来表示人脸。其核心思想是人脸可以在三维空间中一一匹配,并且可以由其他许多幅人脸正交基加权线性相加而来。三维空间中的每一点 (x, y, z) 实际上都是由三维空间三个方向的基量 (1, 0, 0),(0, 1, 0),(0, 0, 1) 加权相加所得,只是权重分别为 x,y,z。
每一个三维人脸都可以在一个数据库中的所有人脸组成的基向量空间中进行表示,而求解任意三维人脸的模型,实际上等价于求解各个基向量的系数问题。每一张人脸可以表示为形状向量和纹理向量的线性叠加。
任意人脸模型均可以由数据集中的 m 个人脸模型进行加权组合,如下:
其中 Si、Ti 表示数据库中第 i 张人脸的形状向量和纹理向量。但是我们实际在构建模型的时候不能使用这里的 Si、Ti 作为基向量,因为它们之间并非正交相关,所以接下来需要使用 PCA 进行降维分解。
- (1) 首先计算形状和纹理向量的平均值;
- (2) 中心化人脸数据;
- (3) 分别计算协方差矩阵;
- (4) 求得形状和纹理协方差矩阵的特征值α、β和特征向量 si、ti。
上式可以转换为下式: