唐曉培,李力爭
(中南大學 信息科學與工程學院,湖南 長沙 410083)
近些年,人臉識別已成為計算機視覺和模式識別領域中的熱門課題,有著廣闊的應用前景。眾所周知,人臉識別是典型的高維數據分類問題,即人臉的原始特征對應高維空間中矩陣數據的圖像,然而在人臉識別中直接應用這些數據會使計算速度明顯降低,不利于現代科學領域對人臉識別速度和精度的要求。現今人臉識別領域中面臨的問題是提取什么樣的特征利于分類器的分類以及如何減少高維數據的運算等。迄今為止,線性子空間方法在特征提取中得到了廣泛的發展,其中主成分分析(PCA)[1]和線性鑒別分析(LDA)[2]方法是人臉識別中廣為采用的基本方法。盡管這些子空間方法在人臉識別中得到了比較成功的應用,但人臉表觀由于受外在和內在因素的影響,如臉部表情、臉部姿態(或照相機視角)、光照以及人臉形狀和皮膚的反射特性等,人臉空間更可能存在于非線性子空間上。
近十年來,核函數技術在模式識別領域中得到了迅猛的發展。SCHFILKOPF等利用核技術將經典的主分量分析(PCA)推廣到核主分量分析(KPCA)[3],實驗結果表明,KPCA不僅能夠抽取非線性特征,而且具有更優的識別結果。
受KPCA的啟發,本文首先采用KPCA方法,將高維圖像投影到低維的子空間中,然后在子空間中進一步采用基于主元空間的線性鑒別分析(LDA)和歐氏距離最近鄰分類(KNN)相結合的方法,有效地利用了人臉的非線性信息,同時兩次投影之后,提高了計算機的識別速率和準確率。
PCA的主要思想是尋找一組單位正交向量基,用其線性組合重構原樣本,使得重構后的樣本和原樣本的均方誤差最小[4]。在實際計算中,通過求取樣本投影之后的協方差矩陣的特征值和特征向量對樣本進行描述,以達到降低特征空間維數的目的,具體如下:
設x是一個n維隨機向量,對于一組數據{xi|i=1,2,…,n},將其表達為矩陣的形式 X=[x1,x2,…,xn],對X的每一列取平均,可以得:


若 St的秩為 m;λ1,λ2,…,λm是矩陣 St的特征值,且將這些特征值從大到小排序有 λ1≥λ2≥…≥λm;{wi|i=1,2,…,m}為其對應的特征向量。則λi與wi滿足

若 選 取 前 r 個 最 大 特 征 值(λ1,λ2,…,λr)以 及 其 對 應 的 特征向量(w1,w2,…,wr)作為投影變換軸,則投影后得到的矢量Y是X的所有r維描述中均方誤差最小的,其中Y定義為:

這樣Y就是X經PCA變換后得到的特征子空間,達到將訓練樣本從高維空間降到低維子空間的目的。
PCA是最基本的無監督線性子空間降維方法,且由上述可知,PCA通過選取最優特征向量基Wr獲得最佳投影子空間。但PCA是線性方法,只能揭示人臉圖像中的線性信息,忽略了數據中的非線性信息。20世紀90年代以來,基于核的非線性特征提取法得到了發展,該方法有效地利用了人臉圖像的非線性信息[5]。本文通過核映射將樣本數據映射到核空間中,然后在核空間中運用PCA法對高維空間中的人臉信息進行非線性操作,進而投影到線性低維子空間中。該方法稱為核主成分分析法,即KPCA。具體方法如下:
現設有訓練集S:X=[x1,x2,…,xN],核映射φ將它們映射到核空間 F中,核空間中的訓練集為 φ(x1),φ(x2),…,φ(xN),令 φ(X)=[φ(x1),φ(x2),…,φ(xN)]。 在核空間中作子空間降維變換[6]:

上式φ(X)中可以通過尋找最佳核矩陣K獲取,方法如下:
(1)選取多項式核函數族:


(2)求取核空間中的樣本均值

則核空間中的樣本期望值為:


(5)對于任一樣本向量x,通過KPCA降維后的數據為:

由此可得降維后的投影子空間樣本集Y=[y1,y2,…,yN]
(3)式(7)中核參數α的確定采用交叉驗證的方法,通過選取不同的參數值,對比實驗結果,確定一組最優實驗數據,所取參數即為最優參數。
現設有訓練集S:X=[x1,x2,…,xN],經過 KPCA降維投影后得到樣本子空間 Y,且 Y=[y1,y2,…,yN],設樣本子空間Y中總的人臉識別數目是C,總的訓練樣本數目是N,第i類的訓練樣本數目是 Ni,第 j類的訓練樣本數目是Nj,則樣本子空間Y的類間散布矩陣有[7]:


有效地利用樣本空間中類間散布矩陣和類內散布矩陣的主元空間,對樣本子空間Y再次降維投影[8],具體做法如下:


(3)由以上兩步可求第二次降維后的投影基矩陣為:

(4)通過KPCA和主元空間LDA方法最終得到的降維空間為Z=ΓTY
本文采用Matlab仿真工具對算法進行仿真,驗證各算法的實現效果。訓練樣本和測試樣本均采用ORL人臉庫,該庫由40人組成,每人由 10幅112×92的圖像組成 。具體算法實現過程如圖1所示。
(1)讀入ORL人臉庫圖像,為了提高運算速度,降低圖像維數,適當調節圖片大小。隨機選取每人的5幅圖像作為訓練樣本,其余的5幅圖像作為測試樣本。即200幅訓練樣本圖像,200幅測試樣本圖像。

