周鑫燚,張軍朝,甘勝江
(1.成都師范學院 計算機科學系,四川 成都 611130;2.太原理工大學電氣與動力工程學院,山西 太原 030024)
目前,基于二維圖像的人臉識別方法[1]是人臉識別技術的研究主流,其主要思路是從二維人臉圖像中提取顯著和穩健的面部特征,采用機器學習等方法進行特征分類,實現人臉的識別[2]。識別率是人臉識別方法的重要評判指標。由于人臉圖像采集時經常受光照、表情、姿態和遮擋等影響,導致同一個體的人臉圖像類內差異增大,降低了人臉識別率[3]。為了提高識別率,需要增強人臉特征對光照、表情、姿態和遮擋的魯棒性。近些年這一方面取得了許多研究成果[4-13],如文獻[7]采用非負矩陣因子分解(non-negative matrix factorization)和Gabor變換提取人臉特征,增強了人臉特征對于遮擋和表情變化的魯棒性;文獻[8]將人臉圖像劃分為不同的圖像塊,提取尺度不變特征變換(scale invariant feature transform)特征,結合高斯混合模型(Gaussian mixture model)進行特征的濾波和融合,增強了人臉特征對于光照、姿態和遮擋變化的魯棒性;文獻[9]提出一種優化的稀疏深度學習網絡模型(optimized sparse deep learning network model),并采用局部結構稀疏表示來提取人臉特征,對于人臉的表情、姿態變化具有較強的魯棒性。上述方法都在一定程度上提高了人臉識別率,但對于一些受光照、表情、姿態和遮擋等影響較大的數據集(如AR和YALE-B人臉數據集),這些方法的識別率還有待進一步提高。
本文針對光照、表情、姿態和遮擋變化對人臉識別性能的影響,提出了一種結合局部方向模式和卷積神經網絡(convolutional neural networks,CNN)的人臉識別方法,采用主動形狀模型(active shape models,ASM)校正人臉姿態,降低姿態變化的影響;采用局部方向模式變換減少光照和表情變化的影響;融合局部方向模式圖像的五官部位局部方向特征以及約簡局部方向模式圖像的卷積神經網絡特征,增強人臉特征對光照、姿態、表情、遮擋等變化的魯棒性,最終采用隨機森林方法對特征進行學習和分類,可以有效提高復雜人臉圖像數據集上的人臉識別率。
本文結合局部方向模式和卷積神經網絡進行人臉識別,首先,對人臉圖像進行面部區域規范化處理,主要目標是去除干擾區域和校正面部姿態。然后對面部區域進行模式變換,采用維數約簡的局部方向模式表示面部灰度分布,突出梯度信息,降低光照影響。接著在變換后的圖像上,采用卷積神經網絡提取全局人臉特征,區分不同人臉。同時,考慮到五官局部區域對于描述不同人臉差異的重要性,提取五官局部區域的局部方向直方圖特征,并將局部特征與全局特征融合在一起,作為面部區域的多模式特征表達。最后,采用隨機森林分類器進行特征的學習與分類,實現人臉識別。本文方法的實現流程如圖1所示,詳細過程描述如下。

圖1 本文方法實現流程
對于人臉識別而言,不同個體的人臉差異主要表現在面部五官的形態分布差異。而用于人臉識別算法評測的許多測試數據集中,人臉圖像中還包含頭發、肩膀區域,這些區域的灰度分布差異會影響人臉識別的結果。另外,人臉姿態差異也可能對人臉識別結果造成很大影響。因此,本文首先要進行面部區域的規范化處理,主要包括兩個部分的工作。第一,定位人臉圖像中關鍵點位置,校正人臉姿態,裁剪面部區域圖像;第二,規范化面部圖像的尺寸。
(1)姿態校正與面部區域裁剪
目前常用的人臉圖像關鍵點定位方法是ASM方法,該方法可以精確定位眉毛、眼睛、嘴巴、鼻子、臉頰部位的外圍輪廓關鍵點位置。圖2為本文采用的ASM方法的關鍵點分布(限于圖像分辨率,部分面部關鍵點的序號未標出),可見,面部區域共提取68個關鍵點,具體實現方法詳見文獻[14]。

圖2 ASM關鍵點位置分布
得到這些關鍵點之后,本文依據兩眼中心的位置來校正人臉姿態。具體地,左眼中心坐標可以表示為

