楊 凡, 余水映, 周祥明
(浙江師范大學 數理與信息工程學院,浙江 金華 321004)
人臉角度、光照和面部表情中任一因素的變化都會對人臉識別系統的識別率產生較大的影響.大多數人臉識別系統只有在特定環境下才會取得令人滿意的結果,對沒有任何約束條件下的人臉進行識別是一項極具挑戰性的工作.
基于多角度的人臉識別方法大致可以分為2類:基于2D的方法和基于3D的方法.筆者曾提出過一種基于RP-LDA的人臉識別方法[1],它對不同光照條件下的人臉具有較好的識別率.1994年,文獻[2]提出了基于多角度特征空間的識別方法,通過計算輸入圖像到多個特征空間的距離,然后根據距離選取某一角度的特征空間,這樣輸入的人臉圖像就可以用該特征空間的向量合成;文獻[3]提出了多角度的AAM算法,其基本思想是通過一些特征點描述一個人臉的形狀并得到該形狀內的紋理信息,且已證明該方法是可行的,也驗證了在人臉發生旋轉時能夠對其進行很好的跟蹤;文獻[4]提出了一種基于靜態分析的仿射變換算法,并在FERET人臉庫上進行了測試,雖然該方法與那些沒有進行姿態矯正的算法相比在識別率上有所提高,但總體的識別率還是較低,特別當人臉的旋轉角度超過30°時,識別率只有50%左右.受文獻[3]基于多角度的人臉跟蹤算法的啟發,本文提出了一種多角度的人臉識別方法,它可以把任意角度的人臉轉化為正面人臉.實驗表明:該方法在人臉旋轉角度較大時,與PCA等方法相比具有較高的識別率.
1998年,Cootes[5]提出了AAM算法,它是在對訓練數據進行統計分析的基礎上建立模型,然后利用先驗模型對圖像中的目標物體進行匹配運算.AAM不僅利用形狀信息,而且對重要的臉部紋理信息也進行了統計分析,并試圖找出形狀與紋理之間的聯系.
AAM一般分為2個部分:模型建立和對應的擬合計算.
AAM是對象的動態表觀模型,表觀是形狀和紋理的組合,表觀模型是在形狀模型的基礎上結合對象的紋理而建立的.AAM模型實例就是將AAM的紋理通過仿射變換的形式映射到對應的形狀實例中去,得到描述當前對象的模型.所以,實現AAM表觀建模首先要實現形狀和紋理建模.
實現形狀建模,首先對訓練圖像手工標記V個特征點,并讓這些點的位置集合構成形狀S(S=(x1,y1;x2,y2;…;xV,yV));其次對所有訓練圖像對應的形狀進行歸一化處理,歸一化是指以某個形狀為基準,對其他形狀進行旋轉、縮放和平移,使得其盡可能地與基準形狀的整體位置相接近;最后用主成分分析法(PCA)對形狀歸一化后的數據進行處理,得到平均形狀S0和按特征值大小排序后的前n個形狀特征向量Si.因而,AAM中形狀S可以用線性方程表達,即
(1)
所以,在給定任意一組形狀參數bs后就能得到一個S.這就是AAM的形狀模型實例.當根據人臉圖像的形狀進行訓練得到平均形狀S0和形狀特征向量Si后,就完成了對形狀的建模.
當完成形狀建模后,得到了對應的AAM的形狀特征向量Si和平均形狀S0.先將S0和訓練集中的人臉形狀分別Delaunay三角化,然后通過分段線形仿射的方法將訓練人臉形狀中的紋理映射到S0中,實現對紋理歸一化采樣,再對歸一化后的紋理信息進行PCA處理,得到平均紋理A0和按特征值大小排序后的前m個紋理特征向量Ai.紋理與AAM的形狀非常相似,也可以用線性表達式表示

(2)
因此,在任意設置一組紋理參數bg后,通過式(2)就能得到一個紋理模型實例.
表觀模型則是進一步將式(1)定義的形狀模型和式(2)定義的紋理模型融合起來,即將bs和bg串連起來得到表觀向量
(3)
式(3)中對角陣ws用來調整bs和bg之間綱量的不同.對得到的b進行PCA處理,進一步消除形狀和紋理之間的相關性,從而得到表觀模型
(4)
基于上述建立好的AAM表觀模型,輸入一幅新的人臉圖像In,AAM對其進行特征配準的基本思路就是對一個表觀模型系數c的最優化過程,以最終達到模型紋理與輸入紋理的最佳匹配.具體的是要最優化下式的目標函數:
Δ=|δg|2=|gs-gm|2.
(5)
式(5)中:gm通過式(2)計算得到;gs則是輸入圖像根據當前形狀S形變到平均形狀得到的紋理.
盡管上述優化過程比較清晰明了,但通常來說表觀模型參數可能有數十個之多,因此,一般優化算法的速度不夠快.Cootes等進一步提出了一種基于紋理預測參數變化的啟發式參數搜索策略[5],這種策略利用了輸入模型紋理差別δg,模型參數變化δc及相似變換參數變化δ?之間存在的一定程度的線性關系.因此,可以通過線性回歸進行參數預測,即
δc=Rcδg;
(6)
δ?=R?δb.
(7)
其中線性回歸變換矩陣Rc和R?可以在訓練階段通過人為加擾的方法得到.
AAM搜索流程如下:
1)初始化t=0,模型參數初始化為c=0;
2)計算模型紋理和當前紋理之差δg=gs-gm;
3)利用線性回歸模型預測參數變化δc=Rcδg;
4)嘗試新的模型參數c′t=ct-kδc,k=1;
5)重新計算誤差函數δ′g;
6)比較‖δg‖,‖δ′g‖的大小;
7)如果‖δ′g‖<‖δg‖,則接受c′t作為新的參數,否則就轉4),嘗試k=1.5,0.5,0.25等;
8)t=t+1,如果|‖δ′g‖-‖δg‖|<ξ或者迭代次數t超過預定次數,則退出,否則轉2).
根據Cootes等在文獻[3]中提出的方法,首先,假設模型表觀參數可以由人臉旋轉的角度線性表示
c=c0+cxcosθ+cysinθ.
(8)
式(8)中的向量c0,cx和cy是從訓練樣本中估計得到的.這里只考慮人臉在x軸方向的旋轉(在y方向的角度變化也可以用相似的方法得到).
當得到一幅新人臉圖像的模型表觀參數c后,由式(8)可得

