劉明珠,武 琪,李 昌
(哈爾濱理工大學(xué) 測控技術(shù)與通信工程重點(diǎn)實(shí)驗(yàn)室,黑龍江 哈爾濱 150080)
?
基于2DDPCA的人臉識別算法
劉明珠,武琪,李昌
(哈爾濱理工大學(xué)測控技術(shù)與通信工程重點(diǎn)實(shí)驗(yàn)室,黑龍江哈爾濱150080)
摘要:主成分分析法(PCA)是人臉識別傳統(tǒng)方法之一,是模式識別中一種普遍的線性組合算法。傳統(tǒng)PCA算法因光照等外界因素和計(jì)算量較大等問題導(dǎo)致識別率較低。為了抑制這些缺點(diǎn),主要研究基于PCA人臉識別算法改進(jìn)的二維主成分分析法(2DPCA)和在2DPCA算法的基礎(chǔ)上進(jìn)行第二次特征提取的2DDPCA算法,并對PCA,2DPCA,2DDPCA這3種人臉識別算法在ORL和Yale人臉數(shù)據(jù)庫上進(jìn)行實(shí)驗(yàn)。實(shí)驗(yàn)主要從兩方面進(jìn)行分析,特征向量的維數(shù)、訓(xùn)練樣本數(shù)與識別率的關(guān)系以及3種方法分別在數(shù)據(jù)庫的時間對比。實(shí)驗(yàn)結(jié)果表明,提出的2DDPCA算法在不明顯降低識別率的基礎(chǔ)上,能有效提高識別速率,重建性能好。
關(guān)鍵詞:人臉識別;主成份;特征提取
隨著科技的進(jìn)步和社會的發(fā)展,作為人內(nèi)在屬性的生物特征如語音、指紋、虹膜、人臉等方面有了廣闊的應(yīng)用前景,已成為當(dāng)前的研究熱點(diǎn)。其中基于人臉的識別受到了廣泛的關(guān)注和普遍的應(yīng)用,主要是因?yàn)槠浒踩?、友善、便利的這些優(yōu)點(diǎn)能輕易被人所采納。傳統(tǒng)的PCA(Principle Component Analysis)[1]人臉識別算法,來源于通信理論中K-L[2]變換,宗旨是在低維空間中表示原高維數(shù)據(jù)[3],但是識別率并不高[4]。首先,因其受到光照、尺寸、表情、背景、角度等外界不可控制因素的影響;其次,PCA算法構(gòu)造協(xié)方差必須將原始圖像轉(zhuǎn)換成一維行或者列向量。而2DPCA(Two Dimension PCA)[5]算法首先對圖像矩陣進(jìn)行線性變換的預(yù)處理,再直接采用原始圖像矩陣構(gòu)造協(xié)方差,相比之下2DPCA算法在提取特征上更為顯而易見,運(yùn)算量相對較小,速度較快。但是其提取的特征向量空間維數(shù)相對較大,占用內(nèi)存較多,識別率還有待提高[6]。因此本文提出了一種改進(jìn)的2DPCA算法,即2DDPCA(Two Dimension Double PCA)算法,該算法的主要特點(diǎn)是基于2DPCA算法第二次特征提取,使得最后提取得到的特征向量空間維數(shù)比2DPCA算法進(jìn)一步減小,壓縮率更高,并且識別率更好。
12DPCA算法原理
人臉識別的關(guān)鍵在于提取特征空間,一般可分為以下3個步驟。首先將人臉數(shù)據(jù)庫的部分樣本用來訓(xùn)練,計(jì)算得出相應(yīng)的投影空間。然后將訓(xùn)練樣本直接投影在這個投影空間上,計(jì)算其特征矩陣即主成分量。最后將需要識別的圖像投影在這個投影空間上,計(jì)算出主成分量,將其與訓(xùn)練樣本的主成分量一一對比,識別人臉。
PCA算法在運(yùn)算時,需要把二維圖像相應(yīng)的首尾相連轉(zhuǎn)變成一維行或者列向量。然而當(dāng)二維圖像矩陣維數(shù)較大時,計(jì)算量也會變得相當(dāng)繁重。為了解決PCA算法的不足之處,Yang Jian、David Zhang于2004年提出直接基于原始圖像矩陣的算法,即2DPCA算法。該算法的優(yōu)點(diǎn)是對原始圖像矩陣進(jìn)行計(jì)算,不必轉(zhuǎn)變,這樣使運(yùn)算量得到相應(yīng)的簡化,這是人臉識別又一意義非凡的里程碑。
2DPCA算法的思想:設(shè)X∈R1×n,訓(xùn)練樣本原始圖像A大小為m×n,先把A經(jīng)過線性變換的預(yù)處理過程以減小外界因素的影響,然后再根據(jù)Y=AX投影在X上,就可以計(jì)算出Y,Y∈R1×m。Y稱為圖像A的投影特征向量。怎樣確定合適投影方向,找到最佳投影軸,需要借助Y的協(xié)方差矩陣Sx跡tr(Sx)的最大值,如下[7]
J(X)=tr Sx
(1)
接下來求J(X)的最大值
Sx=E(Y-E(Y))(Y-E(Y)T=
E[AX-E(AX)][AX-E(AX)]T
(2)
tr(Sx)=XT[E(A-E(A))T(A-E(A))]X
(3)
設(shè)G為樣本A的協(xié)方差
G=E[(A-E(A))T(A-E(A))]
(4)
可求得G是一個非負(fù)n×n維的矩陣。假設(shè)訓(xùn)練樣本總數(shù)是M,Ai(i=1,2,…,M)表示第i個人,G計(jì)算則如式(5)所示
(5)
(6)
由此可得
J(X)=XTGX
(7)
式(7)稱為廣義總離散度準(zhǔn)則[8]。當(dāng)J(X)最大,求得G的r個非零的特征值所對應(yīng)的特征向量記為Xopt,稱為最佳投影軸[9]。將A投影在這個Xopt上,就可以得到Y(jié)的最大總離散度。
這里取p≤r構(gòu)建特征空間如下所示
X1,X2,…,Xp=argmaxJ(X),
(8)
這些特征向量既滿足廣義離散度準(zhǔn)則,又相互正交[10]。
把前期訓(xùn)練和需要測試的樣本分別投影在這個X1,X2,…,Xp空間上,可以獲得相應(yīng)的特征矩陣即主成分量。在最后識別階段采用最近鄰分類器,求出上一階段兩種樣本主成分量之間的間距[11],以其最小為依據(jù)確認(rèn)此人屬于本數(shù)據(jù)庫中的哪個人。
22DDPCA算法原理
利用PCA算法提取特征時,為了計(jì)算訓(xùn)練樣本的協(xié)方差矩陣必須將原始圖像矩陣先轉(zhuǎn)變?yōu)橐痪S列向量或者行向量,使得整個過程的運(yùn)算量相當(dāng)大。2DPCA算法在計(jì)算協(xié)方差上面更簡單,針對原始圖像,不必轉(zhuǎn)換,在提取特征上相對直觀。基于2DPCA算法提取的特征向量空間維數(shù)相對較大,占用內(nèi)存較多,識別率還有待提高。本文提出改進(jìn)的2DDPCA算法,首先利用2DPCA算法進(jìn)行第一次特征提取,構(gòu)建成訓(xùn)練樣本集,然后通過2DDPCA算法進(jìn)行第二次特征提取,最后再進(jìn)行人臉識別。這樣不僅有利于提高特征提取的識別率,還有利于壓縮特征向量空間維數(shù),加快識別速度。
2.1第一次提取
計(jì)算圖像均值和協(xié)方差矩陣如式(9)和(10)所示
(9)
(10)
根據(jù)準(zhǔn)則式(7)只保留最大信息量即G1前p個最大特征值
G1Xi=λiXi
(11)
(12)
2.2第二次提取
計(jì)算新的圖像均值和新的協(xié)方差矩陣如式(13)和(14)所示
(13)
(14)
[X1,X2,…,Xp]TAT[Z1,Z2,…,Zh]
(15)
2.3識別階段
為了獲取相應(yīng)的特征矩陣Ut和主成分量Ut(1),Ut(2),…,Ut(h),將需要檢測的圖像ω在Z=(Z1,Z2,…,Zh)上進(jìn)行投影,Ut表示為
Ut=[Ut(1),Ut(2),…,Ut(h)]=[X1,X2,…,
Xp]TωT[Z1,Z2,…,Zh]
(16)
本文利用最近鄰分類器,它是根據(jù)最小距離來確定人臉圖像到底是屬于哪個類別,將需要識別的圖像特征矩陣和所有訓(xùn)練樣本的特征矩陣一一對比,當(dāng)其之間距離最小則可以確定。距離度量準(zhǔn)則[13]如式(17)所示
(17)
樣本A通過2DDPCA算法提取得到的特征矩陣U是p×h維的,而通過2DPCA算法提取的特征矩陣Y是m×p維的,其中h≤m,因此有效地起到壓縮特征矩陣維數(shù)的目的,減少了維數(shù),有利于提高分類識別速率。
3實(shí)驗(yàn)結(jié)果
本文借助ORL庫和Yale庫來完成以下實(shí)驗(yàn)。ORL庫40人,400張人臉圖像,Yale庫15人,165張圖像。ORL庫人臉圖像傾斜變化和旋轉(zhuǎn)變化20%左右,光照和表情變化輕微,部分人臉圖像如圖1所示。Yale庫這些圖像優(yōu)點(diǎn)在于對比差異特別明顯,包括左光源和右光源的不同對比、是否戴眼鏡的對比和大幅度表情變化的對比。
根據(jù)上文的分析,這里只保留h(h≤10)個特征值及其特征向量。取圖1第一張人臉圖像作為實(shí)驗(yàn)樣本,可以得到h不同取值時的各重建子圖。h=1,3,5,8,10時的各重建子圖像如圖2所示。
通過圖2可以看到,第一幅子圖涵蓋的原始圖像信息量是最多的,而其他子圖相比第一幅明顯要少很多。經(jīng)驗(yàn)證,隨著特征值h的不斷增加,則提供的信息量已不能明顯改善識別率。通過圖3對比特征值和圖像信息量,可以知道,特征值h取值越大,原始圖像的信息量越小。當(dāng)h<5時,人臉信息有一定的保留,但當(dāng)h≥5時,可提供的信息量趨于0,幾乎無法重建人臉圖像。因此,在本文的新算法中,選取的h不大于5。
重建公式
(18)
(19)
根據(jù)重建公式將多個子圖相加就可以獲得一個無限接近原始圖像的重建圖像,如圖4所示。圖4上邊A′是基于2DDPCA算法根據(jù)式(19),下邊A″是基于2DPCA算法根據(jù)式(18)。通過對比可知,2DDPCA算法當(dāng)h=5時,重建的圖像看起來很清楚,與原圖像很接近。而2DPCA當(dāng)p=10時,圖像還沒有重建好,需要更多的特征值進(jìn)行重建。
圖5和圖6分別是在ORL、Yale人臉數(shù)據(jù)庫上實(shí)驗(yàn)得到的特征空間維數(shù)(自變量)和識別率(因變量)的關(guān)系圖。在圖5中,當(dāng)自變量取10時,2DDPCA的因變量高于PCA約10.5%,高于2DPCA約8%;當(dāng)自變量取30時,2DDPCA的因變量高于PCA約8.5%,高于2DPCA約3.5%;當(dāng)自變量取55時,2DDPCA的因變量高于PCA算法約5.5%,高于2DPCA約1.8%。2DDPCA算法的識別率在自變量較低時比PCA、2DPCA算法要高很多一部分,隨著自變量的不斷增加,雖然與其他兩種算法識別率之間的差距在縮小,但仍然是三者中最好的。后面的實(shí)驗(yàn)將特征向量維數(shù)取為55維,主要是因?yàn)椴皇亲宰兞吭礁?,因變量越好,隨著自變量達(dá)到55左右時,三者的因變量也達(dá)到峰值,當(dāng)自變量越來越高,反而會降低因變量。
當(dāng)自變量取10時,PCA、2DPCA、2DDPCA三種方法在圖6上的識別率分別為76.3%、80.2%、86.7%,相應(yīng)的取值條件下圖5中3種方法的因變量分別為79.5%、82%、90%;隨著自變量增加到55時,圖6中3種方法的因變量為86%、90.5%、92%,圖5相應(yīng)的因變量為87.5%、91.2%、93%。圖6各方法識別率相對低于圖5,主要是因?yàn)閳D6用于實(shí)驗(yàn)的Yale數(shù)據(jù)庫圖像光照表情變化較大,對識別率造成了影響。在外界環(huán)境變化較大的這種情況下,2DDPCA算法識別率仍然優(yōu)于PCA、2DPCA算法,可見2DDPCA算法具有很好的魯棒性。
為了測試訓(xùn)練樣本數(shù)目對識別率的影響,分別在ORL、Yale庫上進(jìn)行實(shí)驗(yàn),得到相應(yīng)的關(guān)系圖如圖7、圖8。實(shí)驗(yàn)中,將特征向量維數(shù)值取為55,再將訓(xùn)練樣本數(shù)從1取值到5,記錄3種算法識別率的變化情況。由圖7和圖8所示的實(shí)驗(yàn)結(jié)果,可以發(fā)現(xiàn)不論是變化輕微的ORL數(shù)據(jù)庫還是變化明顯的Yale數(shù)據(jù)庫都隨著樣本數(shù)目的增加,PCA、2DPCA、2DDPCA算法的識別率不斷提升,但當(dāng)樣本數(shù)增加到3個以后,識別率將不明顯上升,可見樣本數(shù)不是越多越好,在2DDPCA算法中,樣本數(shù)選4~5個即可滿足要求。
ORL和Yale庫的3種識別算法的識別時間如表1所示。表1的各種算法所需的識別時間都明顯大于表2,主要是Yale數(shù)據(jù)庫訓(xùn)練樣本人數(shù)相對ORL數(shù)據(jù)庫較少。在進(jìn)行訓(xùn)練前期準(zhǔn)備工作時,樣本數(shù)取1,3,5,ORL庫用于訓(xùn)練的總?cè)藬?shù)分別為40,120,200,而Yale庫則分別為15,45,75。由表1、表2可知,在識別速度上來看2DDPCA算法明顯比PCA、2DPCA算法要好的多。主要原因是PCA算法的識別率,因其識別率相對較低,必須對比多次才能正確識別,易浪費(fèi)時間。而2DPCA算法需要增加相應(yīng)的識別時間,是因?yàn)閄=(X1,X2,…,Xp)的維數(shù)大于Z=(Z1,Z2,…,Zh)。
表1ORL3種識別算法的識別時間 ms
表2Yale3種識別算法的識別時間 ms
4結(jié)語
文中的2DDPCA算法是一種提取兩次特征矩陣的新算法,該算法不但可以達(dá)到對圖像進(jìn)一步降維,減小識別時間的目的,還可以獲得接近于2DPCA算法的識別率。綜合考慮計(jì)算量、待處理數(shù)據(jù)量以及識別率等因素,本文提出的2DDPCA算法在計(jì)算量和識別時間上明顯優(yōu)于其他兩種方法。
參考文獻(xiàn):
[1]馮亞麗,蔣文文.一種改進(jìn)的基于膚色分割和PCA人臉檢測方法[J].科學(xué)技術(shù)與工程,2010,10(10):2343-2347.
[2]張道華.基于PCA算法的人臉識別技術(shù)研究[J].吉林廣播電視大學(xué)學(xué)報(bào),2013,140(8):68-69.
[3]王志良.人臉工程學(xué)[M].北京:機(jī)械工業(yè)出版社,2010.
[4]李榮健,韓其龍,楊鑫華.改進(jìn)的PCA人臉識別新算法[J].大連交通大學(xué)學(xué)報(bào),2008,29(4):48-51.
[5]羅嬋娟.快速二維PCA方法在人臉識別中的應(yīng)用研究[D].無錫:江南大學(xué),2003.
[6]王玉德,張學(xué)志,封玲娟.基于支持向量機(jī)的人臉識別算法研究[J].科學(xué)技術(shù)與工程,2011,11(34):8624-8627.
[7]齊興敏,劉冠梅.基于PCA算法的人臉識別技術(shù)研究[J].現(xiàn)代電子技術(shù),2007,29(6):77-79.
[8]黃泉龍.基于PCA的人臉識別研究[D].西安:西安電子科技大學(xué),2012.
[9]YANG J,DAVID Z.Two-dimensional PCA:a new approach to appearance-based face representation and Recognition[J].IEEE PAMI,2004,26(1):131-137.
[10]劉鳳娟,方麗英.通用學(xué)習(xí)框架結(jié)合2DPCA的魯棒人臉識別[J].電視技術(shù),2014,38(11):177-182.
[11]XIE X D,KIN M L.Gabor-based kernel PCA with doubly nonlinear mapping for face recognition with a single faceimage[J].IEEE transactions on image processing,2006,15(9):2481-2492.
[12]尹飛,馮大政.基于PCA算法的人臉識別[J].計(jì)算機(jī)技術(shù)與發(fā)展,2008,18(10):31-33.
[13]劉彥隆,趙福梅,郭建軍.人臉識別算法在嵌入式系統(tǒng)中的研究與實(shí)現(xiàn)[J].電視技術(shù),2014,38(9):212-213.
劉明珠(1973— ),女,副教授,碩士研究生導(dǎo)師,主要研究領(lǐng)域?yàn)橥ㄐ判盘柼幚恚?/p>
武琪(1991— ),女,碩士研究生,主要研究領(lǐng)域?yàn)橥ㄐ排c信息系統(tǒng);
李昌(1992— ),碩士研究生,主要研究領(lǐng)域?yàn)殡娮有畔⒐こ獭?/p>
責(zé)任編輯:閆雯雯
Comparative study on face recognition based on 2DDPCA
LIU Mingzhu,WU Qi,LI Chang
(HarbinUniversityofScienceandTechnology,Harbin150080,China)
Key words:face recognition; principle component; feature extraction
Abstract:The algorithm of principle component analysis (PCA) is one of the traditional methods for face recognition, which is a commonly used method of linear combinations in pattern recognition. Traditional PCA method can cause a lower recognition rate mainly due to a large amount of calculation and some external factors such as light issues. In order to suppress these disadvantages, an improved two dimension principal component analysis (2DPCA) which based on the traditional PCA face recognition algorithm has been introduced in the paper, and then second feature extraction method has been used in the 2DPCA algorithm, which has been called 2DDPCA algorithm. To test the performances of the three face recognition methods such as the PCA, 2DPCA and 2DDPCA, a large number of experiments had been done with ORL and Yale face database. These experiments focus on two main aspects, one is the effect on recognition rate by the dimensions of feature space and the number of training samples, the other one is comparing the recognition time which is spend by three ways on database. By comparison, the theoretical principle of the improved algorithm is corrected and its performances are reliably. The experimental results show that the 2DDPCA algorithm is proposed in this paper when the recognition rate not changed significantly, can effectively improve the recognition rate and better reconstruction performance.
中圖分類號:TP391.4
文獻(xiàn)標(biāo)志碼:A
DOI:10.16280/j.videoe.2016.01.024
作者簡介:
收稿日期:2015-06-08
文獻(xiàn)引用格式:劉明珠,武琪,李昌.基于2DDPCA的人臉識別算法[J].電視技術(shù),2016,40(1):122-126.
LIU M Z,WU Q,LI C.Comparative study on face recognition based on 2DDPCA [J].Video engineering,2016,40(1):122-126.