本文针对重建三维人脸模型对人脸图像姿态要求较高,提出基于单张人脸图像姿态预估计的模型重建算
人脸的计算机模拟长期以来一直是计算机图形学及人机交互中非常活跃的研究领域,随着人脸识别技术、视频通信、人脸3D 动画、虚拟技术的发展,三维人脸建模受到人们越来越多的关注,其中3D 人脸模型重建是三维人脸建模的关键技术之一。
自Parke [1]在1972 年的开创性工作以来,在人脸建模方面已经有很多相关研究[2] [3]。根据输入数据的不同,人脸重建方法大致分为以下几类:基于扫描的方法,用数字化仪器(如3D 激光自动扫描仪、立体摄像机等)获取人脸全景轮廓信息,得到重建模型,但是仪器的价格十分昂贵。从图像来建立人脸模型, Pighin 等人[4]在利用多张人脸图像中标定特征点, 从而重建人脸结构, 但是仍然存在配准误差。
Zhao、Chellappa 等人[5] [6]在传统SFS (shape from shading)方法[7]的基础上,利用了人脸的对称性先验知识, 提出了SSFS 方法(symmetric SFS), 该方法只需要一幅输入人脸图像即可, 但它需要通过其他方法估计输入图像的光照情况以及精确的对称轴信息,增加了该方法在实用上的困难;Blanz、Vetter 等人[8]使用主分量分析的方法表达输入人脸图像的形状、纹理及光照等情况,建立了复杂成像模型,难以满足有些实时系统的要求;Jiang 等人[9]-[11]利用PCA 技术,通过迭代求得人脸模型的姿态、缩放尺度、位置等参数,重构3D 人脸形状模型,但其主要用在人脸识别方面,且重构精度有限;王成章等人[12]用遗传算法进行形变模型参数优化,但模型匹配时间较长。
本文提出一种基于单张输入图像人脸姿态估计的三维人脸形状模型的精确重构方法。首先介绍计算单张人像的三维姿态的方法,然后介绍了基于PCA 技术的3D 人脸形状重构算法及模型重建的过程,最后给出本文的实验结果。
2. 人脸姿态估计 根据人脸测量统计的知识,在人面部存在着一个平面区域(相对平行区),这部分由发际点、眼角点、口角点和颌下点连线构成一平面[13]。
由于该区域内特征器官基本处在一个平面上, 且在正视状态下该平面与Z 轴垂直, 因此人脸的姿态估计转化成为求该人脸平面的旋转角度问题。
本文采用两个外眼角点E1、E2,两个内眼角点E3、E4,两个鼻翼点N1、N2,和两个口角点M1、M2 作为对人脸姿态估计的特征点, 如图1 所示,它们在像平面上投影点分别对应为e1、e2、e3、e4、nl、n2、ml、m2。
利用以下的面貌形态特征:人脸部的眼角点在空间上连成一条直线,并且当人脸处于正视状态时, 此直线平行于X 轴;在空间上,两个口角点的连线与眼角点的连线平行;两条内眼角点和鼻翼点的连线(左右各一条)相互平行,且垂直于口角点连线和眼角点连线;以上四条直线在一个平面上。由于E1、E2的连线与M1、M2 的连线平行,因此这两条直线若与像平面不平行,则它们在像平面上的投影线e1、e2和m1、m2 将汇聚为一灭点vp1 (x1,y1,z1),同理,内眼角点和鼻翼点的连线E3、N1 与E4、N2 相互平行, 它们在像平面上的投影线产生灭点vp2 (x2,y2,z2)。设向量M = {i,j,k}代表E1、E2 连线的方向向量, N = {m,l,n}代表E3、N1 连线的方向向量,F 为人脸平面的法线向量,可得:F = M × N,又M 垂直于