基于双目视觉的三维人脸识别算法
2014-03-14张顺岚莫建文
张顺岚,莫建文
(桂林电子科技大学,广西桂林541004)
1 新算法整体流程
针对上述问题,本文提出了一种新的三维人脸识别算法,其算法流程图如图1所示。与传统三维人脸识别算法相比,该算法以结构简单的双目立体视觉系统为基础,通过调整左、右摄像机与人脸的相对位置,完成人脸的二维图像采集,从而能经济、高效地完成图像采集;识别过程中,利用主动形状模型(Active Shape Model,ASM)技术对二维图像进行二维特征点自动定位,并结合摄像机的内外参数得出特征点的三维坐标,从而避免了复杂的人脸三维重建;最后利用反向传播(Back Propagation,BP)神经网络进行识别,获得了较高的正确识别率。
图1 识别算法流程图
2 二维特征点标定
在提取特征点之前,先根据肤色等信息对双目视觉系统获得的左右人脸图像进行人脸区域提取,然后利用极线变换[7]对图像进行校正,并对校正后的左、右图像进行特征点定位,将确定好的人脸区域作为初始位置,最后还要利用ASM技术[8]进行特征提取,左右每幅图像上分别提取76个特征点。双目立体视觉系统获得图像经过上述极线校正、特征定位及特征提取后的图像如图2所示,其中,特征点用线段连接起来,图2a、图2b分别表示左、右图像提取的特征点。
图2 利用ASM技术提取特征点
特征点提取后,可以得到这76个特征点的图像像素坐标,表1描述了部分特征点的像素坐标。由表1可知,经过图像校正后,左右图像中的特征点的纵坐标位置基本一致,也就是说经过极线校正后,特征点的视差信息可以直接由左右图像的横坐标之差求出。
表1 部分特征点坐标
3 三维特征提取
3.1 特征点三维信息恢复
为了克服二维人脸识别易受环境、姿态、表情等因素影响的缺点,将提取的特征点进行三维信息恢复,由于特征点三维恢复的最终目的是实现三维人脸识别,因而只需对人脸面部关键特征点进行三维信息恢复。根据双目立体视觉原理计算相应的三维空间坐标信息[9],其原理如图3所示,图中b是基线距离,即摄像机光心Cl与Cr之间的距离,f是摄像机的焦距,P(X,Y,Z)为空间点,设该空间点在左右摄像机坐标系中的坐标分别为(x1,y1,z1)和(x2,y2,z2),在左右平面上对应的像素坐标为 (u1,v1)和(u2,v2),则视差d=u1-u2,根据三角测量原理和2个摄像机的关系,有
图3 视差测距法原理图
空间点的三维坐标,可表示为
由张正友标定法[10]确定摄像机焦距等参数,并测出基线距离,然后根据式(2),可以计算出空间点三维坐标信息,从而得到所求的人脸面部关键特征点的三维信息。
3.2 构造三维特征
通过人脸关键部位的特征点的位置,如鼻尖、眼角等的位置,提取三维人脸上的直线距离特征、角度特征、人脸比例特征、周长特征、曲线特征、体积特征以及表面积特征等几何特征,从而形成一个20维几何特征向量,用于对三维人脸的识别。下面分别描述这些特征及其构造。
1.4 标准溶液配制 将100 mg/L甲基硫菌灵及其代谢产物多菌灵标准品,用甲醇稀释成 5、10、50、100、500 μg/L系列混合标准溶液,于 0~4 ℃ 冰箱中贮存,待用。
1)距离特征
距离特征主要包括距离矩阵和局部特征点的曲线距离,选两点的欧氏距离作为其三维特征点之间的直线距离,曲线距离则使用分段计算两点之间的距离,然后求得近似模拟曲线距离。所选取的曲线距离有“鼻根点—鼻尖点—鼻下点”和“左鼻翼点—鼻尖点—右鼻翼点”的曲线距离。具体计算过程为
式中:(xi,yi,zi)和 (xj,yj,zj)分别表示参与计算的两个特征点的三维坐标。
2)角度特征的表示与度量
人脸上的一些部位之间的角度特征受外界的影响较小,因此可以提取这些角度特征来进行识别。该计算主要是基于余弦定理,具体计算过程为
式中:p1(x1,y1,z1),p2(x2,y2,z2)和 p3(x3,y3,z3)为所选3个人脸特征点的三维坐标。这类几何特征可以为眼睛内外、眼角与鼻尖之间的角度,鼻根到鼻尖再到鼻下点的距离等。
3)比例特征的表示与度量
根据人脸美学得知,面部长度大概是鼻子长度的3.5倍,面部宽度大概是左右眼角直线距离的5倍,将面部长度和宽度之比作为人脸的长宽比例。这个几何特征可以度量不同人脸的形状,并应用于人脸的识别。
4)周长特征的表示与度量
这类特征主要是计算鼻子XY和YZ剖面周长,这里主要是基于两点欧氏距离来计算。
5)面积特征的表示与度量
面积特征是计算特定人脸区域的表面积,可用海伦公式表示如下
式中:p1,p2,p3分别为 p1(x1,y1,z1),p2(x2,y2,z2)和p3(x3,y3,z3)的简写,表示为3个特征点的三维坐标;s为这3个特征点所围成的区域面积。
6)体积特征的表示与度量
体积特征主要用于计算鼻子的体积,计算式如下
式中:S为鼻子的XY剖面面积;h为鼻子高度。而鼻子的高度的计算则如下,设鼻尖的坐标为(x1,y1,z1),鼻根的坐标为 (x2,y2,z2),鼻下点的坐标为 (x3,y3,z3),可以建立鼻根点和鼻下点所组成的直线方程
式中:A=z2-z3,B=y3-y2,C=y2(z3-z2)-z2(y3-y2)。则鼻子的高度可以认为是鼻尖点到式(8)所代表的直线距离,则鼻子的高度公式为
4 基于BP神经网络的三维人脸识别
采用“误差反向传播”学习的BP网络,它可以对任意形状的观察向量集合进行正确地分类,其应用十分广泛。BP神经网络结构如图4所示。假设输入输出对是(xk,yk),其中,xk=(xk1,xk2,…,xkn)T,为第 k个输入人脸特征向量;yk=(yk1,yk2,…,ykn)T为第k个样本的期望输出。
将3.2节构造的20维几何特征向量作为BP神经网络的输入,中间层采样15个节点,输出层为判决结果。利用梯度下降法,根据已知人脸样本对神经网络中权系数进行训练,训练结果即可对人脸进行识别测试。
图4 BP神经网络结构
5 实验结果及分析
为了检测提出算法的性能,采用本文算法建立的三维人脸数据库与Bosphorus大学提供的3D人脸数据库[11]对算法进行测评。其中,Bosphorus 3D人脸数据库是采用基于结构光的三维扫描仪对人脸进行采集,里面包括表情变化的数据。该库提供了对应的三维人脸的24个特征点位置,这些位置都是由受过专业培训的人员进行手工标记得到的。在实验中使用了除左右耳垂点两个特征点之外的22个特征点。Bosphorus 3D人脸数据库部分人脸模型如图5所示。本文算法自建的三维人脸数据库中包含30个人脸信息,每个人脸拍摄15组人脸数据,数据包括部分表情的变化。取其中10组共300张人脸数据作为BP神经网络训练样本集,然后取其余5组共150张人脸数据作为测试集。图6描述了本文自建数据库采用的部分二维图像对。
图5 Bosphorus 3D人脸数据库部分模型
图6 自建数据库采用的部分二维图像对
对上面2个三维人脸数据库,利用相同的特征,采用最近距离分类法和本文的BP神经网络分类法进行识别比较,表2描述了2种识别方法对2种数据库进行识别比较的结果。由表2可知,对同一数据库利用相同的特征,用本文的BP神经网络识别法比用最近距离识别法正确识别率高。由于Bosphorus数据库是通过结构光三维扫描仪获得的,并用人工标注特征点,三维人脸坐标相对较精确,因此采用相同的识别法对2个数据库进行识别,Bosphorus数据库正确识别率要高于本文自建的数据库的正确识别率,但该数据库的获取代价大,且工序繁琐;尽管采用相同的识别法,本文自建人脸数据库正确识别率略低于采用Bosphorus数据库,但其正确识别率达到了90%左右,能满足实际的需要,且本文算法简单、经济。
表2 正确识别率比较
6 结论
本文提出了基于双目视觉三维人脸识别算法,该算法以结构简单的双目立体视觉系统对人脸进行采集,使采集过程友好、简单、快捷;在识别过程中,利用ASM技术对二维图像进行二维特征点自动定位,并结合摄像机的内外参数得出特征点的三维坐标,从而避免了复杂的人脸三维重建;并利用BP神经网络进行识别,使正确识别率得到了提高。利用相同的特征,用最近距离分类法和本文的BP神经网络分类法,对本文建立的数据库和Bosphorus数据库进行识别比较,发现本文算法简单快捷,是一种经济、实用的三维人脸图像识别算法。
[1]梁婷婷.种基于Retinex和PCA的人脸图像识别方法[J].电视技术,2013,37(5):172-174.
[2]李晓娟,杨唐文,阮秋琦,等.基于轮廓线特征的三维人脸识别改进算法[J].铁道学报,2012,34(1):34-38.
[3]王跃明,潘纲,吴朝晖.三维人脸识别研究综述[J].计算机辅助设计与图形学学报,2008,20(7):819-829.
[4]SUN Yanfeng,TANG Hengliang,YIN Baocai.The 3D face recognition algorithm fusing multi-geometry features[J].Acta Automatica Sinica,2008,34(12):1483-1489.
[5]鹿乐,周大可,胡阳明.基于特征分块的三维人脸重建和识别[J].计算机应用,2012,32(11):3189-3192.
[6]林景亮,陈岳林.基于双目视觉的三维人脸重建方法[J].计算机应用研究,2012,29(1):397-400.
[7]陈胜勇,刘盛.基于OpenCV的计算机视觉技术实现[M].北京:科学出版社,2008.
[8]范玉华,马建伟.ASM及其改进的人脸面部特征定位算法[J].计算机辅助设计与图形学学报,2007,19(11):1411-1415.
[9]王福斌,刘杰,陈至坤,等.挖掘机器人双目视觉系统标定方法与立体匹配[J].电气技术与自动化,2012,41(3):156-162.
[10]Bosphorus 3D人脸数据库[EB/OL].[2013-06-10].http://bosphorus.ee.boun.edu.tr/default.aspx.
[11]ZHANG Zhengyou.A flexible new technique for camera calibration[J].IEEE Transactions on Pattern Analysis and Machine Intelligence,2000,22(11):1330-1334.