(1)
式中:(xi,yi)表示圖2中序號為i的關鍵點坐標。
類似地,右眼中心坐標可以表示為

(2)
那么,左眼與右眼中心連線與水平方向的夾角可以表示為
(3)
本文進行人臉姿態校正的目標是將兩眼中心旋轉至水平方向。因此,本文按照順時針方向,將待處理圖像以及對應的ASM關鍵點坐標旋轉角度θ。
校正完人臉的姿態之后,本文依據ASM關鍵點的最大外接矩形來裁剪面部區域。具體地,裁剪矩形區域可以表示為

(4)
式中:(xrect,yrect)表示裁剪矩形區域的左上角坐標,wrect和hrect分別表示裁剪矩形區域的寬度和高度。“max”和“min”分別表示取最大值和取最小值。
這樣,從姿態校正后的圖像中裁剪矩形框(xrect,yrect,wrect,hrect)中面部區域圖像。裁剪后的圖像去除了肩部、頭頂部區域,可以降低發型、著裝等差異對人臉識別結果的影響。
(2)圖像尺寸規范化
由于每一幅人臉圖像中五官等關鍵點的位置分布是不同的,這樣經過裁剪之后的面部區域圖像的尺寸是不同的。為了便于后續特征提取過程的規范化,本文對裁剪后的面部區域圖像進行尺寸規范化處理。具體地,采用雙線性插值算法,將裁剪后的面部圖像尺寸的規范化到96×96。同時,對應的ASM關鍵點坐標也按相同的變換比例規范化到96×96的圖像上。
考慮到面部區域圖像的清晰度和光照差異可能影響人臉識別結果,因此本文對面部區域圖像進行局部方向模式變換,突出各像素點的相對亮度信息,降低清晰度和光照差異對人臉識別的影響。具體地,本文采用如圖3所示的Kirsch掩膜,對圖像中的每一個像素點所在的3×3鄰域圖像塊進行卷積運算,計算每一個像素點在8個方向上的響應值。再對8個響應值進行二值化,組成一個8位的二值編碼,作為該像素點的局部方向響應。譬如,對于像素點(x,y),該像素點所在的3×3鄰域圖像塊經Kirsch掩膜卷積之后,得到的8個方向上的響應值記為m0(x,y),m1(x,y),…m7(x,y)。響應值的均值為
(5)

圖3 Kirsch掩膜
本文采用均值作為固定閾值進行二值化,二值化后各個方向的響應值可以表示為

(6)
這樣,像素點(x,y)的局部方向響應可以表示為
(7)
本文用IT表示變換后的局部方向模式圖像,該圖像的尺寸仍為96×96。需要說明的是,邊界區域無法計算局部方向響應,此時采用與各邊界點距離最近的像素點中已計算出的局部方向響應來代替。
為了降低后續全局特征提取的運算量,同時也是為了降低噪聲和表情變化干擾,本文再對局部方向模式圖像進行區域異或運算,得到一個低維的約簡局部方向模式圖像,記為IL。具體實現方法是,將局部方向模式圖像IT劃分為互不重疊的尺寸為3×3的圖像塊,然后對每一個圖像子塊,計算中心像素點周圍8個鄰域像素點的局部方向響應的異或結果,表示為
ci=(((c1⊕c2)⊕c3)…⊕c8)
(8)
式中:“⊕”表示“異或”運算。c1,c2,…,c8分別表示圖像塊i的中心像素點周圍8個鄰域像素點的局部方向響應,ci表示圖像塊i的異或結果。

對于面部圖像而言,五官區域對于區分不同人臉的貢獻更大,因此,本文提取五官區域的局部方向模式特征,輔助全局特征進行人臉識別。
首先,本文依據ASM關鍵點坐標(這里指尺寸校正后的關鍵點坐標)切分出3個圖像塊,分別是左眼眉區域RectL={xL,yL,wL,hL}、右眼眉區域RectR={xR,yR,wR,hR}和嘴鼻區域RectC={xC,yC,wC,hC}。結合圖2,這3個區域可以表示為

(9)

(10)

(11)



圖4 LeNet5網絡架構

本文選擇3個公開的人臉圖像數據集,分別為ORL、AR和YALE-B,簡要介紹見表1,部分樣本示例如圖5所示。

