徐國慶,吳云韜
(武漢工程大學 計算機科學與工程學院 智能機器人湖北省重點實驗室,湖北 武漢430205)
在基于人臉跟蹤的智能人機交互控制中,如何有效地檢測跟蹤人臉的特征點,并根據跟蹤結果識別人臉動作是系統應用的研究熱點和難點。
臉部運動可以通過頭部姿態變化得到,因此可以通過估計頭部姿態來獲取臉部運動信息。使用2D 形狀模型[1,2]對人臉姿態進行估計,通過計算臉部中心點與左右輪廓邊界點的比例來計算人臉的偏轉角度,在人臉左右偏轉角度不大時,能夠獲得較為滿意的識別結果,由于其計算偏轉角度時使用了關鍵點位置量比較,當人臉出現上下運動或者深度方向的變化時,關鍵點的位置量在橫向上變化不大,無法準確進行計算。
使用三維參數化網格簡化人臉柱狀模型[3,4],在實現三維對齊時可以自動獲得3個偏轉角度。三維模型擬合需要較大的計算量,并且當人臉出現較大角度的偏轉時,模型的失真度加大,會導致擬合失敗。利用眼睛的局部特征實現人臉跟蹤和定位[5-7]。利用相鄰圖像幀間的差分圖像提取運動信息[8,9],作為臉部動作跟蹤的計算結果,由于相鄰幀間的運動信息容易受到變化的背景和光照的影響,處理的魯棒性和環境適應性不高。針對膚色的個性化特征,使用動態匹配的在線膚色模板[10],在算法的復雜度和計算效率上有較大的改進。
本文在動態膚色模板的基礎上,考慮到人臉運動跟蹤的目標是運動的人臉,可以使用人臉的關鍵點信息,并考慮人臉在運動視頻中的膚色信息,通過膚色重心跟蹤實現對人臉的快速跟蹤。結合主動表觀模型對膚色區域進行約束,進一步提高膚色跟蹤精度。提出一種基于膚色重心運動歷史圖的人臉跟蹤以及姿態識別,實驗結果表明,該算法可以較好地克服人臉膚色與背景接近導致的跟蹤飄移的影響,在人臉快速運動時能夠實現實時魯棒跟蹤。
膚色檢測算法一般采用固定膚色模型參數,其檢測的膚色區域往往會出現加大范圍的誤檢獲漏檢,考慮到人臉在初次使用人臉定位時可以確定人臉范圍,在此范圍內可以結合實際的膚色圖像進行在線的膚色參數調整。
在人臉對齊中使用主動表觀模型能夠較為準確地定位出人臉的邊緣輪廓,在人臉上定義了一系列關鍵點,可以通過下式的向量表示

給定一組標記好形狀的人臉訓練樣本,可以將訓練集中任意一個形狀表示為平均形狀加上若干形狀基向量的線性組合

式中:s0——平均形狀,si——與前n 個相互正交的最大本征值對應的本征向量,κi——形狀系數。這些關鍵點中處于輪廓線上的點可以構成一個半封閉的區域,在該區域邊緣將人臉部分與背景分割開,可以此邊界提取膚色特征。對膚色分布采用二維高斯分布來描述,二維高斯分布的表達式為

式中:b——樣本在YCbCr顏色空間的值,μ——膚色在YCbCr顏色空間樣本均值,C——膚色相似度模型協方差矩陣。通用的統計方法針對于某一特定的膚色時會出現偏差,特別是當背景中含有與膚色顏色接近的區域時,會使前景背景的運動出現混淆,導致運動估計出現較大的偏差。為在跟蹤圖像中將顏色區域限定在真實的臉部區域,可利用主動表觀模型的邊緣輪廓確定人臉膚色區域,并對該區域以外的其它非人臉區域進行屏蔽,獲得在線的膚色模型。
圖1是使用在線膚色檢測的效果。可以看出,使用在線膚色檢測可以較好地適應人臉的個性化特征,可以魯棒地檢測出一些由于局部高光 (如額頭)和遮擋陰影 (如脖子)導致的固定參數漏檢的區域。

圖1 在線膚色檢測效果
在視頻物體跟蹤算法中,運動歷史圖 (MHI)通過將連續幀中運動信息保留在同一幀中,從而能夠推算出圖像目標的運動信息,針對人臉跟蹤的具體應用,可以結合膚色區域的提取結果,將運動信息的計算限定在人臉區域內,減少計算量,并能夠魯棒地對人臉的運動進行跟蹤。
直接使用默認的膚色檢測結果進行計算時,由于區域內可能含有類膚色的非人臉范圍,特別當該像素位于背景內時,此類像素會使計算的結果出現較大的偏差。因此使用主動表觀模型對人臉區域進行限定,其算法流程如下:
(1)在初始幀中通過主動表觀模型獲取雙頰區域,并創建在線膚色特征參數,獲取準確的在線膚色區域Ω,對該區域內的每一個像素點I(x,y),計算其膚色概率p(x,y),確定膚色區域的質心位置分量

