楊作寶1,2,侯凌燕1,2,楊大利1,2
1. 北京信息科技大學 計算機學院,北京 100101; 2. 網絡文化與數字傳播北京市重點實驗室,北京 100101
摘要:針對人臉多姿態導致人臉識別率下降這一問題,提出一種改進姿態矯正處理方法,通過改進對人臉特征點的有效定位,來計算人臉姿態旋轉的角度,再通過角度和改進姿態矯正方法來矯正非標準姿態人臉到近似標準姿態。由于人臉是不規則的橢球形,提出對人臉“三庭五眼”的局部區域進行二次矯正方法,再改進SURF算法進行人臉特征點匹配。該方法能夠將一定角度范圍內的多姿態人臉矯正到近似標準姿態。實驗結果表明,該方法能在一定程度上提高多姿態人臉識別率,較經典PCA方法錯誤率可下降10%左右。
關鍵詞:人臉識別;姿態矯正;姿態旋轉;SURF算法
0引言
人臉識別技術是當代人工智能、模式識別、計算機視覺領域中的熱門研究課題之一 [1]。在公安系統的犯罪身份識別、銀行海關的監控系統及機場、火車站的安檢系統等場合有著巨大應用價值。通過實際生活中對人臉識別的檢測結果得出,姿態因素是影響人臉識別結果的主要原因之一,己經成為限制人臉識別技術進步的難點。
近年來,學者們提出眾多解決人臉識別技術姿態問題的想法,但還沒有一套完備的方法理論,可以完全消除人臉圖像的多視角難題。目前在解決多姿態視角問題上有以下幾種主流方法:
(1)基于多視圖的人臉識別。該方法的識別是在可控條件下拍攝人臉圖像,需要采集每個人不同姿態的人臉圖像,訓練集數量越大,測試圖像與人臉訓練模型比對匹配時精度越高,識別正確率就越高。如K-means聚類[2],LLR算法[3]、水平鏡像和決策融合[4]等,這些方法因其簡易、有效等特性被廣泛應用。該類方法的不足是:需要拍攝每人不同視角的圖像形成多視圖。這在諸如抓捕在逃犯罪分子之類的場合是不可行的。
(2)由單張人臉圖像生成多角度人臉圖像。該類方法往往是一個人臉僅有一個姿態樣本圖像,主要目的是解決單一樣本或者較少樣本的情況下識別率低的問題。通過單一人臉合成多角度人臉圖像,增加識別率。諸如局部加權平均[5]、虛擬樣本擴張法[6]、高斯過程回歸[7]等。由單張圖像合成多角度人臉圖像的方法要求準確度達到一定的標準,而實際中合成該類方法得出的形變函數和要代表的人臉差異性比較大。對于非剛性結構的人臉,像日常的消瘦和臃腫、情緒的喜怒哀樂等變化,也會加大識別的難度。
(3)人臉姿態標準化。要矯正人臉到標準姿態,是由于實際中往往得不到正面人臉圖像,通過圖像合成函數,把不同角度的人臉圖像矯正到標準人臉圖像,再與原有人臉圖像庫中人臉進行比對。此類方法有仿射變換[8]、正弦變換[9] 、Clifford代數矯正[10]等,這種基于姿態矯正的方法具有時間復雜度低、識別更加精準等特點。對特征點有效提取和特征點匹配等方法進一步優化,可以較好地合成出人臉標準姿態圖像。
(4)使用與姿態無關的特征進行識別。直接提取對姿態變化不敏感的特征進行識別,如膚色、表情等。該方法有如下優點:不需要大量的已知姿態人臉圖像,不同的人只需少量的樣本;對測試樣本姿態變化的泛化能力強。典型方法有多因素分析算法[11]、外形和紋理的分布模型[12]等,該方法對人面部的旋轉有很強的魯棒性。但使用姿態無關特征也有缺點:它對標志點的定位十分敏感,需要計算大量的參數,且在參數確定上有待商榷。
實際中公安系統僅有一份身份證照片,在進行身份比對時,姿態變化復雜,訓練樣本少,效果不理想。本文使用相對較少的訓練樣本,在通用人臉圖像庫上進行實驗,結果表明,使用本文方法進行識別有相對較高的識別率,錯誤率較經典PCA方法下降10%左右,能夠有效克服一定條件下多姿態變化對人臉識別的影響。
1多姿態人臉旋轉角度測定
人臉姿態的變化通常有以下三種情況:平面外俯仰旋轉、平面外左右旋轉以及平面內旋轉,即分別繞X、Y、Z三個軸旋轉。圖1標出了人臉在空間中的三個旋轉方向。
1.1人臉特征點坐標定位
對于人臉圖像關鍵點的定位,應用方差積分投影對灰度值的敏感性,計算關鍵點的坐標。由于人臉特征是有一定對應關系的,通過關鍵點對應比值、距離等關系,對測試圖像的旋轉角度進行測定。假設圖像中坐標(x,y)處的灰度值為H(x,y),則圖像的水平積分投影Sh(y)、垂直積分投影Sv(x),在[x1,x2]和[y1,y2]區域內可分別表示為:
對于灰度積分投影水平和垂直的函數值進行分析,可以有效得出關鍵點。為了避免出現均值相同的情況,采用兩種方法取均值能更精確地提取特征點的位置。圖像在(x1,x2)和(y1,y2)區域內的水平方向的方差積分投影和垂直方向的方差積分投影可分別表示為:
通過“三庭五眼”人臉區域先估算人臉特殊點(眼睛、鼻子、嘴)的大概位置,再通過積分投影準確定位。人臉中其他區域的灰度值要明顯低于人眼瞳孔的灰度值。而人眼瞳孔的位置,在鼻尖的左斜上方和右斜上方,特定區域搜索,找出灰度值的最小點,即為左右瞳孔、眼睛的位置;在灰度圖上由于瞳孔的灰度特征相對明顯,可以較容易地提取出來;通過瞳孔和眼睛的大小可以確定左右眼角的坐標位置。
對于嘴巴的定位采取二值化算法,由于嘴巴位于人臉的下半部分,對于眼睛、眉毛、眼鏡等主要的干擾因素,可以在區域劃分時忽略不計。針對人臉的區域劃分進行閾值選擇,由于閉區域選擇法的特殊性,會使嘴巴區域的輪廓信息更為完整地凸顯。相對于嘴巴,橫向距離的寬度要大于縱向距離,且嘴巴區域是圓弧形連通的,較為集中。根據這些條件將嘴巴區域的坐標位置進行定位,進而確定嘴中心和左右嘴角的坐標位置。
對于鼻子,鼻尖和鼻孔都是孤立的點,而且鼻孔在圖像中通常比其他區域的像素的灰度值暗,從而形成黑斑。而鼻尖往往亮度高形成亮點。而Quoit濾波是基于數理形態學的濾波器,對孤立點定位精度高,可以定位鼻尖和鼻孔。使用Quoit濾波器的數理形態進行人鼻定位。Quoit濾波器公式定義:
可知e為圖像輸入,M為圓形元素,R為環結構。具體算法描述如下:對人臉圖像先進行歸一化處理,灰度值取補,這可以使圖像提取效果更加準確;對鼻尖和鼻孔使用濾波器進行處理后,再進行二值化處理,得到黑白圖像,使關鍵點明顯可見。左右鼻孔的選擇點就是白色部分。該算法很大程度上降低了運算時間。人臉特征點的坐標定位如圖2所示。
1.2旋轉姿態角度計算
Z軸上的人臉旋轉角度:由兩眼中心的連線與水平線的夾角得出,設旋轉后兩眼中心坐標分別為(x1,x2),(y1,y2),則角度的計算公式為:
計算出這個值,就可以計算出水平狀態的旋轉角度。
Y軸上的人臉旋轉角度:當人臉沒有旋轉時,人臉中分線正好位于人臉圖像的中間;當人臉繞Y軸旋轉時,反映到圖像平面,表現為人臉中分線偏離人臉圖像的中心位置。假設人臉只是繞Y軸旋轉,左眼中心、右眼中心與嘴中心夾角的斜率分別為:tanβ1=k1,tanβ2=k2。左右眼外眼角與鼻尖的夾角差值:βnose=β1-β2,同理還可求得內眼角與嘴中心的夾角差值βeye,鼻尖與左右嘴角的夾角差值βmouth,三個差值取均值,定位Y軸上人臉旋轉的角度,公式如下:
X軸上的人臉旋轉角度:通過側視圖,得到人臉、嘴巴與水平線的夾角α1,α2,則計算公式如下:
2人臉姿態矯正算法
在一定程度上訓練集和測試集的同一性影響著人臉識別的結果。兩者同一程度大,識別率就高。而往往攝像機拍到的人臉圖像是存在各種姿態角度的,它們作為測試集就需要先矯正到標準視圖人臉,再進行匹配識別。
把人臉分成很多小塊,每一個小塊就可近似認為是平面的,這時,可以充分發揮仿射變換的優勢,處理更大區域內的姿態變化,提高整個算法對姿態變化的魯棒性。仿射變換可用下式來表示:
x=Dx0+b,|D|≠0(9)
其中,x,x0,b∈R2;D∈R2×2,x是對x0進行仿射變換后的結果,其可以看做是平移、縮放、旋轉、錯切、反射這5種變換的組合[13]。而典型的變換主要有旋轉變換、縮放變換和平移變換。二維仿射變換的算法如下:
通常情況下,人臉的兩臉頰在有姿態變化時,變化的弧度會更大,這就使人臉邊界容易發生扭曲現象。“三庭五眼”是人的頭部的比例。三庭是指下巴到鼻尖、鼻尖到眼眉、眉毛到發髻線,這三個部分被認為是相等的。五眼則更明顯,如圖3所示。因此,對人臉三庭五眼分塊,再對邊緣輪廓區域進行二次矯正,將存在一定姿態且存在一定程度形變的人臉邊緣映射為標準正面人臉圖像邊緣,使人臉識別更加準確。
針對人臉識別算法對姿態變化局部敏感的問題,提出局部姿態二次矯正算法,通過對人臉進行三庭五眼分塊,并利用二次矯正函數對姿態邊緣輪廓建模,有效提高參數估計精度。中心問題是把人臉圖像進行“三庭五眼”區域劃分,利用矯正模型處理邊緣輪廓的姿態,得出最優變換。該算法利用最小誤差為各局部區域估計較優的初值,有利于小范圍最優,使算法識別性得到提高。圖像變換參數描述圖像間的變換關系,如下式:
其中,參考圖像上的點為(x′,y′),目標圖像上與之對應的點為(xi,yi)。變換矩陣有四對,可以選擇4對匹配點計算得出。假設匹配點都是正確的,則實際的矩陣與計算出的矩陣基本吻合。
3人臉識別算法
SURF(SpeedUp Robust Features)[14]算法,是Bay等人提出的根據特征點周邊范圍的灰度值信息進行統計的一種匹配算法,主要用來計算主方向和特征向量的圖像配準。本文對SURF算法的特征點描述和特征匹配部分加以改進,提出最近鄰匹配算法對最終匹配識別結果進行尋優,減小特征點匹配的等待時間,提高最終識別率。
對于一幅圖像而言,從圖像的左上角到這個點所構成的矩形方框內所有點的灰度值之和等價于這個積分圖像中的任意像素點(x,y)的值。設G表示原始圖像,P∑(x,y)表示積分圖像,則有:
積分圖像加快了圖像卷積運算,降低了時間復雜度,加快了特征矢量的生成。
(1)興趣點檢測
針對平滑處理過后的圖像,在所有尺度空間上計算該像素點在該處的Hessian矩陣,計算完Hessian矩陣行列式的值后,再檢測興趣點。令圖像中某點像素值為(α,β),則下面的Hessian矩陣為δ尺度上的Hessian矩陣:
其中,Hαα(α,β,δ),Hαβ(α,β,δ),Hββ(α,β,δ)都表示在(α,β)處二階偏導與圖像I的卷積。
(2)定位特征點和確定主方向
SURF在不同的尺度下尋找特征點,用抑制方法對圖像進行抽樣,求出極值后,將每一個像素點的Hessian值均分為26個像素點(同層相鄰8個、上下兩層毗鄰9個)進行比對,才能得出候選點。插值運算完以后,僅有幾個特征會最終被檢測出來,得到更精確的尺度和位置。
(3)生成描述子
相對于主方向,對每個子區域的水平和垂直方向的Harr小波響應都進行累加求和,生成一個四維的向量,得到的描述符如下:
其中,D為四維向量,dx為水平方向響應、dy為垂直方向響應,對64維的特征向量進行歸一化處理,得到特征點的描述符。
(4)最近鄰匹配的改進
對于關鍵點的匹配,采用SURF自身的識別進行挑選,選用最近鄰匹配的思想對結果進行尋優;通過測試圖像與模板圖像的特征點匹配對數得出結論。以關鍵點特征向量之間的真實距離為衡量標準,兩個向量之間的距離越小,則認為匹配越成功。公式如下:
假設SA是實時圖像中的點,SB是模板圖像中的點,它們的描述子向量分別為DA、DB,而DAi,DBi分別是它們的第i個分量,則PA和PB之間的歐式距離定義為:
最近鄰歐氏距離與次近鄰歐氏距離作比,若比值在一定的閾值范圍內,則認為匹配正確,否則錯誤。經過不斷地測試表明,[0.5,0.6]范圍內是最優閾值。
Value=d最近鄰d次近鄰=∈[0.5,0.6],正確匹配
對測試圖像與不同模板圖像的關鍵點匹配對數進行有效比較,判別匹配點數最多的為匹配的最終結果。
4實驗結果及其分析
為了驗證本文提出的改進方法的有效性,采用以下幾種方法分別進行處理:直接在原圖像上采用PCA,LDA,LBP方法進行識別;將姿態進行矯正后再利用三種方法進行識別;采用文獻[8]的方法進行識別;本文的改進算法對圖像進行處理后進行識別。在ORL和FERET兩個著名的人臉數據庫上進行實驗。圖4是本文算法對三種姿態圖像處理的結果,從視覺效果上看,有效地抑制了多姿態變化,且對局部人臉姿態矯正有更好的校正效果。
4.1ORL人臉庫
ORL人臉庫[14]包含40個人的400張圖像,每人10幅不同姿態的圖像,圖像大小都為128×128的灰度圖。每個人10幅人臉均有多種姿態和多種表情。并且此圖像存在尺度的變化,排列不整齊。分別在不同的方法上實驗比較。每個人的訓練張數分別為i=(1,2,3,4,5)張;其余的10-i張都作為測試集,取10次的均值。實驗結果如表1。
4.2FERET人臉庫
FERET人臉庫[15]包含1 199個人的14 129幅圖像,有各種表情、姿態、光照等。木文采用姿態子集上1 001張圖像,共143人,每人7張,維度大小80×80,包含不同姿態旋轉和光照變化,分別在不同的方法上實驗比較。每個人的訓練張數分別為i=(1,2,3,4)張;其余的7-i張都作為測試集,取10次的均值。實驗結果如表2。
綜合比較,本文方法在同等訓練樣本情況下識別率都不低于對比的其他方法,而且在單訓練樣本時,提高了識別率。一定程度上說明采用本文方法能夠矯正一定姿態角度條件下的人臉圖像,且對人臉識別特征細節和局部矯正增強大有幫助。
5結論
姿態問題是目前研究還沒有根本解決的問題。本文算法適用于對測試人臉圖像的多姿態變化進行矯正處理,改善了姿態角度的坐標定位及計算方法。在局部畸變的情況下,對邊緣輪廓等區域進行了二次矯正,通過改進SURF的特征匹配算法,更好地增加了特征點匹配的數量,具有良好的姿態矯正功能。選取ORL和FERET人臉庫圖像,結合其他歸一化處理方法,進行姿態矯正,實驗表明本文方法對多姿態人臉矯正有很好效果,顯著提高了識別率。但本文是對一定條件下的多姿態人臉進行處理,而實際中姿態變化是復雜多變的,如何更好地根據圖像的多變姿態情況對圖像進行矯正處理是將來急需解決的課題。
參考文獻
[1] 韓彥斌.基于人臉檢測和特征提取的移動人像采集系統[D].昆明:云南大學,2015.
[2] 王祎灝,宋璟毓.基于SURF特征的人臉識別方法研究[J].微型機與應用,2014,33(7):3134.
[3] 譚曉衡,張建慧.基于LLR算法的多姿態人臉識別[J].計算機應用研究,2011,28(1):392394.
[4] 李全彬,劉錦高,黃智.基于水平鏡像和決策融合的多姿態人臉識別方法[J].計算機應用與軟件,2012,29(12):3335.
[5] 楊姝.基于單視圖的多姿態人臉識別[D].鎮江:江蘇科技大學,2013.
[6] 單桂軍.基于虛擬樣本擴張法的單樣本人臉識別算法研究[J].科學技術與工程,2013,13(14):7479.
[7] 應競舟,傅忠謙,王建宇.基于高斯過程回歸的多姿態人臉識別[J].計算機軟件與應用,2015,32(8):174179.
[8] 李海彥,徐汀榮,張立曉,等. 基于仿射變換的多姿態人臉矯正和識別[J].計算機應用研究,2014,31(4):12151228.
[9] 龔衛國,黃瀟瑩,李偉紅.基于正弦變換的人臉姿態校正及識別研究[J].計算機工程與應用,2010,46(22):213216.
[10] 丁立軍,馮浩,華亮.Clifford 代數3D 人臉姿態矯正方法[J].小型微型計算機系統,2013 ,34(4):906909.
[11] 侯小靜.基于PCA算法和人臉姿態合成的人臉識別[D].長沙:中南大學,2013.
[12] 劉銳.基于人臉圖像稠密匹配的身份識別技術研究[D].合肥:中國科學技術大學,2014.
[13] 孫廣家.計算機圖形學(第三版)[M]. 北京: 清華大學出版社, 1998.
[14] 黨力.自動人臉分析與識別的若干問題研究[D].合肥:中國科學技術大學,2012.
[15] 安高云.復雜條件下人臉識別中若干關鍵問題的研究[D].北京:北京交通大學,2008.