牛曉霞
(燕山大學信息科學與工程學院,秦皇島066004)
基于三維模型的人臉姿態估計?
牛曉霞
(燕山大學信息科學與工程學院,秦皇島066004)
提出了一種基于三維模型的人臉姿態估計方法。首先根據人臉特征點重建出稀疏的三維人臉模型,然后基于三維模型采用線性回歸的方法對人臉姿態進行初步估計,確定姿態范圍,再對估計結果進行修正,從而對人臉姿態進行精確估計。實驗表明,該方法具有較好的估計效果,提高了姿態估計精度。
三維模型;線性回歸;人臉姿態估計;稀疏模型
人臉姿態估計是指通過輸入單幅或多幅圖像以確定人臉在三維空間中姿態的過程。在人臉識別、虛擬現實、智能人機界面、司機疲勞檢測等領域,人臉姿態估計都有著廣泛的應用。
現有的國內外人臉姿態估計的方法大體可分為基于人臉特征的方法和基于模型的方法[1]。基于特征的方法[2]假設人臉的三維姿態與人臉圖像的某些特征(如灰度、色彩、圖像梯度等)之間存在著特定的對應關系,將輸入圖像與姿態樣本進行匹配得到姿態結果。Chen等人提出把人頭部看成人臉膚色和發色區域的組合,根據大量樣本數據建立起區域特性與人臉姿態之間的對應關系[3]。這類方法在樣本不充分的情況下難以獲得滿意的結果。基于模型的方法是指利用幾何模型結構來表示人臉形狀,并建立模型與圖像之間的對應關系,然后基于此對應求解姿態參數。基于模型的方法的最大優點就是方法簡單易行,且具有較高的精度[4-6]。Shimizu等人由統計方法定義了一個通用人臉模型,通過三維模型與人臉圖像上某些特定曲線的對應進行迭代優化匹配得到人臉姿態參數估計[7]。
近年來,隨著三維人臉建模技術的發展,可以得到個性化稀疏的人臉模型[8-9],并將個性化模型與人臉圖像之間對應起來,基于此,提出一種個性化稀疏模型和優化算法相結合的人臉姿態估計方法。對于重建的稀疏三維人臉,設計了兩步估計步驟:首先利用線性回歸的思想來對人臉姿態進行初步估計[10],然后將姿態估計結果作為初值,確定搜索范圍,再對估計角度參數進行修正,最后得到人臉姿態的精確估計結果。
利用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.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)以估計結果為參考確定搜索范圍,利用定義的函數Θ(α,β),對線性回歸算法得到的結果進行修正約束,得到最終估計結果。
實驗在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 姿態估計結果
提出一種基于三維模型的人臉姿態估計方法。首先對建立的人臉庫分別進行主成分分析,建立稀疏的個性化人臉模型,然后采用兩步估計的方法對人臉姿態進行估計。其中第一步采用線性回歸的方法進行初步估計,確定姿態范圍,第二步對估計結果進行修正,得到最終的姿態解。算法提取可見特征點,不依賴于人臉的紋理信息,所以對人臉圖像的光照條件無特殊要求,建模效果良好,姿態估計結果令人滿意,從建模到姿態估計結束用時較短,具有一定的實際應用價值。
[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