表1 實驗數據集簡介

圖5 實驗數據集樣本
這3個數據集中的人臉圖像都包含了光照、表情、姿態和遮擋等變化,相對而言,ORL數據集下人臉的變化幅度比較小,而AR和YALE-B數據集下的人臉變化幅度較大。在本文的實驗中,將3個數據集都劃分為兩個數據子集,分別為訓練樣本子集和測試樣本子集。其中,ORL數據集中每一個人臉類別選擇前5幅圖像放入訓練樣本子集,后5幅圖像放入測試樣本子集。AR數據集中每一個人臉類別拍攝了兩組圖像,選擇每組圖像的前5幅圖像放入訓練樣本子集(也即每一人臉類別有10幅圖像用于訓練),剩余16幅圖像放入測試樣本子集。YALE-B數據集中每一個人臉類別選擇前20幅圖像放入訓練樣本子集,后44幅圖像放入測試樣本子集。
本文選擇人臉識別領域近五年性能較好的3種方法(詳見文獻[7-9])進行對比實驗,定量評價本文方法的性能。實驗所用的訓練數據集、測試數據集、計算機軟硬件環境和評價指標都一致。其中,數據集如上一節所述,各種方法都分別在3個數據集下進行獨立的訓練和測試。各種方法所用的計算機軟硬件環境相同,主要性能指標為:CPU:Intel(R) Core(TM) i5-4570 3.20 GHZ;內存:16 G DDR3;操作系統:Windows 7 64bits;集成開發環境:Visual Studio 2013;計算機視覺庫:OpenCV 3.0.0。
本文采用人臉識別領域常用的兩個性能評價指標:識別率和平均耗時,識別率可以定義為正確識別的人臉圖像數量與測試集中人臉圖像總數的比值,平均耗時可以定義為完成一幅人臉圖像識別所耗費的平均時間,這并不包含數據訓練過程所耗費時間。下面采用這兩個性能評價指標定量評價本文方法的性能。
圖6展示了3個數據集下4種人臉識別方法的識別率對比結果。很明顯,本文方法在3個數據集下的識別率都是最高的,尤其是在YALE-B數據集上,本文方向的識別率高于排名第二的文獻[9]所述方法的識別率14%以上。這是因為YALE-B數據集下面部區域的光照變化非常大,而本文方法基于局部方向模式圖像提取全局和局部特征,受光照變化的影響小。而且,本文方法采用ASM方法進行面部姿態的校正和面部區域的裁剪,使得同類人臉圖像的據真率很低,從而提高了整體的識別率。同時,本文在約簡局部方向模式圖像上采用CNN方法提取特征,特征的魯棒性進一步增強,有利于提高不同光照、表情、姿態和遮擋等變化下的人臉識別率。

圖6 不同人臉識別方法的識別率指標對比
表2展示了不同人臉識別方法的平均耗時指標對比結果,可見,本文方法的平均耗時低于文獻[9]所述方法,與文獻[8]所述方法相當,但高于文獻[7]所述方法。但是,本文方法在AR和YALE-B兩個數據集上的識別率遠高于文獻[7]所述方法,且本文方法的處理速度也滿足實時處理的要求(處理耗時小于40 ms),因此,本文方法是一種實用的人臉識別方法。

表2 不同人臉識別方法的平均耗時指標對比(單位:ms)
本文提出了一種結合局部方向模式和卷積神經網絡的人臉識別方法,設計思想是:第一,采用主動形狀模型定位人臉圖像中的關鍵點位置,校正人臉姿態和去除干擾區域,降低人臉姿態以及背景區域對人臉識別的影響;第二,采用局部方向模式變換降低光照和表情變化對人臉識別的影響;第三,在局部方向模式圖像上提取五官部位的局部方向特征,在約簡局部方向模式圖像上采用卷積神經網絡提取全局特征,融合構成多模式的人臉特征,提高特征對光照、姿態、表情、遮擋等變化的魯棒性,并采用隨機森林方法對特征進行學習和分類,提高人臉識別率。實驗結果表明,與目前常用的人臉識別方法相比,本文方法在ORL、AR和YALE-B這3個數據集上都取得了更高的人臉識別率。但本文方法的運算效率還有待提高,需要后續進一步深入研究。