APP下载

基于三维模型的人脸姿态估计❋

2014-08-07牛晓霞

微处理机 2014年6期
关键词:人脸形状姿态

牛晓霞

(燕山大学信息科学与工程学院,秦皇岛066004)

基于三维模型的人脸姿态估计❋

牛晓霞

(燕山大学信息科学与工程学院,秦皇岛066004)

提出了一种基于三维模型的人脸姿态估计方法。首先根据人脸特征点重建出稀疏的三维人脸模型,然后基于三维模型采用线性回归的方法对人脸姿态进行初步估计,确定姿态范围,再对估计结果进行修正,从而对人脸姿态进行精确估计。实验表明,该方法具有较好的估计效果,提高了姿态估计精度。

三维模型;线性回归;人脸姿态估计;稀疏模型

1 引 言

人脸姿态估计是指通过输入单幅或多幅图像以确定人脸在三维空间中姿态的过程。在人脸识别、虚拟现实、智能人机界面、司机疲劳检测等领域,人脸姿态估计都有着广泛的应用。

现有的国内外人脸姿态估计的方法大体可分为基于人脸特征的方法和基于模型的方法[1]。基于特征的方法[2]假设人脸的三维姿态与人脸图像的某些特征(如灰度、色彩、图像梯度等)之间存在着特定的对应关系,将输入图像与姿态样本进行匹配得到姿态结果。Chen等人提出把人头部看成人脸肤色和发色区域的组合,根据大量样本数据建立起区域特性与人脸姿态之间的对应关系[3]。这类方法在样本不充分的情况下难以获得满意的结果。基于模型的方法是指利用几何模型结构来表示人脸形状,并建立模型与图像之间的对应关系,然后基于此对应求解姿态参数。基于模型的方法的最大优点就是方法简单易行,且具有较高的精度[4-6]。Shimizu等人由统计方法定义了一个通用人脸模型,通过三维模型与人脸图像上某些特定曲线的对应进行迭代优化匹配得到人脸姿态参数估计[7]。

近年来,随着三维人脸建模技术的发展,可以得到个性化稀疏的人脸模型[8-9],并将个性化模型与人脸图像之间对应起来,基于此,提出一种个性化稀疏模型和优化算法相结合的人脸姿态估计方法。对于重建的稀疏三维人脸,设计了两步估计步骤:首先利用线性回归的思想来对人脸姿态进行初步估计[10],然后将姿态估计结果作为初值,确定搜索范围,再对估计角度参数进行修正,最后得到人脸姿态的精确估计结果。

2 人脸模型重建

利用CVL Face Database人脸库建立稀疏的三维人脸数据库以及对应的稀疏的二维人脸数据库,根据主成分分析原理,可以将三维人脸以及二维人脸分别用以下公式表示:

主成分回归算法就是利用相关模型的独立与非独立数据的关系来完成建模。最基本的要点就是将二维模型与三维模型分解到一个低维空间里,用主成分分析系数bs2D,i和bs3D,i来表示真实模型xi与Xi,然后用标准的线性回归来联系xi与Xi。

输入提取的人脸特征点xinp,关于尺度因子与位移因子,可在对数据的预处理中求得S3D,这里输入的人脸特征点即为与人脸库对应尺度的数据。对稀疏三维人脸数据库进行主成分分析得到。对相应的二维人脸数据库进行主成分分析得到S2D,分别用各自的系数表示三维形状样本(X1,X2,...,Xn)和二维形状样本(x1,x2,...,xn),如式(3)和式(4):

式中bs3D,i和bs2D,i分别为三维和二维人脸库中能表示第i个人脸的形状合成系数。然后令:

T=[bs2D,1,bs2D,2,...,bs2D,m-1],U=[bs3D,1,bs3D,2,...,bs3D,m-1],根据主成分回归模型可得:

将人脸特征点xinp输入,通过式(6)和式(7)求得形状系数:

式中bs2D,inp为根据输入特征点求取的二维形状合成系数,然后通过式(7)求得三维形状合成系数。

最后利用得到的三维形状合乘系数通过式(8)得到三维稀疏人脸模型。

式中xr为恢复的稀疏人脸模型的形状向量。

3 人脸姿态估计

3.1 基于线性回归的初步估计

