陳飛玥,朱玉蓮,陳曉紅
(1.南京航空航天大學(xué)計(jì)算機(jī)科學(xué)與技術(shù)學(xué)院,江蘇 南京 211106)(2.南京航空航天大學(xué)公共實(shí)驗(yàn)教學(xué)部,江蘇 南京 211106)(3.南京航空航天大學(xué)理學(xué)院,江蘇 南京 211106)
人臉識(shí)別是目前應(yīng)用最為廣泛的生物特征識(shí)別技術(shù)之一. 它在安全驗(yàn)證、銀行系統(tǒng)、人機(jī)交互等領(lǐng)域均有廣泛的應(yīng)用. 一般來說,人臉識(shí)別主要包括3個(gè)步驟:人臉檢測、特征提取和人臉分類. 人臉檢測是將人臉區(qū)域從整個(gè)圖像中分割出來,以便進(jìn)行后續(xù)特征提取;特征提取是從每個(gè)人臉圖像中提取最具鑒別能力的特征;而人臉分類則是基于提取的特征來判別未知人臉圖像是否屬于某個(gè)人,或者屬于哪個(gè)人. 本文的工作為特征提取和分類.
人臉識(shí)別也是計(jì)算機(jī)視覺中最具挑戰(zhàn)性的問題之一. 因?yàn)槿四槇D像中不可避免地存在著不同的光照、姿態(tài)表情等變化,還可能出現(xiàn)不同程度的遮擋,從而出現(xiàn)大的類內(nèi)變化和小的類間變化的情況,進(jìn)而影響識(shí)別任務(wù)的性能. 為了克服這個(gè)問題,人們提出了許多基于局部特征的提取算法,典型的算法包括Gabor特征[1]、局部二值模式(LBP)[2]、尺度不變特征變換(SIFT)[3]和方向梯度直方圖(HOG)特征[4]. 這些特征提取算法在一些特定的任務(wù)中取得了巨大的成功,但由于它們都是手工設(shè)計(jì)的特征,因此不能簡單地應(yīng)用于其他新任務(wù). 根據(jù)“沒有免費(fèi)午餐定理”,一個(gè)高性能的算法必須利用數(shù)據(jù)的先驗(yàn)知識(shí),因此,從數(shù)據(jù)本身來學(xué)習(xí)特征(基于學(xué)習(xí)的特征提取算法)成為彌補(bǔ)手動(dòng)特征局限性的一種可行算法[5-6].
在基于學(xué)習(xí)的特征提取算法中,卷積神經(jīng)網(wǎng)絡(luò)(CNN)[6]近年來受到了廣泛的關(guān)注. CNN通常由多個(gè)網(wǎng)絡(luò)層組成,而每一網(wǎng)絡(luò)層又由卷積濾波層、非線性處理層和特征池化層組成. 在過去的幾年中,基于CNN體系結(jié)構(gòu),各種卷積神經(jīng)網(wǎng)絡(luò)的變體如ResNet[7]、DeepFace[8]、FaceNet[9]等,相繼被提出. 然而,基于CNN的網(wǎng)絡(luò)結(jié)構(gòu)通常非常復(fù)雜,如ResNet[7]的層數(shù)高達(dá)152,這導(dǎo)致了大量的結(jié)構(gòu)參數(shù)(如濾波核參數(shù))需要調(diào)整,這個(gè)過程非常耗時(shí),而且復(fù)雜的網(wǎng)絡(luò)結(jié)構(gòu)通常需要一些額外的訓(xùn)練技巧才能獲得良好的性能. 此外,復(fù)雜的網(wǎng)絡(luò)結(jié)構(gòu)通常需要大量的訓(xùn)練數(shù)據(jù),才能保證通過深層網(wǎng)絡(luò)獲取對(duì)光照、表情等變化魯棒的特征.
為了解決上述問題,一些研究者將注意力放在了簡化訓(xùn)練過程上,典型的例子就是主成分分析網(wǎng)絡(luò)(PCANet)[10]. PCANet可視為CNN的簡化版本,在PCANet中,卷積層的濾波核通過PCA算法來學(xué)習(xí);非線性處理層使用最簡單的二值化哈希編碼,而最后的特征則通過直方圖統(tǒng)計(jì)來表示. 盡管PCANet模型簡單,但在某些圖像識(shí)別領(lǐng)域取得了和CNN可比擬的性能[10]. 鑒于PCANet的成功,人們在PCANet的基礎(chǔ)上做了各種改進(jìn)[5,11-12]. 例如,Xi等[11]提出了一種用于人臉識(shí)別的局部二值模式網(wǎng)絡(luò)(LBPNet);Lei等[5]提出了堆疊人臉圖像描述符;Li等[12]則提出了基于RGBD(紅、綠、藍(lán)、深)圖像的人體手勢識(shí)別網(wǎng)絡(luò)SAE-PCA. 本文將研究如何在訓(xùn)練樣本有限的情況下,使用PCANet提取到包含更豐富的有用的特征以實(shí)現(xiàn)性能的進(jìn)一步提升.
PCANet及上述PCANet的改進(jìn)方法在構(gòu)建卷積濾波核時(shí)只使用PCA的前k個(gè)最大的特征值對(duì)應(yīng)的特征向量.也就是說,只考慮了k個(gè)最大特征值對(duì)應(yīng)的特征向量,而丟棄了剩余的特征向量. 實(shí)際上,被丟棄的特征向量中也存在一部分有用的辨別信息,丟棄它們會(huì)損失這部分辨別信息. 避免信息損失的一個(gè)簡單方式是盡量多地使用PCA中的特征向量去構(gòu)建卷積核,然而這樣的操作將導(dǎo)致計(jì)算量及最后獲得的特征維數(shù)大大增加. 最近,一種稱為DenseNet[13]的卷積神經(jīng)網(wǎng)絡(luò)模型被提出. DenseNet的核心是每一層的輸入均來自前面所有層的輸出,并且通過特征的并行連接來實(shí)現(xiàn)特征重用,進(jìn)而在參數(shù)更少的情況下獲取比CNN更好的性能. 受DenseNet成功的啟發(fā),本文嘗試將組合思想引入到PCANet中,對(duì)不同層次的特征信息進(jìn)行融合,并相應(yīng)地提出了基于多層特征融合的PCANet(PCANet_dense)模型. 與PCANet中只將第1層的輸出反饋到第2層不同,PCANet_dense首先將原始圖像特征和網(wǎng)絡(luò)第1層的輸出特征進(jìn)行信道級(jí)的級(jí)聯(lián),然后將級(jí)聯(lián)后的結(jié)果作為網(wǎng)絡(luò)第2層的輸入,因此PCANet_dense比PCANet利用了更多的特征信息. 另外,本文也將PCANet_dense擴(kuò)展到3層網(wǎng)絡(luò)結(jié)構(gòu)中(在實(shí)驗(yàn)中將其命名為PCANet_dense3),即在保留PCANet_dense前兩層結(jié)構(gòu)的基礎(chǔ)上,將第1層與第2層的輸出進(jìn)行級(jí)聯(lián),然后將級(jí)聯(lián)的結(jié)果作為第3層的輸入. 為了驗(yàn)證所提方法的有效性,本文使用CMU PIE人臉數(shù)據(jù)庫學(xué)習(xí)網(wǎng)絡(luò)模型,并在3個(gè)人臉數(shù)據(jù)庫(ORL、AR和Extended Yale B)上進(jìn)行實(shí)驗(yàn). 實(shí)驗(yàn)結(jié)果表明,相對(duì)于PCANet,本文提出的PCANet_dense和PCANet_dense3不僅對(duì)光照、遮擋具有更強(qiáng)的魯棒性,同時(shí)也適用于表情和姿態(tài)變化的測試圖像.
本節(jié)將詳細(xì)描述基于多層特征融合的PCANet的網(wǎng)絡(luò)層次結(jié)構(gòu)和訓(xùn)練流程.
和PCANet相似,PCANet_dense也包含1個(gè)輸入層、2個(gè)卷積層和1個(gè)輸出層(如圖1所示).
圖1 PCANet_dense結(jié)構(gòu)示意圖(其中?和?分別是信道級(jí)聯(lián)和卷積運(yùn)算)Fig.1 The illustration of structure of PCANet_dense(? and ? is channel-wise concatenation and convolution operation,respectively)
(1)
(2)
式中,*為卷積符號(hào).很明顯,對(duì)于每一個(gè)輸入圖像,經(jīng)過第1層卷積后,能得到L1個(gè)輸出映射.
(3)
(4)
(5)
PCANet_dense雖只是2層的網(wǎng)絡(luò)模型,但同PCANet一樣,它很容易擴(kuò)展到3層或更多層. 在此,通過在PCANet_dense的基礎(chǔ)上添加第3層卷積層,給出PCANet_dense的3層版本(PCANet_dense3). 簡單地說,PCANet_ dense3在學(xué)習(xí)第3層卷積前,將第1層和第2層的輸出進(jìn)行信道級(jí)聯(lián),然后將級(jí)聯(lián)后的結(jié)果作為第3層的輸入. PCANet、PCANet_dense和PCANet_ dense3的流程簡單比較如圖2所示.
圖2 PCANet、PCANet_dense和PCANet_dense3流程概述Fig.2. Overview of PCANet,PCANet_dense and PCANet_dense3
為了評(píng)估文中所提方法的有效性,本文在人臉識(shí)別任務(wù)上進(jìn)行了實(shí)驗(yàn). 實(shí)驗(yàn)中PCANet、PCANet_dense和PCANet_dense3使用CMU PIE人臉數(shù)據(jù)庫學(xué)習(xí)網(wǎng)絡(luò)模型,FaceNet選用已在VGGFace2訓(xùn)練好的模型. 實(shí)驗(yàn)分別在ORL、AR和Extended Yale B數(shù)據(jù)集上對(duì)PCA、FaceNet、PCANet、PCANet_dense和PCANet_dense3進(jìn)行性能比較.
CMU PIE數(shù)據(jù)庫包含68個(gè)人不同姿勢、不同照明條件和不同拍攝條件下共41 368張圖像. 本文使用的是1個(gè)子集,其僅包含68個(gè)人正面姿勢的圖像,并將所有圖像分辨率調(diào)整為100×82. 在實(shí)驗(yàn)中,各項(xiàng)基本參數(shù)的設(shè)置如下:對(duì)于PCA算法,選取前95%的主成分作為特征表示;對(duì)于PCANet、PCANet_dense和PCANet_dense3,每層濾波核的大小均為5×5;而濾波核的數(shù)目均為 8;所有實(shí)驗(yàn)用歐氏距離最近鄰分類器進(jìn)行分類.
ORL數(shù)據(jù)庫是劍橋大學(xué)AT&T實(shí)驗(yàn)室收集的人臉圖像數(shù)據(jù)集,包括來自40個(gè)人的400張人臉圖像,每個(gè)人有10張圖像,所有圖像分辨率為112×92. 對(duì)每個(gè)人來說,10張照片在不同的時(shí)間拍攝并包含面部表情(睜眼、閉眼、微笑、中性)、面部細(xì)節(jié)(戴眼鏡或不戴眼鏡)和人臉尺度等變化(最多10%左右). 此外,所拍攝的圖像允許臉部傾斜和旋轉(zhuǎn)達(dá)20°. 在實(shí)驗(yàn)中,分別從每個(gè)人的圖像中隨機(jī)選取5、6、7和8幅人臉圖像形成訓(xùn)練集,其余圖像作為測試集,實(shí)驗(yàn)重復(fù)10次,取平均作為最后的結(jié)果. 實(shí)驗(yàn)結(jié)果如表1所示.
表1 ORL數(shù)據(jù)集的識(shí)別率Table 1 Recognition rates on ORL dataset
由表1可以看出:(1)PCANet_dense比PCANet具有更好的性能,特別是當(dāng)訓(xùn)練樣本數(shù)足夠多時(shí)(7個(gè)或8個(gè)),PCANet_dense分別獲得97.5%和100%的識(shí)別準(zhǔn)確率,相對(duì)于PCANet的95.53%和98.75%,PCANet_dense至少提高了1%,這說明對(duì)不同層的特征進(jìn)行組合是有效的;(2)PCANet_dense3在所有情況下都優(yōu)于PCANet_dense;在每類6個(gè)訓(xùn)練樣本時(shí),PCANet_dense3取得了98.33%的準(zhǔn)確率,比PCANet_dense高了2.7%,這說明增加PCANet_dense的層數(shù),更有利于性能的提升;(3)FaceNet在ORL數(shù)據(jù)集上表現(xiàn)得非常優(yōu)秀,在所有情況下均獲得了100%的識(shí)別率. 這主要是因?yàn)?①FaceNet是通過大量樣本訓(xùn)練得到的真正的深度網(wǎng)絡(luò)(深度可達(dá)447);②ORL中的圖像受姿態(tài)、光線和遮擋等影響較少. 雖然PCANet_dense3在ORL上并沒有獲得與FaceNet可比擬的性能,但值得說明的是,PCANet_dense3僅僅是一個(gè)3層網(wǎng)絡(luò),如果增加層數(shù)將會(huì)進(jìn)一步提高整體的性能.
AR人臉數(shù)據(jù)庫是一個(gè)非常具有挑戰(zhàn)性的數(shù)據(jù)庫,它由126個(gè)人(70名男性和56名女性),每人26張共計(jì)3 000多張正面圖像組成. 每人的照片在間隔2周的2個(gè)不同的時(shí)間段(session)拍攝. 圖3顯示了AR數(shù)據(jù)庫中的一些樣本,每個(gè)session中的圖像從左到右的詳細(xì)信息為:第1張中性表情、第2-4張表情大幅變化、第5-7張照明變化、第8-10張為太陽鏡遮擋、第11-13張為圍巾遮擋. 本文使用了包含100個(gè)人(50名男性和50名女性)共2 600張圖像的子集,并將原始圖像的大小調(diào)整為66×48. 實(shí)驗(yàn)選擇session 1的所有圖像進(jìn)行訓(xùn)練,并將session 2圖像根據(jù)變化類別的不同分為4個(gè)測試子集(Exps:session 2第2-4張;Illum:session 2第5-7張;Sunglass:session 2第8-10張;Scarf:session 2第11-13張),以便測試在不同圖像變化下的性能.
圖3 AR數(shù)據(jù)庫上某個(gè)人的樣本Fig.3 Some samples of one person from AR database
圖4列出了不同方法在4個(gè)子集上的識(shí)別準(zhǔn)確率. 從圖4可以看出:(1)在Exps和Illum測試子集上,所有對(duì)比方法均獲得了較好的性能. 尤其是FaceNet達(dá)到了99.67%的識(shí)別性能;本文提出的PCANet_dense和PCANet_dense3也達(dá)到了99%的性能,高于PCANet的實(shí)驗(yàn)結(jié)果. (2)在Sunglass和Scarf測試子集上,PCA和FaceNet模型的準(zhǔn)確率相對(duì)于Exps和Illum明顯下降. 例如在Scarf子集上,由于人臉圖像受到嚴(yán)重遮擋,PCA的識(shí)別率只有18.00%,FaceNet也僅達(dá)到91.67%的識(shí)別性能;而PCANet_dense和PCANet_dense3分別取得了 97.00%和98.67%的準(zhǔn)確率,不僅高于PCA和FaceNet,比PCANet也提升了至少2.67%. 這說明我們提出的方法對(duì)受遮擋的人臉圖像數(shù)據(jù)表現(xiàn)得更為魯棒.
圖4 AR數(shù)據(jù)集上各模型的識(shí)別率Fig.4 Recognition rates of each model on AR dataset
Extended Yale B數(shù)據(jù)集包含了38個(gè)人的2 414張正面照片. 所有的圖像都是在實(shí)驗(yàn)室控制的各種光線下拍攝的. 因此,該數(shù)據(jù)集主要用來測試算法對(duì)光照的魯棒性. 實(shí)驗(yàn)中,將原始圖像大小從192×168調(diào)整為48×42,并參考文獻(xiàn)[14]中的策略,根據(jù)光源方向的角度(即光照方位角)大小將整個(gè)數(shù)據(jù)集分成5個(gè)不相交的子集(subset 1-subset 5). 從圖5所示的部分樣本可看出從subset 1到subset 5圖像的光照方位角逐漸增大. 實(shí)驗(yàn)選擇子集subset 1進(jìn)行訓(xùn)練,其余4個(gè)子集(subset 2-subset 5)分別進(jìn)行測試. 實(shí)驗(yàn)的結(jié)果如表2所示.
圖5 Extended Yale B數(shù)據(jù)集的子集示例Fig.5 Overview of subsets of Extended Yale B dataset
表2 Extended Yale B數(shù)據(jù)集的識(shí)別率Table 2 Recognition rates on Extended Yale B dataset
從表2可以看到:(1)同PCA、FaceNet和PCANet相比,PCANet_dense和PCANet_dense3在性能上都有一定提升. 尤其是PCANet_dense3,在subset 5上達(dá)到了98.03%的準(zhǔn)確率,比PCANet多了5%;而PCA和FaceNet在subset 5上只取得了3.51%和33.68%的準(zhǔn)確率. (2)FaceNet對(duì)光線變化的魯棒性極不理想,這主要是因?yàn)樵谑褂肰GGFace2數(shù)據(jù)集學(xué)習(xí)FaceNet網(wǎng)絡(luò)模型時(shí)并沒有考慮光線等變化對(duì)圖像干擾的問題. (3)當(dāng)測試樣本的光照方位角較小時(shí),如subset 2,所有對(duì)比方法都取得了比較好的效果,識(shí)別準(zhǔn)確率都在94%以上;隨著光照方位角逐漸增大,所有方法的準(zhǔn)確率都出現(xiàn)了不同程度地下降. 從subset 2到subset 5,PCA、FaceNet和PCANet的識(shí)別率分別下降了約93%、60%和7.2%;而文中提出的PCANet_dense3下降幅度僅為2%,遠(yuǎn)低于其他方法. 說明PCANet_dense3對(duì)于識(shí)別受嚴(yán)重光照變化影響的人臉圖像具有很好的魯棒性.
由公式(5)可知,每張輸入圖像最終得到的特征表示向量,其維度與網(wǎng)絡(luò)的卷積核個(gè)數(shù)和分塊個(gè)數(shù)B有關(guān). 在上述實(shí)驗(yàn)中,PCANet、PCANet_dense和PCANet_dense3這3種方法的卷積層都采用了相同的卷積核大小與個(gè)數(shù),輸出層分塊個(gè)數(shù)也相同. 然而,PCANet_dense3是3層結(jié)構(gòu),與2層結(jié)構(gòu)的PCANet和PCANet_dense相比在總體上產(chǎn)生了更多的卷積核,因此,PCANet_dense3所提取的特征維數(shù)肯定大于后兩者. 本節(jié)將在AR數(shù)據(jù)集上進(jìn)行實(shí)驗(yàn),以討論在最終特征維數(shù)盡量不變的情況下(相對(duì)于PCANet_dense)PCANet_dense3的性能. 在輸出層分塊個(gè)數(shù)相同的前提下,設(shè)PCANet(或PCANet_dense)網(wǎng)絡(luò)的2層濾波核個(gè)數(shù)分別為L1和L2,PCANet_dense3中每層濾波核個(gè)數(shù)分別為L3、L4和L5,若要保證PCANet_dense3的特征維數(shù)盡量不變只需滿足關(guān)系L1?(L3+1)L4+1且L2=L5即可. 設(shè)PCANet與PCANet_dense的參數(shù)為:L1=L2=8,因此PCANet_dense3的參數(shù)可為:L3=2,L4=2,L5=8. 實(shí)驗(yàn)均在AR數(shù)據(jù)集上進(jìn)行建模和訓(xùn)練,相應(yīng)的結(jié)果如表3 所示.
表3 維度限制下AR數(shù)據(jù)集的識(shí)別率Table 3 Recognition rates under dimensional constraints on AR dataset
從表3中的數(shù)據(jù)可知,降低每層的濾波核個(gè)數(shù)的確影響PCANet_dense3的性能,但相對(duì)于2層的PCANet和PCANet_dense,整體性能仍然有提升,這也說明了在不增加特征維數(shù)的情況下增加PCANet的層數(shù)對(duì)性能的提高是有效的. 另外,根據(jù)3種不同網(wǎng)絡(luò)的卷積核個(gè)數(shù)可以推算出,PCANet、PCANet_dense和PCANet_dense3最終所產(chǎn)生的特征維數(shù)是8∶9∶7,這說明PCANet_dense3實(shí)際是以偏低的維度取得了表3 中展現(xiàn)出的性能. 在實(shí)際應(yīng)用中,可以考慮放寬特征維度限制,選擇合適的卷積核數(shù)以提高PCANet_dense3的性能.
本文在PCANet的基礎(chǔ)上,結(jié)合DenseNet的思想,通過融合不同層的特征提出了PCANet_dense模型. 該模型的核心是每個(gè)卷積層的輸入為前兩層輸出的級(jí)聯(lián)特征(當(dāng)模型僅有2層時(shí),第2層輸入為第1層輸出與輸入層的級(jí)聯(lián)特征),因此相對(duì)于PCANet而言,該模型使用了更多的特征信息. 本文分別構(gòu)建了2層和3層PCANet_dense模型,并在人臉識(shí)別任務(wù)上進(jìn)行了實(shí)驗(yàn). 實(shí)驗(yàn)結(jié)果表明,所提出的模型均取得了較好的效果,尤其當(dāng)測試圖像包含嚴(yán)重遮擋或受到嚴(yán)重光照干擾的時(shí)候,文中的方法獲得了比PCANet、FaceNet等更為魯棒和穩(wěn)定的性能.