圖1 整體算法圖
(2)利用本文1.2節中提出的KPCA方法對樣本數據集進行核映射,首先選擇多項式核函數族。κ(xi,xj)=(<xi,xj>+1)αi,j=1,2,…,N。 其次通過計算求得核矩 陣再次在核空間中進行有效的特征提取變換,得到訓練樣本集在核空間中的投影基W矩陣,最后根據式(14)求得訓練樣本集的首次降維子空間Y。
(3)利用本文2.1節中提到的方法,計算樣本子空間Y的類間散布矩陣和類內散布矩陣。
(4)利用本文2.2節中提到的基于主元空間的LDA方法,對樣本空間集Y特征提取,得到2次降維后的投影基矩陣Γ,即有投影子空間Z。
(5)測試樣本在投影基矩陣Γ上進行降維投影,得到測試樣本特征空間H。在基于主元間LDA方法提取特征值的同時,融入了歐式距離最近鄰分類器(式(15)和式(16))用以增強人臉的分類識別效果。
(6)計算出識別結果。
核參數α的選取及實現結果如表1所示。

表1 核參數α的選取以及實現結果
由表 1可知,本文提出的算法中,式(7)κ(xi,xj)=(<xi,xj>+1)αi,j=1,2,…,N中選取不同參數所得實驗結果表明:α>3時,識別率逐漸降低,識別性能逐漸減弱;α<3時,識別率逐漸提高,識別性能逐漸增強;α=3時,識別率達到最大,識別性能最好。因此本算法中令α=3即有

(1)利用KPCA對訓練樣本圖像首次投影后得到的特征臉如圖2所示。
(2)采用LDA再次降維并用KNN分類,最終得到的識別對比效果圖如3所示。
本文在ORL人臉庫下,應用Matlab分別驗證了基本PCA、主元空 間 LDA、PCA+LDA、KPCA、KPCA+LDA以及KPCA+LDA+KNN等算法的識別率、投影向量個數、訓練時間、測試時間等各項指標,具體結果如表2所示。
由表2可以看出,采用基于KPCA+LDA+KNN算法的人臉識別率和其他各項指標皆明顯高于其余五種方法,這主要是因為采用KPCA可以更好地分析圖像空間中的非線性關系,比起只采用線性PCA和線性LDA方法明顯減少了人臉高維空間中信息的丟失。同時利用基于主元空間LDA的方法,加之KNN最近鄰分類器的使用,有效地降低了投影向量個數,加快了計算速度。



表2 各種算法的性能對比
本文提出的KPCA+LDA+KNN算法中,不但采用了非線性子空間降維方法,同時采用了基于主元空間LDA的方法,加之融入歐氏距離最近鄰分類器的方法,從而改善了人臉識別的效果。本文提出的算法不僅能夠使高度復雜和非線性的原始樣本線性化、簡單化,而且能夠使樣本特征之間的冗余信息明顯降低,防止有用信息的丟失[9]。最后本文在ORL人臉庫下,應用Matlab驗證了該算法的有效性,但是不同核函數的選取以及不同分類器的使用對提高該算法的識別性是否有效,有待于進一步的研究[10]。
[1]BATUR A U,HAYES M H I.Linear subspaces for illumi2 nation robust face recognition[A].Proceedings of the 2001 IEEE Computer Society Conference on Computer Vision and Pattern Recognition[C].2001,02:296-301.
[2]SHAKUNAGA T,SHIGENARI K.Decomposed eigenface for face recognition under various lighting conditions[A].Proceedings of the 2001 IEEE Computer Society Conference on Computer Vision and Pattern Recognition[C].2001,01(1):864-871.
[3]LIU C J,HARRY W.Enhanced fisher linear discriminant models for face recognition.140Inter.ConL on Pattern Recognition.ICPR’98,Queensland,ustralia'V01.II,PP[M].1998:1368-1372.
[4]鐘向陽,胡仕明.基于主分量線性判別方法人臉識別系統的實現[J].嘉應學院學報(自然科學),2006,24(3):832-887.
[5]SEHOLKOPF B,SMOLA A,MULLER K R.Kernel principal component analysis[A].In:W.Gerstner,edi:Proceedings of International Conference on Artificial Neural Networks Lecture Notes in Computer Science[C].Berlin:Springer,1997,1327:583-588.
[6]ROTH V,STEINHAGE V.Nonlinear diseriminant analysis using kernel functions[A].In:Solla S A,Leen T K,Muller K.R,editors.Advance in Neural information Processing Systems 12[C].Cambridge,MA,USA:MIT Press,2000:568-574.
[7]CHEN L,IIAO H,KOM,et a1.Anew LDA-based face recognition system which can solve the small sample size problem[J].Pattern Recognition,2000,(33):1713-1726.
[8]YANG Jian,FRANGI A F,YANG Jing Yu,et a1.KPCA Plus LDA:acomplete kernel fisher discriminant framework for feature extraction and recognition[J].IEEE Transactions on Pattern Analysis Machine Intelligence,2005,27(2):230-244.
[9]王婷,楊國勝,薛長松.若干人臉識別算法的比較研究[J].河南大學學報(自然科學版),2007,37(2):192-194.
[10]GUNTURK B K,BATUR A U,ALTUNBASAK Y,et al.Eigenface-based super-resolution for face recognition[A].Proceedings.International Conference on Image Processing[C].2002,(2):845-848.