孫萬春,張建勛,鄭集元,陳虹伶,朱佳寶
(重慶理工大學 計算機科學與工程學院,重慶 400054)
目前,低分辨率人臉識別方法主要分為兩個方向:①頻域方法,計算簡便、理論通俗易懂、快速進行并行處理。②空域方法,對圖像進行模型分類。針對不同的類型運用不同算法進行處理,主要包括基于學習和模式識別、最大后驗概率法(MAP)等。基于頻域的方法,受限于平移運動和線性空間不變化約束,限制了其靈活性和應用范疇。基于空域的方法[1]能夠對其通過先驗知識的方法,具有一定的靈活性和運用場景,是目前研究熱點方向。
李嘉頔等[2]對低分辨率圖像進行分塊后提取局部特征,利用加權PCA融合特征方法來提高人臉識別率,該方法并沒有對圖像中的重要特征進行單獨提取,在低分辨率圖像處理上識別率并不理想。文獻[3]提出了一種基于圖像進行超分辨率極限學習機的識別方法,通過構建超分辨率圖像,并利用極限學習機的模型進行類別判斷。楊威等[4]提出一種改進的稀疏表達分類方法,該方法僅僅針對低分辨率圖像進行相適應的匹配系數關系調整,并不適用于任何場景。
本文提出了一種基于非下采樣Contourlet變換(nonsubsampled Contourlet,NSCT)和CS-LBP(center-symmetric local binary pattern)的低分辨率人臉識別方法[5]。對采樣到的低分辨率圖像,首先通過NSCT對其進行濾波分解,借助CS-LBP在光照變換時受影響較小的優點[6],分塊去提取經過已經得到的高低頻圖像信息,將得到的特征直方圖級聯起來,以獲取較為完整的能表達人臉的向量直方圖。針對最后分解得到圖像維度過高的問題,使用主成分分析法(principal component analysis,PCA)進行降維,提高實時性。


圖1 NSCT分解
經由NSCT分解輸出的低頻子帶部分蘊含著圖像中較多的能量信息,主要包含較多的大尺度背景圖像內容,因此低頻部分能對于目標背景對比有著很重要的參考性。而高頻部分[10]則在細節上表現力較為出色,能用分解出來的系數較大的值表示圖像中諸如輪廓和邊緣界限這樣的明顯信息。如圖2所示,展示了在二層條件分解下NSCT輸出各階段結果。

圖2 NSCT分解框架
LBP[11]提取圖像特性算法是以度量紋理進行的,即局部二值模式,尤其對于發生旋轉和灰度變換時對圖像仍然具有穩定識別性。具體原理是以9個像素組成的九宮格來表示,依據中心像素及臨近點來進行取值,其定義如式(1)所示
(1)
對于圖像中心點其像素表示為MXc,Yc,其像素點亮度值為ic;CS-LBP[12]分塊中心對稱局部二進制模式表示如式(2)和式(3)所示,對于公式中的量化函數sx
(2)

(3)
對每一個鄰域給定一個權值2p到sip-ic以得到其LBP值,此編碼值是可以表達諸如幅度變化等局部模式信息的。對于MXc,Yc的8位鄰域,共計28種表示,中心對稱局部則只需計算59種。圖3展示了MXc,Yc的CS-LBP局部特征提取的編碼過程。

圖3 CS-LBP編碼
CS-LBP編碼的特殊結構,使得其在對外界光照變換下能夠具有較高的魯棒性。利用CS-LBP這一特性可對NSCT分解出來的人臉特征進行直方圖構造,其表示如下
(4)
設圖3(b)代表它的3×3矩陣,以中心對稱的局部采樣參考,n=59。利用式(5)~式(7)可計算出59維度的向量Fi,j,圖像采樣的特征可表達為
Rk=r0,r1,…,rh
(5)
(6)
p=0,1,…,n-1
(7)
以Rk=r0,r1,…,rh表示低分辨率下圖像按矩陣分割的子塊定義特征信息,用LBP提取后級聯,最后以Fi,j展示其結果向量,以級聯每一個直方圖向量得到完整的人臉特征直方圖。而NSCT分解來的低頻子帶人臉特征,用圖4表達其提取過程。

圖4 低頻子帶圖像級聯提取
人臉進行分塊提取特征[13],其特征直方圖維數較高,特征的矢量矩陣運算復雜,實時監測性能較差。通過實驗發現可以利用PCA降維來解決。PCA是經典矩陣降維方法,其原理是使用KL(karhunen-loeve)變換,將人臉特征從原來的多維通過映射到一個低維度上,保留特征不變情況下降低了運算量。將原來維度上的特征指標通過矩陣映射到一個較低維度上,達到降維。對于給定的一個特征直方圖F(m,n)=X1,X2,…,Xm,其定義如下

