嚴(yán)春滿,張昱瑤,張 迪
(西北師范大學(xué)物理與電子工程學(xué)院,甘肅 蘭州 730070)
人臉檢測(cè)與識(shí)別是圖像處理領(lǐng)域的熱門研究課題,也是具有挑戰(zhàn)性的計(jì)算機(jī)視覺問題。人臉作為一種生物特征,能夠直觀地反映個(gè)體之間的差異,是進(jìn)行個(gè)人身份識(shí)別的載體。人臉識(shí)別率容易受到表情、光照變化和年齡等因素[1 - 3]的影響。早在20世紀(jì)50年代,學(xué)者們就開始關(guān)注人臉識(shí)別相關(guān)內(nèi)容的研究。到了60年代,研究人員主要通過分析面部特征點(diǎn)(如眼睛、鼻子和嘴巴)之間的距離和拓?fù)潢P(guān)系實(shí)現(xiàn)人臉識(shí)別[4,5]。這種方法簡(jiǎn)單直觀,但識(shí)別精度易受影響。1991年,特征臉Eigenfaces[6]算法將人臉圖像投影到低維特征空間,在識(shí)別效果上得到有效提升,這一創(chuàng)新思路為后續(xù)的研究奠定了基礎(chǔ)。Belhumeur等[7]提出基于線性判別分析的Fisherface算法,能夠在低維子空間中產(chǎn)生良好的分離效果。2009年,Wright等[8]將稀疏表示應(yīng)用到人臉識(shí)別領(lǐng)域并提出了基于稀疏表示分類的人臉識(shí)別SRC(Sparse Representation based Classification)算法,在含噪聲污染及光照變化等復(fù)雜環(huán)境下的人臉識(shí)別問題上取得了較好的識(shí)別率。該算法利用所有樣本來構(gòu)成字典,測(cè)試樣本依據(jù)最小殘差分類。與傳統(tǒng)的識(shí)別方法相比,SRC無需提取精確的臉部特征,但該算法的字典生成需要用到所有的訓(xùn)練樣本,當(dāng)訓(xùn)練樣本數(shù)量多且圖像的維數(shù)較大時(shí),字典維數(shù)相應(yīng)增加,導(dǎo)致稀疏分解部分耗時(shí)較長(zhǎng)。為了解決這一實(shí)際問題,又提出了一系列改進(jìn)SRC的算法。擴(kuò)展稀疏表示分類ESRC(Extended Sparse Representation-based Classifier)算法在SRC的基礎(chǔ)上構(gòu)造了一個(gè)類內(nèi)差異字典,可以與其它類別共享類內(nèi)差異[9]。Deng等[10]提出了一種基于疊加模型的稀疏表示分類SSRC(Superposed Sparse Representation-based Classifier)算法,該算法從每一類的訓(xùn)練樣本中提取共性特征和相對(duì)特征構(gòu)造字典?;贕abor特征稀疏表示算法GSRC(Gabor-feature based SRC)改善了人臉遮擋情況下的計(jì)算復(fù)雜度[11]。以上算法在人臉識(shí)別問題中取得了較好的識(shí)別效果,但當(dāng)訓(xùn)練樣本過多時(shí)會(huì)增加算法的復(fù)雜度,占用更多的存儲(chǔ)空間。所以,通過字典學(xué)習(xí)來解決人臉識(shí)別問題受到越來越多研究者的關(guān)注。
目前,字典學(xué)習(xí)算法主要分為2大類:無監(jiān)督式字典學(xué)習(xí)和監(jiān)督式字典學(xué)習(xí)。在無監(jiān)督式字典學(xué)習(xí)算法中,Engan等[12]提出了最優(yōu)方向方法MOD(Method of Optimal Direction),該方法旨在選擇一個(gè)誤差減小最快的最優(yōu)方向,是最早提出的經(jīng)典字典學(xué)習(xí)方法之一。Aharon等[13]提出了KSVD算法,該算法在最優(yōu)方向方法的基礎(chǔ)上對(duì)字典更新階段進(jìn)行了優(yōu)化。Mairal等[14]提出了Online字典學(xué)習(xí)算法,獲得了更高的運(yùn)行速度。與無監(jiān)督式字典學(xué)習(xí)算法不同,監(jiān)督式字典學(xué)習(xí)算法在訓(xùn)練階段用到了樣本的類別標(biāo)簽信息。 Yang等[15]提出了一種基于 Fisher 判別準(zhǔn)則的字典學(xué)習(xí)FDDL(Fisher Discrimination Dictionary Learning)算法,該算法將 Fisher 判別準(zhǔn)則融入到字典學(xué)習(xí)過程中,學(xué)習(xí)字典原子與類標(biāo)簽對(duì)應(yīng)的結(jié)構(gòu)化字典,利用稀疏編碼后的重建誤差進(jìn)行分類。Zhang等[16]提出了判別KSVD字典學(xué)習(xí)算法D-KSVD(Discriminative KSVD),該算法將分類誤差引入到目標(biāo)函數(shù)中來擴(kuò)展K-SVD算法。Jiang等[17,18]在D-KSVD算法的基礎(chǔ)上進(jìn)一步提出了標(biāo)簽一致KSVD字典學(xué)習(xí)算法LC-KSVD(Label Consistent K-SVD),在判別性字典學(xué)習(xí)算法的基礎(chǔ)上新增了稀疏碼誤差來提高字典的判別能力,但是該算法只考慮了字典原子的類標(biāo)特征,而忽略了它們之間的相似性特征,對(duì)提高字典的判別性能有限。
本文提出一種基于改進(jìn)標(biāo)簽一致KSVD字典學(xué)習(xí)的算法并應(yīng)用于人臉識(shí)別,在有光照變化的Extend Yale B人臉庫、表情變化以及遮擋影響的AR人臉庫上的實(shí)驗(yàn)結(jié)果表明,本文算法相比于對(duì)比算法有較高的識(shí)別率,同時(shí)對(duì)噪聲污染條件下的人臉識(shí)別具有較好的魯棒性。
從數(shù)學(xué)角度看,稀疏表示是針對(duì)不確定方程組Ym×n=Dm×KXK×n求解提出的。當(dāng)m min‖X‖0 s.t.DX=Y (1) 其中‖X‖0是X的L0范數(shù),表示非零元素的個(gè)數(shù)。 在實(shí)際應(yīng)用中,多數(shù)情況下是近似表示的情形,因此把式(1)的求解問題轉(zhuǎn)化為: min‖X‖0 s.t. ‖DX-Y‖2≤ε (2) 其中,ε是與噪聲相關(guān)的參數(shù)。求解min‖X‖0是一個(gè)NP-hard問題,L0范數(shù)最小化問題可以近似等價(jià)于求解L1范數(shù)的最小化問題,式(2)可以轉(zhuǎn)化為如下形式: min‖X‖1 s.t. ‖DX-Y‖2≤δ (3) 稀疏分解求解分為貪婪算法和凸優(yōu)化算法。貪婪算法有匹配追蹤MP(Matching Pursuit),正交匹配追蹤OMP(Orthogonal Matching Pursuit)等。凸優(yōu)化算法有基追蹤基追蹤BP(Basis Pursuit),同倫算法等。 KSVD算法在字典更新階段的核心思想是使字典中的每一列字典原子都發(fā)揮自身的價(jià)值以最小化重構(gòu)誤差,學(xué)習(xí)到的字典僅用來求解稀疏表示系數(shù),但在分類過程中缺乏判別能力。為了得到一個(gè)具有判別性的訓(xùn)練字典,文獻(xiàn)[17]提出標(biāo)簽一致KSVD(LC-KSVD)算法,引入了樣本類別標(biāo)簽,加強(qiáng)了字典原子與標(biāo)簽之間的對(duì)應(yīng)關(guān)系。另外,在目標(biāo)函數(shù)中加入了稀疏編碼誤差約束項(xiàng)和分類誤差約束項(xiàng),最終使學(xué)習(xí)到的字典同時(shí)具有表示和判別能力。 2.2.1 LC-KSVD1 令樣本矩陣Y=[y1,…,yi,…,yN],yi表示第i個(gè)樣本,字典D=[d1,…,dk,…,dK],K表示字典原子總數(shù),dk表示字典中的第k列原子。分類器的性能取決于稀疏編碼的判別性,為了得到具有判別性的稀疏編碼,LCKSVD1的目標(biāo)函數(shù)定義如式(4)所示: s.t. ?i,‖xi‖0≤T (4) 2.2.2 LC-KSVD2 為了得到更有利于分類的字典,LC-KSVD2在目標(biāo)函數(shù)中添加了分類誤差項(xiàng),相比較于LC-KSVD1,新引入了線性預(yù)測(cè)分類器f(X;W)=WX,目標(biāo)函數(shù)如式(5)所示: s.t. ?i,‖xi‖0≤T (5) KSVD算法能夠同時(shí)找到所有參數(shù)的最優(yōu)解,式(5)可以被重新寫為: s.t. ?i,‖xi‖0≤T (6) s.t. ?i,‖xi‖0≤T (7) 在字典更新階段,KSVD算法采用奇異值分解SVD(Singular Value Decomposition)的方法隨機(jī)更新字典的某一列原子,式(7)可以寫為: (8) (9) 其中,U是主成分矩陣,Λ是特征值矩陣,將Λ中最大的特征值對(duì)應(yīng)的U中的特征向量作為字典原子dk的更新。 算法1改進(jìn)標(biāo)簽一致KSVD字典學(xué)習(xí)的人臉識(shí)別算法 輸入:訓(xùn)練樣本Y={yi},i=1,…,N,判別矩陣Q,樣本類別標(biāo)簽矩陣H,稀疏閾值T,控制參數(shù)α,β。 輸出:字典D,線性變換矩陣A,分類器參數(shù)W,識(shí)別率。 Step1初始化得到D0,A0,W0,設(shè)定參數(shù)值α,β。根據(jù)KSVD算法分別計(jì)算每一類圖像的初始字典,合并得到D0,求解稀疏表示系數(shù)X0,采用多元脊線回歸模型初始化: Step2根據(jù)改進(jìn)的LC-KSVD字典學(xué)習(xí)過程計(jì)算Ynew和Dnew,然后分離出D=[d1,…,dK],A=[a1,…,aK]和W=[w1,…,wK]: Step4輸入測(cè)試樣本yj; AR人臉庫包含了來自126個(gè)人超過4 000幅的正面人臉圖像,每個(gè)人有26幅圖像,每幅圖像的尺寸為165×120,分別在不同光照變化、表情以及面部遮擋條件下拍攝,遮擋包括墨鏡(眼鏡)遮擋和圍巾遮擋,分2個(gè)時(shí)期采集,每個(gè)時(shí)期13幅,包括7幅具有表情和光照變化圖像,6幅遮擋圖像,AR人臉庫中部分人臉圖像如圖1所示。 Figure 1 Some face samples in the AR database圖1 AR人臉庫中部分人臉圖像 本節(jié)實(shí)驗(yàn)選擇100人的圖像庫(50名男性,50名女性),共計(jì)2 600幅圖像進(jìn)行實(shí)驗(yàn),將每幅圖像的大小標(biāo)準(zhǔn)化為55×40。進(jìn)行以下3組實(shí)驗(yàn)(重復(fù)5次,取平均值作為最終的識(shí)別率): (1)關(guān)鍵參數(shù)選取。式(5)中參數(shù)α和β是2個(gè)相互獨(dú)立的控制參數(shù)。α調(diào)節(jié)目標(biāo)函數(shù)中稀疏編碼誤差項(xiàng)所占比重,β調(diào)節(jié)分類誤差。當(dāng)β=0時(shí),即為2.2.1節(jié)中的LC-KSVD1。顯然,不同的α值和β值對(duì)算法性能有不同的影響,為了探討參數(shù)α和β對(duì)實(shí)驗(yàn)結(jié)果的影響,分別選取不同值進(jìn)行對(duì)比實(shí)驗(yàn),結(jié)果如圖2所示。從圖2中可以看出,α和β分別取4和2時(shí),算法識(shí)別率較好。 Figure 2 Recognition results on AR database with different parameters α and β圖2 AR人臉庫上取不同參數(shù)值α,β時(shí)的識(shí)別結(jié)果 (2)為驗(yàn)證不同的訓(xùn)練樣本數(shù)對(duì)于識(shí)別率的影響,從每類人臉圖像中隨機(jī)抽取p(p=10,13,16,19,22)幅共5組組成訓(xùn)練集,剩余樣本組成測(cè)試集。本文算法對(duì)比經(jīng)典的SRC算法、Fisherface算法、KSVD算法以及識(shí)別率較好的LC-KSVD2算法,表1為5種算法在不同的訓(xùn)練樣本數(shù)下的識(shí)別率。 Table 1 Recognition results on AR dataset with different training samples (3)字典大小的設(shè)置也會(huì)對(duì)識(shí)別率產(chǎn)生影響,當(dāng)字典原子數(shù)較少時(shí),不能充分反映訓(xùn)練樣本的信息,字典原子較多時(shí)也會(huì)消耗時(shí)間和占用資源。第3組實(shí)驗(yàn)隨機(jī)選擇每人22幅圖像組成訓(xùn)練集,剩下樣本組成測(cè)試集,總共訓(xùn)練樣本2 200幅,測(cè)試樣本400幅。分別設(shè)置字典大小為100,200,300,400,實(shí)驗(yàn)結(jié)果如表2所示。 Table 2 Recognition results on AR dataset with different dictionary sizes 從表1和表2的對(duì)比結(jié)果可以看出,KSVD算法在對(duì)比實(shí)驗(yàn)中識(shí)別率最低,因?yàn)镵SVD算法學(xué)習(xí)到的字典在分類中沒有判別能力。當(dāng)訓(xùn)練樣本數(shù)取最小(10)時(shí),LC-KSVD和本文算法識(shí)別率明顯高于其他對(duì)比算法的,隨著訓(xùn)練樣本數(shù)的增加,各算法識(shí)別率呈上升趨勢(shì)。對(duì)于數(shù)量不同的訓(xùn)練集,本文算法都有著較高的識(shí)別率。表2的結(jié)果表明,字典越大,識(shí)別率越高,因?yàn)樽值渲心依ú煌悇e的訓(xùn)練樣本圖像越多,張成的類別子空間越準(zhǔn)確。在固定訓(xùn)練集樣本數(shù)只改變字典大小的實(shí)驗(yàn)中,再一次驗(yàn)證本文算法在字典大小取值一致的情況下識(shí)別率依然高于其他對(duì)比算法的。 根據(jù)本節(jié)實(shí)驗(yàn)2和實(shí)驗(yàn)3結(jié)果可知,本文算法對(duì)含表情、遮擋變化的人臉圖像有較好的識(shí)別率。 Extended Yale B人臉庫包含38人(包括男性人臉和女性人臉),每類64幅人臉樣本圖像,一共2 432幅,分別為不同光照條件下大小為192×168的圖像。Extended Yale B人臉庫中部分人臉圖像如圖3所示。與4.1節(jié)一樣,本節(jié)進(jìn)行3組實(shí)驗(yàn)。 Figure 3 Some face samples in the Extended Yale B database圖3 Extended Yale B人臉庫中部分人臉圖像 (1)同樣進(jìn)行關(guān)鍵參數(shù)的對(duì)比實(shí)驗(yàn),通過分別選取不同的α和β值進(jìn)行對(duì)比,結(jié)果如圖4所示,結(jié)果表明:α取4或5,β取2時(shí),實(shí)驗(yàn)識(shí)別率較高。 Figure 4 Recognition results on Extended Yale B dataset with different parameters α and β圖4 Extended Yale B人臉庫上取不同參數(shù)值α,β時(shí)的識(shí)別結(jié)果 (2)依次從每個(gè)人臉圖像中隨機(jī)抽取p(p=30,40,50,60)幅圖像組成訓(xùn)練集,剩余樣本組成測(cè)試集。表3顯示的是不同算法在Extended Yale B人臉庫上的識(shí)別率情況。 Table 3 Recognition results on Extended Yale B dataset with different training samples (3)隨機(jī)選擇每人60幅圖像組成訓(xùn)練集,分別改變字典大小為100,200,300,400,實(shí)驗(yàn)結(jié)果如表4所示。 Table 4 Recognition results on Extended Yale B dataset with different dictionary sizes 實(shí)驗(yàn)結(jié)果表明,在有不同的光照影響的人臉庫上,本文算法在改變訓(xùn)練樣本數(shù)量和改變字典大小的實(shí)驗(yàn)中都表現(xiàn)出較好的識(shí)別性能。隨著訓(xùn)練樣本數(shù)量的增加,改進(jìn)算法的識(shí)別率保持上升的趨勢(shì),反映出改進(jìn)算法識(shí)別性能穩(wěn)定,具有較好的字典學(xué)習(xí)效果。 為全面評(píng)估本文改進(jìn)算法的性能,對(duì)Extended Yale B人臉庫中的圖像分別添加了如圖5所示不同等級(jí)的椒鹽噪聲(10%,20%,30%,40%),進(jìn)行噪聲對(duì)比實(shí)驗(yàn)。實(shí)驗(yàn)時(shí),分別從每個(gè)人的全部人臉圖像中隨機(jī)抽取30幅組成訓(xùn)練集,剩余圖像組成測(cè)試集,在4.2節(jié)實(shí)驗(yàn)的基礎(chǔ)上,取字典大小為400,α和β的值為4和2。圖6給出了在固定訓(xùn)練樣本數(shù)的情況下,本文算法與其它4種對(duì)比算法隨噪聲等級(jí)變化的識(shí)別率對(duì)比曲線。從圖6中可以看出,在噪聲等級(jí)較小時(shí),本文算法與對(duì)比算法識(shí)別率接近,隨著噪聲等級(jí)逐漸加大,本文算法在噪聲環(huán)境下有一定的魯棒性。 Figure 5 Samples with different noise levels圖5 不同噪聲等級(jí)下的樣本圖像 Figure 6 Recognition results with different noise levels圖6 不同噪聲等級(jí)下的識(shí)別率 本文提出一種基于改進(jìn)標(biāo)簽一致KSVD字典學(xué)習(xí)算法并應(yīng)用于人臉識(shí)別。用主成分分解的方式提取其主成分分量,作為字典中每列原子的更新,代替了字典學(xué)習(xí)過程中對(duì)殘差項(xiàng)進(jìn)行K次奇異值分解的方式,再利用學(xué)習(xí)到的具有表示和判別能力的字典對(duì)樣本進(jìn)行分類。在人臉圖像存在遮擋、光照和表情變化等復(fù)雜情況下的AR和Extend Yale B人臉庫上的實(shí)驗(yàn)結(jié)果表明,本文算法有著較高的識(shí)別率。同時(shí),噪聲實(shí)驗(yàn)表明本文算法在噪聲存在的情況下依然保持較好的魯棒性。2.2 標(biāo)簽一致字典學(xué)習(xí)算法
3 改進(jìn)標(biāo)簽一致字典學(xué)習(xí)算法
4 實(shí)驗(yàn)與結(jié)果分析
4.1 AR人臉庫實(shí)驗(yàn)
4.2 Extended Yale B人臉庫實(shí)驗(yàn)
4.3 噪聲環(huán)境實(shí)驗(yàn)
5 結(jié)束語