(9)
根據式(9)就可以估計人臉旋轉的角度.
假設(cx,cy)的逆可以由R-1c表示,則式(9)可以變為
(10)

本文分別建立±45°,±25°和0°共5個AAM.當有一幅人臉圖像輸入的時候,首先用這5個模型進行擬合;然后取gm和gs之間誤差最小所對應的表觀參數,進而根據式(10)估計人臉旋轉的角度;最后定義cres為剩余向量,它不能被多角度模型所表示,可以根據下式計算得到:
cres=c-(c0+cxcosθ+cysinθ).
(11)
根據下式,就能夠重構任意角度α的人臉所對應的表觀參數:
c(α)=c0+cxcosα+cysinα+cres.
(12)
因為本文只需要合成正面的人臉,所以取α=0°即可,則式(12)可以變為
c(0)=c0+cx+cres.
(13)
根據式(4)就可以得到0°時所對應的紋理參數bg和形狀參數bs,從而根據紋理參數bg合成正面的人臉.圖1所示分別為一個人的側面人臉、由側面人臉經過以上算法合成的正面人臉、正面人臉以及正面人臉影射到平均形狀的人臉.從圖1可以看出,合成的正面人臉與正面人臉差別并不大.

圖1 側面人臉、合成的正面人臉、正面人臉以及正面人臉影射到平均形狀的人臉
假設一共有M幅人臉圖像,每幅人臉圖像的大小是N×N.基于AAM-LDA算法的人臉識別可根據以下步驟來實現:
1)根據第1部分提到的算法訓練得到5個不同角度的AAM模型,以及對應的紋理參數和表觀參數.
2)用訓練圖像的表觀參數估計得c0,cx和cy.
3)把訓練圖像的紋理系數當作降維處理后的人臉圖像yi,并用來計算平均人臉
(14)

(15)

(16)


6)把降維后的人臉圖像yi投影到W上,即
fi=WTyi.
(17)
訓練集中的每一個人臉經過上面的變換后,可以由投影系數fi來表示.在進行人臉識別時,輸入的人臉也須經過AAM和多角度模型處理,首先得到合成正面人臉所需要的紋理參數,然后通過LDA變換得到系數f,最后用最鄰近準則來判別待測試的人臉圖像與它最近的樣本圖像是否屬于同一類.
本文用自己拍攝的人臉圖像進行實驗,在光照條件變化較小的情況下,對20個人進行拍攝,每人60幅,共1 200張圖像,正面、左側面和右側面的人臉圖像分別為400幅.同時,對300幅(每人每個方向各5幅)人臉圖像進行特征點標記,每幅人臉圖像中有46個特征點(如圖2所示).然后用特征點標記好的300幅人臉圖像訓練得到5個不同角度的AAM模型,并根據訓練得到的表觀參數估計c0,cx和cy.最后用剩余的900幅不同角度的人臉圖像進行測試,分別記錄用AAM-LDA算法和用PCA算法的識別率.
從圖3可以看出,當人臉旋轉角度為0°(也就是正面人臉圖像)時,AAM-LDA與原始的PCA算法的識別率都能達到90%左右,但還是AAM-LDA的識別率稍好一些.當人臉旋轉角度為±25°時,AAM-LDA算法的識別率明顯比PCA的高.這是由于通過AAM和多角度模型能夠獲得合成正面人臉所需要的紋理系數,然后用該紋理系數通過LDA獲取最佳分類特征.

圖2 進行特征點標記圖像

圖3 AAM-LDA和PCA的識別率
本文提出了一種較魯棒的多角度人臉識別算法.從實驗結果可知,當人臉旋轉角度較大時,用AAM-LDA算法進行識別,識別率與PCA相比具有較大的優勢.
[1]Yang Fan,Zhou Xiangming,Duanmu C J.Face Recognition Method Based on RP and LDA[J].Journal of Information and Computational Science,2008,7(11):885-894.
[2]Pentland A V,Moghaddam B,Starner T.View-based and Modular Eigenspace for face recognition[C]//Proc of IEEE Conference on CVPR ’94.Seattle:PAMI TC,1994:84-91.
[3]Cootes T F,Walker K,Taylor C J.View-based Active Appearance Models[M]//IEEE Proc of the 4th IEEE International Conference on AFGR 2000.Los Alamitos:IEEE Computer Society Press,2000:227-232.
[4]Chai Xiujian,Shan Shiguang,Gao Wen.Pose normalization for robust face recognition based on statistical affine transformation[C]//Information,Communication and Signal Processing,and the 4th Pacific Rim Conference on Multimedia.Singapore:PCM,2003:1413-1417.
[5]Cootes T F,Edwards G J,Taylor C J.Active Appearance Models[M]//Burkhard H,Neumann B.Proc of the 5th European Conference on Computer Vision.Heidelberg:Springer,1998:484-498.