(8)
以上公式中,Xi是特征矩陣,特征向量征集合F(m,n)中第i幅圖像特征。Xi,j為Xi中的第j行向量。對于樣本圖像X1,X2,…,Xm,灰度圖像的均列向量是
(9)
(10)


(11)
利用式(11)可表示任意維度下的特征級聯直方圖。
傳統的PCA降維[14,15]最終得到的最佳重構矩陣,其實并不能夠有效地區別出鑒別出人臉的矩陣特征。文獻[16]通過實驗論證人臉特征向量與外界的干擾因素有著密切聯系。另外文獻[17]提到,PCA分量的值受到外界光線亮度、人臉本身的表情,容貌改變等客觀條件影響,特別是PCA中較大的特征值的變化最顯著。
為了達到有效識別基礎上提高識別率,本文對維矩陣加權了前3個分量
Z=[ω1Z1,ω2Z2,ω3Z3,…,Zi]
(12)

結合1.1節、1.2節、1.3節所述,如圖5所示,對本文方法流程進行簡要概述。

圖5 本文方法流程
低分辨率人臉特征提取方法如下:
(1)對低分辨率圖像利用NSCT分解出人臉的高低頻子帶特征信息。
(2)本實驗中,對圖像數據分成8塊,通過CS-LBP來提取這幅圖的局部特征信息。
(3)對于級聯直方圖,通過加權PCA的方式對其進行降維。
為了方便實驗數據的對比,本實驗利用最近鄰分類器來進行數據的對比工作。
NSCT對于圖像的高低頻子帶信息分解過程的優劣主要依靠閾值參數λ的選擇,因此如何選擇λ,對本文的實驗結果有非常大的影響。為了能夠更好的對λ性能進行測試,本文采用公開的ORL數據集,對于不同的閾值參數選擇其結果如圖6所示。從圖6中可知,閾值參數在一定范圍內,其對識別率的影響呈現一定的低態走勢。為了能夠分解出較為理想的紋理特征,達到較好的實驗效果,λ取值為0.019 97。

圖6 NSCT閾值參數選取與識別率關系
為了驗證本文基于NSCT的CS-LBP特征對低分辨率人臉識別的有效性,本實驗采用了ORL數據集,并與(CS-LBP+PCA)[2]、(DTCWT+LBP)[18]兩種不同的識別方法進行比較。
本實驗中,基于ORL人臉數據集。分辨率大小均為92×112像素,由60個人、每個人9幅圖,共計540幅圖像構成。按照不同的姿態、光照、拍攝角度等干擾的優劣對每個人的9幅圖分成3組測試集。
實驗過程中,參考文獻[19]的數據集標定方法,預先通過雙眼標定,對每個訓練集的人臉庫分別進行平滑下采樣至46×56像素和23×28像素。為了方便NSCT運算,將處理后的圖像均上采樣到原始分辨率92×112。表1~表3分別表示不同的數據集環境測試的實驗結果。每組測試集均包含了每個人83種不同條件下的圖像。實驗數據結果見表1~表3。

表1 ORL 測試集1識別率/%

表2 ORL 測試集2識別率/%

表3 ORL 測試集3識別率/%
通過實驗對比,本文算法的識別率均高于CS-LBP+PCA、DTCWT+LBP,對于文獻[2]算法,僅僅對低分辨率圖像進行了分塊處理的方式來提取局部人臉的細節特征,在算法上并沒有進行針對性優化。而文獻[18]算法同本文算法相比均提取了高低頻的圖像特征信息,對邊緣和輪廓提取的特征較好,所以在識別率相對于前者更加健壯。DTCWT通過利用傳統小波變換的方式,能提取不同頻率中的局部特性,更清晰的描述邊緣特征等細節信息,而NSCT則通過分解不同尺度的高低頻子帶信息,分解系數中包含著更多的能量信息,并且對高維信息具有更好的稀疏表達能力。從表1~表3可以看出,隨著姿態、光照干擾越來越大,本文算法相比文獻[18]算法能夠在細節特征上更具有魯棒性,在更復雜的干擾條件下識別率更具有優勢。
針對目前低分辨率人臉識別率較低,提出了一種基于NSCT和CS-LBP相結合的識別方法。在低分辨率人臉識別領域上采用NSCT的濾波分解來提取人臉高低頻子帶信息;其次鑒于對于光照條件下考慮到CS-LBP在局部特征表現上具有較好的魯棒性,利用該特性進行人臉高低頻子帶信息提取工作,從而得到其級聯特征;由于CS-LBP對于局部特征算子處理過程中會產生較高的特征維度問題,本實驗通過采用PCA對其進行降維處理來解決實際效率問題。通過本文方法發現其應用在對低分辨率圖像人臉識別率上具有較好的效果。此外,今后希望能夠通過深度學習等方法進一步提高本文的識別率。