对于给定的任意姿态的人脸,首先选取7个特征点,分别为两眼的内外眼角、鼻下点和左右嘴角点。然后在建立的稀疏三维人脸模型上对这7个点进行标定,分别得到二维、三维坐标为pi(xi,yi)和qi,(xi,yi,zi),其中i=1,2,...,7。将人脸模型进行姿态旋转到特定角度,得到:

式中R(α),R(β),R(γ)为对应的旋转矩阵。将经过旋转后的特征点平行投影到二维平面即为pi(xi, yi)。将上式展开,把与相关的坐标变换信息舍去,将xi,yi,zi视为自变量,视为因变量,则式(10)满足多元线性回归模型。

式中a1=cosγcosβ;

a2=sinγcosβ;

a3=cosγsinβsinα-sinγcosα;

a4=sinγsinβsinα+cosγcosα;

a5=cosγsinβcosα+sinγsinα;

a6=sinγsinβcosα-cosγsinα;

上次展开后的方程组为超定线性系统,可以用最小二乘法求解。令A=(a1,a2,a3,a4,a5,a6)T表示回归系数,Y=(y1,y2,...,y14)T,矩阵B为:

则A=B⊥Y。其中B⊥=(B′B)-1,B′是B的伪逆转置矩阵。

利用相关特征点以及回归系数进行姿态的初步估计:

(1)人脸绕z轴的旋转角度γ可以通过内外眼角点和左右嘴角点的坐标计算得到。

(2)人脸绕y轴的旋转角度β可先根据回归系数a1,a2分别求得旋转角度β1和β2,然后求取β1和β2的均值即得。

(3)人脸绕x轴的旋转角度α与求β的方法相似,根据回归系数a3,a4,a5,a6分别求出α1,α2,α3,α4,然后通过求取四者的平均值得到。

3.2 姿态角度修正

为了避免线性回归算法得到结果误差过大的现象,针对三维模型中所使用的七个点,将其做空间旋转并进行投影,得到相应二维坐标。由于人脸绕x轴的旋转角度γ可以通过图像直接进行确定,而且精度较高,所以这里只针对绕x轴的旋转角度α和绕y轴的旋转角度β进行校正约束。首先定义函数:

其中,xin为输入的带有姿态的特征点,xr为重构的稀疏三维模型,LR代表将三维模型做旋转投影变换。针对式(12),发现当输入的角度接近真实角度时,Θ(α,β)可以得到最小值,因此可以以此为判断依据,将使用线性回归算法得到的姿态估计角度作为参考,确定一个合理的角度范围,然后对不同角度组合作为参数进行输入,对式(12)进行求解,就可以得到相应的Θ(α,β)。将所有Θ(α,β)的计算结果进行搜索可以得到相应的最小Θ(α,β),其对应的α与β即为所求,也就意味着经旋转投影变换的三维特征点与给定的带有姿态的特征点距离最为接近。

将人脸库中三维人脸模型进行旋转投影之后得到的二维向量作为输入进行算法验证时发现:求解α时,当α<10°时线性回归算法计算结果误差较大,此时采用修正算法结果作为估计结果;当α>10°时线性回归算法与修正方法得到的结果都接近真实值,这时为了使误差稳定,将两个结果进行加权平均处理得到估计结果,如式(13)。

其中α1为线性回归估计结果,α2为调整后的结果,α为最终估计结果。求解β时,将线性回归估计结果与修正结果进行平均计算得到最终结果。

整个的姿态角度求解过程如下:

(1)输入给定的人脸正面照片,进行特征点提取,根据特征点进行稀疏三维模型重建,得到相应的3D人脸形状模型;

(2)输入相应的带有姿态的人脸图片,标定左右嘴角点、鼻下点和两眼的内外眼角7个特征点;

(3)建立线性回归方程,进行求解,并进一步解出姿态角度的估计结果;

(4)以估计结果为参考确定搜索范围,利用定义的函数Θ(α,β),对线性回归算法得到的结果进行修正约束,得到最终估计结果。

4 实验结果

实验在3.11GHz AMD Athlon(tm)IIX2,1.75 GB内存,MATLABR2010a环境下编程所得。为了验证实验结果,采用人脸库中三维人脸模型经过旋转投影得到的二维坐标作为输入参数,进行姿态计算。图1为真实的人脸图片,图2为建立的稀疏三维人脸形状模型,图3为建立个性化稀疏的三维人脸模型与真实特征点的坐标图,其中红色星号为人脸库中人脸模型的真实坐标,蓝色点为重建的三维坐标。可见重建结果令人满意。

