王申 和晓军
【摘 要】3D人脸在采样不完整时,很难对其标定特征点,进而直接影响识别正确率。本文针对这个问题提出了一种基于局部曲线特征的人脸识别方法。该方法首先计算了3D人脸在深度空间,曲率空间,和测地空间下的表示,采用SURF算法自动提取特征点,通过神经网络的方法分析特征点之间的连接线上的深度,曲率和测地信息来达到识别的目的。实验结果表明,这种自动识别特征点的方法相对于基于标定的识别方法具有更强的鲁棒性和更高的正确率。
【关键词】3D人脸识别;局部曲线特征;SURF
【Abstract】Its difficult to find feature points in 3D facial meshes when there are missing parts on these face scans. This work proposes a new recognition method based on local feature curve. Firstly, we calculate the projections of 3D faces in depth, curvature and geodesic coordinate system, then apply SURF on these projections to find out feature points, finally, we use artificial neural network to analyze the curve between feature points and thus face scans are recognized. The result shows that the robustness and accuracy of our method is higher than the method based on landmark.
【Key words】3D face recognition; Local curve characteristics; SURF
近年来,3D人脸识别问题一直是模式识别领域的研究热点。在实际应用中,如果过分强调人脸采样的完整性,那么相应的,这种采样方法对采样者的侵犯性也就越大,应用的范围也更加局限。因此研究基于局部特征的3D人脸识别方法是非常有必要的。针对这个问题,徐等通过对到鼻尖点的等距线提取特征,来得到局部的特征描述符,对人脸的遮挡、噪声和表情变化有较好的鲁棒性[1]。王等使用Gabor变换直接抽取人脸的特征,把得出的人脸子模式进行特征融合,提高了人脸识别的正确率和性能[2]。基于局部曲线特征的人脸识别算法普遍是通过在人脸上标定特定点,进而获得人脸特征曲线,本文提出一种不依赖标定的特征曲线方法,引用仿射无关的SURF方法和多模式下的人脸数据,来提高基于局部曲线特征的人脸识别算法的鲁棒性。
1 人脸的预处理
3D人脸数据是以三维网格的形式存储的,在对人脸进一步的处理之前,先通过预处理保证人脸网格的质量是非常有必要的。类似处理二维图像的椒盐噪点,本文将中值滤波应用到三维网格,清理到采样过程中存在的噪点;由于网格的结点一般远远多与实际需要,而过于繁多的边和结点直接影响处理的复杂度,因此本文采用了顶点聚类方法,对网格进行删减。要计算3D人脸的投影,3D人脸的姿态直接关系到投影的正确性。因此本文使用鼻子区域作为参考点,计算鼻尖的法向量和鼻梁的向量,从而进行姿态校正[3]。预处理部分的结果如图1所示。
2 计算多模式人脸投影
本文提出的基于多模式局部曲线特征的人脸识别算法是通过分析人脸的深度、曲率和测地三种模式下人脸的信息得到的识别方法,因此在提取特征曲线之前,首先要计算这三种模式下的3D人脸投影。约定鼻尖点向人脸外侧的法向量为Z轴正方向;由鼻尖沿鼻梁的方向为Y轴正方向;然后通过Y、Z轴确定X轴正方向。深度投影可以通过求3D人脸在Z轴上的投影得出;人脸的测地投影由人脸上的各个点到鼻尖点的在人脸表面上的最短路径得出[4];在人脸的曲率投影中,每一点的值为该点的高斯曲率值,我们可以由下式近似得出[5]。
K=(1)
其中m为该点的邻接点个数;α为以该点为顶点和其相邻两邻接点所成的角;A为这三个点所构成的三角形的面积。对于四边形网格可以依次连接该点的邻接点来获得三角形的面积,如图2。
3 特征向量的计算
3.1 获得特征曲线
多模式局部曲线特征向量由三个元素组成,分别为人脸在深度,曲率,测地三种模式下的特征曲线加权距离值,分别用Dd,Dc和Dg来表示。
深度模式下的人脸上的特征点由SURF获得[6]。这种方法并不对特征点的位置和数量有任何假设,也不保证这些特征点是人脸上有特殊意义的部分(如眼窝、鼻尖、脸颊等),而是把这些也当作人脸特征的一部分。对数据库中每张人脸的每个网格图像都使用SURF提取,两两配对,使用RANSAC剔除较大误差。得到精确匹配的N个特征点如图3(a)所示,在对这N个特征点两两配对,得到C2 N个特征点对,将特征点对在深度投影上用直线连接,得到C2 N条深度特征曲线。将这些特征点以鼻尖点PNOSE作为参考点平移到曲率图像和测地图像上,就得到了曲率和测地特征曲线如图3(b)所示。
3.2 特征曲线对的距离计算
3.3 计算特征曲线的权值
在以标定作为人脸的特征点定位方法中,通常会选择眼角,鼻尖附近等有意义的点。在本文的方法中,虽然通过SURF和RANSAC自动寻找特征点,然而通过实验发现,大部分的特征点落在人脸上“有意义”的区域上,这间接的说明了,在使用以上步骤获得的特征曲线对于匹配人脸来说应该有不同的权值。
假设共有n张不同的人脸,用xi表示每张脸的ID,即xi∈(x1,x2,x3...xn);用表示yi人脸xi上的特征曲线,则集合为yj∈(y1...y1,y2...y2...ym...ym)。如果把人脸ID看成随机变量X,特征曲线看成随机变量Y,那么通过某一条特征曲线判断出人脸ID的概率可由香农信息熵给出。
4 实验结果
4.1 使用神经网络预测
定义多模式下的人脸曲线的特征向量为(Dd,Dc,Dg),其中Dd为深度投影下人脸上的某一条特征曲线对的距离差值;Dc为该条特征曲线对对应在曲率投影下的距离差值;Dg为该条特征曲线对对应在测地投影下的距离差值。
在GavabDB中,每个人采集了9份不同姿态不同表情的人脸,随机从中抽取一份用于验证,其他的八分人脸用于训练神经网络。对于采集到的同一个人的人脸样本,抽取数对人脸,计算这两张人脸之间特征曲线对的距离值,作为输入给入神经网络中,并且将这张人脸的ID作为教师信号。经过上面的步骤得到了训练好的神经网络。在测试时,计算待测定人脸和数据库人脸的之间的特征曲线对的距离差值,由于一张人脸有多条特征曲线,所以对于神经网络的输出也可能有不止一种结果,那么得到输出模式个数最多的则对应该待测定的人脸的ID。
4.2 实验数据
4.3 实验数据分析
根据表1中数据,本文采用的基于多模式局部曲线特征的方法的正确率高于基于标定的人脸识别算法,而且,相比基于标定的算法,本文的方法在残缺的人脸成像上也能获得良好的效果。数据表明,本文使用的多种特征的方法相比于只使用单一特征的三种方法,识别正确率有明显提高,说明综合多种特征是有必要的。
5 结束语
本文分析了3D人脸的深度投影,曲率投影和测地投影,将局部曲线特征的方法应用到这三种模式中。使用SURF和RANSAC提取特征点对。这使算法在人脸图像残缺的情况下也能稳定运行,保证了算法的鲁棒性。应用神经网络对得到的三个特征进行回归分析预测,提高了算法的正确率。
【参考文献】
[1]徐俊,达飞鹏.一种基于局部描述符的三维人脸识别方法[J].模式识别与人工智能,2012,01:45-53.
[2]王科俊,邹国锋.基于子模式的Gabor特征融合的单样本人脸识别[J].模式识别与人工智能,2013,01:50-56.
[3]孙圣鹏,宋明黎,卜佳俊,陈纯.鼻子区域检测与三维人脸姿态自动化校正[J]. 计算机辅助设计与图形学学报,2013,01:34-41.
[4]Gadacha W, Ghorbel F. 3D surfaces representation using geodesic computation and spectral analysis coupled approach: Application to 3D faces[C].Computer Applications Technology(ICCAT),2013 International Conference on. IEEE, 2013:1-5.
[5]G. Taubin.Estimating the tensor of curvature of a surface from a polyhedral approximation[C].Computer Vision,1995.
[6]S.Berretti.Selected sift features for 3D facial expression recognition[C].International Conference on Pattern Recognition. International Conference on Pattern Recognition,2010.
[责任编辑:王楠]