膚色質心的位置(xc,yc)通過下式計算

(3)跟蹤視頻的每幀圖像時刻用τk表示,計算相鄰幀之間的像素差可以獲得輪廓圖ψk

將當前時刻與前一段時間的輪廓圖記錄在同一幅圖像內,獲得運動歷史圖像H

式中:T——圖像幀保存時間,即在運動歷史圖中最早的輪廓圖像時刻為τk-T。
(4)在運動歷史圖中保存前幀圖像像素值的變化以及時間標志,對運動歷史圖對應的像素點計算梯度,獲得相鄰視頻幀中的運動信息。將這些像素點的運動信息進行統計分析,獲得圖像中的膚色運動信息。
通過膚色歷史圖跟蹤獲得人臉的實際運動軌跡,該軌跡可以作為真實人臉位置的預估區域Ω0。在預估的人臉區域內進行人臉對齊,并根據對齊的結果獲得主動表觀模型上對應的相鄰兩幀上的關鍵點坐標,則可以依據跟蹤的關鍵點的坐標位置的變化獲取實際的關鍵點運動方向。由于實際的人臉運動方向與單一關鍵點的運動方向之間存在一定的誤差,因此使用關鍵點進行人臉總運動方向計算時應濾除與真實方向誤差較大的關鍵點方向。
對于每個匹配點,計算其運動矢量方向和幅值



在實際的跟蹤中,由于像素點的梯度方向并不完全相同,可以采用對(x,y)進行平均來獲取總體的運動方向,但由于跟蹤的像素點中存在與實際運動方向偏差較大的關鍵點,直接使用平均值會將這些關鍵點的誤差進行累積。因此,本文采用運動方向濾波方法,在跟蹤過程中不斷將誤匹配的關鍵點進行去除,其步驟如下:
(2)統計Bk中最大值,作為運動匹配方向的主方向Θ;
(3)選擇對應的匹配點的運動方向矢量及幅度值作為有效匹配點輸出。
使用上述方法獲得的運動方向可以比較魯棒地去除誤匹配的關鍵點,使最終的運動方向與實際人臉的運動方向一致。
在人臉運動過程中,記錄匹配的主方向,構成觀測序列:{Θi}、{λi},臉部運動的動作可以根據序列進行判斷。將臉部運動的動作設定為上下點頭、左右搖頭,其動作對應的概率為:pn、ps。使用觀測序列,計算者兩類動作概率,概率最大者即為當前識別的動作。
點頭動作由連續的低頭抬頭構成,搖頭動作由連續的左右交替的擺頭動作構成,在動作序列中通過對連續動作的方向識別,實現對上述兩類動作的區分。在某一連續動作中,其動作方向呈交替變化,可以認為在設定的動作序列范圍內,兩個相對方向的序列統計個數相等,因此,定義下述的動作識別概率函數

式中:N——動作觀測序列的總幀數,Nu,Nd——觀測序列中抬頭、低頭幀數,Nsl,Nsr——觀測序列中左頭、右擺頭 幀 數,,,,為 大 于0 的 調 節 系 數,且+=1,+=1。分別計算點頭搖頭的識別概率并比較兩者大小即可以判斷當前頭部動作類型。
使用運動方向濾波算法能夠快速濾除匹配的關鍵點中與實際人臉運動方向明顯不符的點,使剩余的關鍵點的匹配結果正確反映實際的人臉運動。圖2是在運動人臉視頻中的實驗結果。

圖2 運動方向濾波的關鍵點匹配結果
圖2中左列為直接使用歷史圖像匹配在本幀上的關鍵點對齊結果,右列為使用運動方向濾波后去除了誤匹配點的跟蹤效果。從圖中可以看出,使用主方向濾波算法,能夠將關鍵點匹配結果中匹配矢量運動方向明顯偏離實際運動方向的點去除,如第一行的下嘴角處、第二行的左側臉頰處、第三四行的左眉角處、第五行的上嘴唇處、第六行的下巴處,這些點均明顯偏離臉部的真實運動方向,濾出后右列中的關鍵點均能夠反映實際的人臉運行方向。圖中線段為匹配的運動矢量,含圓點的端點表示運動矢量的前幀起始處,另一端點為當前幀中的匹配點。矢量標示了關鍵點的運動軌跡。
本文在測試的視頻上分別比較了運動方向濾波的動作識別算法和直接統計所有方向的算法。
圖3中橫軸12個區間為圓周角進行12等分,即每一個區間的角度為30°。深灰色區域的多個bar顯示了沒有考慮主運動方向時,多個關鍵點的運動方向偏離大多數關鍵點的方向,這些點直接進行運動方向平均會導致實際運動方向發生偏離。而淺灰色的bar顯示的是對原始的匹配結果進行主運動方向濾波,將偏離主運動方向的關鍵點濾除,并且將最多匹配的方向兩側的30°內匹配的關鍵點保留累加進主方向,最終得到一個方向(每幅圖中的最高的bar)。這個方向明確地指示了人臉的實際運動方向。使用這種算法可以在運動視頻關鍵點匹配過程中及時濾除誤匹配點,避免誤差累積。