图1 真实人脸图片

图2 建立的三维形状模型

表1中分别给出了使用线性回归算法和使用文中算法的姿态估计结果。可见,文中算法的估计结果比较精确,与单独使用线性回归算法相比,文中算法在估计精度上也有提高。

为了进一步验证算法的有效性,在人脸库中随机抽取10个人脸样本,分别使用角度α=20°,β=19°进行测试。其中x轴方向的绝对平均误差Δα=0.5336°,y轴的绝对平均误差Δβ=0.3197°,从人脸形状模型重建到两步姿态估计结束平均用时1.6482s。

图3 重建特征点与提取特征点

表1 姿态估计结果

5 结束语

提出一种基于三维模型的人脸姿态估计方法。首先对建立的人脸库分别进行主成分分析,建立稀疏的个性化人脸模型,然后采用两步估计的方法对人脸姿态进行估计。其中第一步采用线性回归的方法进行初步估计,确定姿态范围,第二步对估计结果进行修正,得到最终的姿态解。算法提取可见特征点,不依赖于人脸的纹理信息,所以对人脸图像的光照条件无特殊要求,建模效果良好,姿态估计结果令人满意,从建模到姿态估计结束用时较短,具有一定的实际应用价值。

[1]Eric M C,Mohan M T.Head pose estimation in computer:A Survey[J].IEEE Transactions on Pattern Analysis and Machine Intelligence,2009,31(4):607-626.

[2]叶航军,白雪生,徐光.基于支持向量机的人脸姿态判定[J].清华大学学报,2003,43(1):67-70.

[3]Q Chen,H Wu,T Shioyama,T Shimada.3D Head Pose Estimation using Color Information[C].In Proceedings of IEEE International Conference on Multimedia Computing and Systems,1999:697-702.

[4]Shafi M,Chung PW H.Face pose estimation from eyes and mouth[J].Advanced Mechatronics Systems,2010,11(2):132-138.

[5]梁国远,查红彬,刘宏.基于三维模型和仿射对应原理的人脸姿态估计方法[J].计算机学报,2005,28(5):792-800.

[6]曾慧,穆志纯,袁立.基于三维模型的人脸姿态估计方法[J].计算机工程,2011,37(9):1-3.

[7]Shimizu I,Zhang Z,Akamatsu S,Deguchi K.Head pose determination from one image using a generic model[J].Proceedings of the IEEE International Conference on Automatic Face and Gesture Recognition,Nara,1998,100-105.

[8]Rara H M,Farag A A,Davis T.Model-based 3D shape recovery from single images of unknown pose and illumination using a small number of feature points[C].IEEE International Joint Conference on Biometrics Compendium,2011:1-7.

[9]王国胤,龚勋,等.基于认知机理的三维人脸建模及应用[J].重庆邮电大学学报,2009,21(4):555-560.

[10]熊黎丽,王国胤,龚勋,等.基于三维重建的人脸姿态估计[J].重庆邮电大学学报,2010,22(3):375-380

Face Pose Estimation Based on 3D Model

NIU Xiao-xia
(College of Information Science and Engineering,Yanshan University,Qinhuangdao 066004,China)

The face pose estimation method based on 3D model is proposed.First,the spare face model is built according to the feature points of the face.Then,based on the 3D face model,linear regression is used to estimate the face pose preliminarily and the 3D face pose is revised to acquire the accurate pose value.Finally,the face pose is estimated accurately.The experiment results show that the estimation method can obtain satisfying result and achieve better accuracy.

3D models;Linear regression;Face pose estimation;Sparsemodel

10.3969/j.issn.1002-2279.2014.06.018

TP391.4

:A

:1002-2279(2014)06-0062-04

秦皇岛市科学技术研究与发展指导计划资助项目(2012021A048)

牛晓霞(1981-),女,河北保定人,实验师,硕士,主研方向:计算机图形图像处理。

2014-09-15

猜你喜欢

人脸形状姿态
挖藕 假如悲伤有形状……
有特点的人脸
一起学画人脸
攀爬的姿态
你的形状
三国漫——人脸解锁
全新一代宋的新姿态
跑与走的姿态
火眼金睛
长得象人脸的十种动物