圖3 人臉運動方向匹配對比
圖4給出了本文算法在臉部動作識別上的結果,上下兩條曲線為同一段視頻中分別使用點頭、搖頭動作概率算法計算的結果。視頻幀中的動作分別為連續點頭抬頭、連續搖頭、間斷點頭抬頭以及連續搖頭、間斷點頭抬頭,從兩條概率曲線上,可以明顯地區分出這兩類動作。從圖中曲線可以看出,使用主方向濾波的動作識別能夠獲得更為精確的識別結果。

圖4 視頻幀臉部運動識別結果
在視頻中魯棒識別臉部動作是自然人機交互的主要研究問題之一,本文使用在線膚色模型實現快速的人臉跟蹤位置預估,使用主動表觀模型關鍵點匹配算法實現運動過程中的精確位置計算。根據跟蹤的動作序列,結合動作概率算法實現對運動視頻中的人臉動作的精確識別。實驗結果表明,該算法能夠在人臉多方向運動過程中較為魯棒地識別人臉的準確動作,能夠較好地區分點頭、搖頭兩類動作。算法的不足點在于使用在線膚色模型初始階段需要初始化膚色參數,以及在關鍵點濾波過程中需要實時更新關鍵點,在P42.4Ghz-CPU 的計算機上實測的計算效率為18fps,算法的實時性還有待進一步提高。
[1]CHEN Ying,AI Chunlu.Face features tracking with conditional active appearance model[J].Journal of Computer Aided Design &Computer Graphic,2013,25 (4):510-518 (in Chinese). [陳瑩,艾春璐.條件主動外觀模型下的人臉特征點跟蹤 [J].計算機輔助設計與圖形學學報,2013,25 (4):510-518.]
[2]Lin SD,Lin Jia-Jen.Sleepy eye’s recognition for drowsiness detection [C]//International Symposium on Biometrics and Security Technologies,2013:176-179.
[3]HU Min,ZHU Hong,WANG Xiaohua.Expression recognition method based on gradient Garbor histogram features[J].Journal of Computer Aided Design &Computer Graphic,2013,25 (12):1856-1861 (in Chinese).[胡敏,朱弘,王曉華.基于梯度Gabor直方圖特征的表情識別方法 [J].計算機輔助設計與圖形學學報,2013,25 (12):1856-1861.]
[4]Xu Guoqing.Real time detection of eye corners and iris center from images acquired by usual camera[J].International Journal of Intelligent Engineering &Systems,2010,3 (1):25-32.
[5]ZHOU Mingcai,LIANG Lin,SUN Jian.AAM based face tracking with temporal matching and face segmentation [C]//IEEE Conference on Computer Vision and Pattern Recognition,2010:673-680.
[6]Roberto Valenti,Theo Gevers.Accurate eye center location and tracking using isophote curvature[C]//Proceedings of the 21st IEEE International Conference on Computer Vision and Pattern Recognition,Anchoage,2010.
[7]WANG Kejun,ZOU Guofeng,FU Guixia,et al.An approach to fast eye location and face plane rotation correction[J].Journal of Computer Aided Design &Computer Graphic,2013,25 (6):865-879 (in Chinese).[王科俊,鄒國鋒,傅桂霞,等.一種快速眼睛定位與人臉平面旋轉校正方法 [J].計算機輔助設計與圖形學學報,2013,25 (6):865-879.]
[8]XU Guoqing.Real time face alignment using online features model[J].Computer Engineering and Design,2013,34 (11):4021-4026 (in Chinese).[徐國慶.在線模板的人臉特征點對齊 [J].計算機工程與設計,2013,34 (11):4021-4026.]
[9]Audrius Bukis Rimvydas Simutis.Face orientation normalization using eye positions[J].Computer Technology and Application,2013,7 (10):513-521.
[10]XU Guoqing.Eye center location using composite features[J].Computer Engineering and Design,2014,35 (10):3598-3601 (in Chinese). [徐國慶.復合特征的眼睛中心定位 [J].計算機工程與設計,2014,35 (10):3598-3601.]