孫雨浩,陶 洋,胡 昊
(重慶郵電大學通信與信息工程學院,重慶 400065)
目前,雖然遮擋人臉識別技術已經取得了長足的進展,但是在現實應用中仍然面臨著巨大的挑戰。一般人臉識別都要求訓練樣本不受噪聲污染,即前提條件是這些識別方法都是基于單一樣本的單一個體的圖像位于同一低秩子空間[1],但在現實場景中,圖像通常都會受到比如姿勢、光照、表情變化以及遮擋的各種影響。
在測試和訓練樣本沒有受到影響的情況下,稀疏表示的分類SRC(Sparse Representation Classification)方法的識別性能較好,否則識別性能就會明顯降低。為了提高SRC的性能,Wright等人[2]提出了魯棒SRC RSRC(Robust SRC)模型,然而,由于L1范數最小化和單位遮擋字典中存在大量的原子,SRC方法計算代價很高。基于此,Deng等人[3]提出一種擴展稀疏表示ESRC(Extended Sparse Representation Classification) 算法,用訓練樣本減去其對應的類均值得到誤差字典,取得了較好的稀疏表示結果,但還是存在遮擋字典也不能很好描述圖像的污損以及需要針對L1范數進行相應的優化等問題。
針對此問題,眾多學者都在關注如何提高L1范數的計算速度,卻忽略了表示的協同性。協同性即由于不同人的面部圖像具有相似性,若第i個人與第j個人的圖像很相似,那么第j類的訓練樣本可以用于表示來自第i類的測試樣本。Zhang等人[4]根據上述思想,提出了協同表示分類CRC(Collaborative Representation Classification)的方法。CRC在計算協同表示系數時,放松了對稀疏性的要求,重點關注表示樣本的協同性,用L2范數代替L1范數,提高了人臉識別的魯棒性,而且大大降低了復雜度。
如果所有的訓練樣本都得到很好的控制,即在合理的姿態和光照下,沒有噪聲污染和遮擋,CRC對有污損和遮擋的測試樣本具有很強的魯棒性,能夠實現較高的人臉識別精度。但是,當測試樣本和訓練樣本都被遮擋或者污損時,CRC的性能也會下降。Candès等人[5]提出的魯棒主成分分析RPCA(Robust Principal Component Analysis),假設所有數據都在一個子空間中,然后從被污損的數據矩陣中恢復一個低秩數據矩陣。但是,當數據樣本來自多個子空間時,此方法性能也達不到理想的效果。Liu等人[6]提出了低秩表示LRR(Low-rank Representation)算法,不僅可以在測試樣本和訓練樣本均受到污染的情況下有效恢復出 “干凈”的人臉圖像和誤差圖像,還在一定程度上解決了訓練樣本來自不同子空間的問題。
最近的研究成果表明,低秩矩陣恢復的方法被廣泛運用在圖像分類領域。杜海順等人[7]利用LRR對訓練數據進行恢復,提出了基于低秩恢復稀疏表示分類算法。何林知等人[8]利用RPCA 方法對訓練樣本進行低秩恢復后,使用協同表示分類方法對測試樣本進行識別。以上基于低秩矩陣恢復的人臉識別方法,雖然可以很好地去除訓練數據中的噪聲,但是忽略了數據的局部結構可能會降低圖像恢復的性能,而且由于沒有充分挖掘訓練樣本的判別信息,這些方法并不適用于分類。
本文針對訓練樣本和測試樣本同時受到遮擋的問題,提出了一種基于判別低秩矩陣恢復和協同表示與分類的遮擋人臉識別DLMR-CRC(Discriminant Low-rank Matrix Recovery and Collaborative Representation Classification)方法。該方法首先通過在低秩矩陣恢復中引入結構非相關性約束,有效地從被污損的訓練樣本中恢復出干凈的訓練樣本,這些干凈的人臉圖像不但具有更強的判別信息,而且還可以保持原始數據的局部幾何結構。在得到干凈的人臉圖像后,通過學習原始污損數據與干凈的低秩數據之間的低秩投影矩陣,將受污損的測試樣本投影到相應的低維子空間進行測試樣本的修正。最后,利用協同表示與分類的方法對修正后的測試樣本進行分類,獲取最終的識別結果。該方法流程如圖1所示。本文所提方法不僅在保持原始數據的局部幾何結構的同時增強了恢復的低秩數據的判別能力,而且還對受污損的測試樣本進行了修正,在協同表示與分類的作用下,大大提高了遮擋人臉識別的有效性。

Figure 1 Flow chart of DLMR-CRC 圖1 DLMR-CRC流程
由于本文提出的方法涉及低秩矩陣恢復技術,本節先簡單回顧一下相關的工作。RPCA試圖將數據矩陣X分為A+E,其中A為干凈的數據矩陣,E為相關的稀疏誤差矩陣。RPCA最小化矩陣A的秩的同時減小了‖E‖0,得到X的低秩表示。RPCA模型表示為:
s.t.X=A+E
(1)
其中λ是一個正則化參數,用來約束稀疏誤差矩陣。
由于上述優化問題是NP難且高度非凸的,最常見的解決方法就是用L1范數來代替L0范數,以及用核范數代替秩函數,這種方法被證實是有效的。因此,式(1)就可以轉化為如下優化問題:
s.t.X=A+E
(2)
式(2)中的核范數是指向量矩陣A的奇異值的和,主要用來約束A的低秩屬性,L1范數用來約束誤差圖像矩陣E的稀疏性,根據文獻[9]可知L1范數并不能很好地對E的稀疏性進行約束,因此本文使用L2,1范數代替L1范數,X的L2,1范數定義如式(3)所示:
(3)
其中,m和n分別代表數據矩陣的行數和列數。
不同于L1范數的稀疏要求,從L2,1范數的定義可以看出,根號下平方是對X的列進行求和,由從L2范數的定義可以得出,根號部分相當于一個L2范數,可知L2,1范數即為X每一行的L2范數之和,L2,1范數還要求行稀疏,從而可以更好地對誤差矩陣E的稀疏性進行約束。同時,RPCA假設數據X來自同一子空間,然而Liu等人[6]提出的LRR算法,在一定程度上解決了訓練樣本來自不同子空間的問題。綜上所述,改進后的模型可以表示為:
s.t.X=DZ+E
(4)
其中,D是選擇的對應字典,Z是低秩矩陣。
式(4)所示的優化問題可以通過非精確增廣拉格朗日乘子ALM(Augmented Lagrange Multipliers)算法[10]求解,得到最優解Z*,利用DZ*可以從數據矩陣X中恢復出干凈的數據矩陣。
通過選擇合適的字典D,利用LRR可以尋找出低秩的表示矩陣。在一般應用中,因為每個數據向量都可以用原始數據向量表示,所以LRR使用數據X作為字典,在數據恢復期間還可以自動糾正錯誤。
假設有n個原始訓練樣本X屬于N類,X=[x1,x2,…,xn]∈Rm×n,為了簡單起見定義X=[X1,X2,…,XN],其中Xi的列是由第i類訓練樣本構成。給定一個測試樣本y∈Rm,SRC方法使用訓練樣本X的稀疏線性組合來表示y,即y=Xα,其中α∈Rn是表示系數,用L1范數最小化求解稀疏表示系數,因此SRC的目標函數如式(5)所示:
(5)

(6)
進行分類,分類規則為:
identity(y)=argmini{ei}
(7)
其中identity(y)表示測試樣本y的類別。
式(7)通過評估構建的每個類的重構誤差,分析哪一類訓練樣本能夠使稀疏編碼系數相關的輸入測試圖像的重構誤差最小,最終實現對人臉圖像基于稀疏表示的分類。
雖然SRC對遮擋和污染具有良好的魯棒性,但仍然存在一些問題。隨著訓練樣本字典行數或列數的增加,SRC方法的運行速度急速下降。
為提高算法運行效率,Zhang等人[4]提出了CRC方法。CRC方法的一般模型可表示為:
(8)
其中λ是正則化參數,p,q為1或2,p和q的不同取值導致CRC模型的不同實例化,CRC模型具體為:
(9)
利用正則化最小二乘法求解式(9)的解為:
(10)
其中,I為單位矩陣,P和測試圖像沒有直接關系,可以提前進行計算,以節約運行時間。CRC將測試圖像投影到P下,再判別測試圖像類別,最小二乘協作表示算法[4]的算法流程如下:
步驟1將X的列標準化為單位L2范數;


步驟4獲得y的類別:identity(y)=argmini{ei}。

min‖Zi‖*+λ‖Ei‖2,1+
s.t.Xi=AiZi+Ei
(11)
其中,λ是正則化參數;Ei是第i類的誤差矩陣;懲罰參數η用來平衡低秩矩陣近似和不連貫的問題;最后一項是每一對低秩矩陣Di和Dj的F范數之和,不同類別之間恢復矩陣的F范數越小,意為著其獨立性越強。這一項促進了不同近似類之間的結構不一致性,這個附加項為新的LRR問題提供了更多的判別能力。
本節使用ALM[10]來求解式(11)所示的優化問題。首先通過引入輔助變量Ji將式(11)轉化為下面的等價優化問題:
s.t.Xi=AiZi+Ei,Zi=Ji
(12)
構造增廣拉格朗日函數如式(13)所示:
L(Zi,Ei,Ji,Y1,Y2)=
〈Xi-AiZi-Ei,Y1〉+〈Zi-Ji,Y2〉+
(13)
其中,Y1和Y2是拉格朗日乘數,μ>0是一個懲罰參數。
將上述增廣拉格朗日函數改寫成如下形式:
L(Zi,Ei,Ji,Y1,Y2)=
f(Zi,Ji,Ei,Y1,Y2,μ)
(14)
其中,
f(Zi,Ji,Ei,Y1,Y2,μ)=
(15)
求解式(14)所示的優化問題的完整算法如算法1所示。
算法1
輸入N類訓練數據矩陣X,參數λ>0,η>0。
輸出:恢復干凈的數據矩陣D=XZ*。
fori=1;i 初始化Zi=Ji=Ei=Y1=Y2=0,Zj=I,μ=10-6,ρ=1.1,μmax=1010,ε=10-3,k=0。 未收斂時,重復以下步驟: 步驟1求解式(16)以更新Zi; 步驟2求解式(17)以更新Ji; 步驟3求解式(18)以更新Ei; 步驟4更新拉格朗日常數: 步驟5μk+1=min(ρμk,μmax) 步驟6檢查收斂條件 步驟7更新k:k←k+1; 直到收斂; endfor 步驟 8求出一個最優解Z*; 為了交替地更新變量Zi、Ji和Ei,本文采用交替更新的方法,在對應變量的求解中固定了其他2個變量。更新步驟如下所示: 步驟1更新Zi 其中, 則具有如下封閉式的解: (16) 步驟2更新Ji。 為了更新第i類的誤差矩陣Ji,固定式(14)中的Zi、Ei、Y1和Y2,并相應地解決以下問題: 通過計算L相對于Ji的偏導數并將其設置為0,可得上述問題的解為: (17) 步驟3更新Ei。 為了更新第i類的誤差矩陣Ei,固定式(14)中的Zi,Ji,Y1和Y2,得到如下形式: (18) 為了提高CRC的性能,本文考慮去除測試樣本中可能的損壞。在Cao等人[11]工作的啟發下,一個低秩投影矩陣可以被應用于將損壞的樣本投影到它們相應的低維子空間中。 我們假設原始訓練樣本X和判別低秩恢復結果D之間存在潛在的投影矩陣P,然后通過學習線性低秩投影矩陣P,將任意數據點x投影到它的子空間上得到精確的恢復結果Px。優化問題表述如下: s.t.D=PX (19) 由于式(19)計算量大,可以通過用核范數代替秩函數來放寬該優化問題。新的凸優化問題表示為: s.t.D=PX (20) 假設P≠0,D=PX有可行解。式(20)的唯一解可以表示為P*=YX+,其中,X+是X的偽逆矩陣,X+=V∑-1UT,V∑-1UT是X的瘦SVD,即保留X的正奇異值。最優解P*即為原始污染數據X與恢復的低秩數據D之間的低秩投影矩陣,可用于處理新的被污染測試樣本數據y,將測試樣本數據y映射到其對應的潛在子空間中,移除其中的誤差成分得到“干凈”的測試樣本P*y,達到對測試數據誤差矯正的目的。算法2詳細描述了基于判別低秩矩陣恢復和協同表示與分類的過程。 算法2DLMR-CRC Algorithm 輸入:訓練樣本數據矩陣X=[x1,x2,…,xn]∈Rm×n,測試樣本y∈Rm,參數λ>0,η>0,β>0。 輸出:分類識別結果。 fori=1;i 步驟1利用算法1求解下列優化問題最優解(Z*): s.t.Xi=AiZi+Ei endfor 步驟2得到訓練樣本的恢復結果: D=[X1Z1,…,XkZk]; 步驟3計算低秩投影矩陣:P*=DX+; 步驟4校正測試樣本y:yP=P*y; 步驟5通過CRC對yP進行分類: fori=1;i 步驟6計算表示殘差: ei=‖yP-Diαi‖2/‖αi‖2; 步驟7進行分類: identity(y)=argmini{ei} endfor 實驗中所有方法均在CPU為Intel Core i5-7200 U @2.50 GHz 2.70 GHz,內存為8 GB,操作系統為64位Windows操作系統,Matlab版本為Matlab2016a環境下進行。 為了驗證本文所提DLMR-CRC方法的有效性,本節在AR和Extended Yale B數據庫上進行了大量的實驗,比較了SRC[2]、LRC(線性回歸分類)[12]、CRC[4]和NN等方法。本文通過移除式(11)中的附加項來實現LMR-CRC。本文還實現了基于SRC的DLMR的方法DLMR-SRC,使用SRC方法的分類器進行分類。在本文的實驗中,所有的比較方法都使用了標準的特征臉特征,由于人臉圖像通常是高維度的,所以在訓練和測試之前,為了對實驗結果進行公平比較,使用PCA來降低原始圖像的維數。選擇人臉圖像的特征維數分別為25,50,75,100,200和300。采用ALM算法求解L1范數問題,并將ALM中的正則化參數設置為0.001。 AR數據庫包括126個人的4 000多幅正面圖像。每個人有26幅臉部圖像,分別采集于2個不同的階段,這些圖像是在不同的光照、表情和面部遮擋/偽裝條件下拍攝的,每個階段拍攝13幅圖像,其中3幅是戴著墨鏡的,另外3幅是戴著圍巾的,剩下的7幅具有明顯的照明和表情變化。將人臉圖像裁剪為165×120像素,并轉換為灰度圖像。AR數據庫中戴墨鏡和圍巾的圖像如圖2所示。 Figure 2 Images with sunglasses and scarf in AR database 圖2 AR數據庫中戴墨鏡和圍巾的圖像 實驗選擇AR數據庫中的一個子集,其中包括50名男性受試者和50名女性受試者的圖像,在第1階段拍攝的中性和損壞的圖像均用于訓練。為了與其他方法進行公平比較,將人臉圖像的特征維數都設置為25,50,75,100,200和300。本文方法的正則化參數設置為β= 1.1,η= 0.001和λ= 0.02。本節考慮文獻[13]中的3個場景來評估本文所提方法的性能。 (1)墨鏡遮擋:本文從每個人第1階段的人臉圖像中選取7幅無遮擋的圖像和1幅戴墨鏡的圖像作為訓練集樣本圖像,選取第2階段中無遮擋的人臉圖像和2個階段中剩余的所有戴墨鏡的圖像作為測試集圖像。每個人均選取了8幅訓練圖像和12幅測試圖像。墨鏡的遮擋面積約為人臉圖像的20%。圖3給出了各方法隨特征維數變化的識別率曲線。 Figure 3 Recognition rate of each method changing with feature dimension in the case of sunglasses occlusion圖3 墨鏡遮擋情況下各方法隨特征維數變化的識別率 (2) 圍巾遮擋:在AR數據庫中被圍巾遮擋的圖像,圍巾的遮擋面積約為人臉圖像的40%。和墨鏡遮擋情況類似,從第1階段的人臉圖像中選取7幅無遮擋的圖像和1幅圍巾遮擋的圖像作為訓練集樣本;選擇第2階段無遮擋的圖像和2個階段中剩余的所有帶有圍巾遮擋的圖像組成測試集,也是每個人一共8幅訓練樣本和12幅測試樣本。圖4給出了各方法隨特征維數變化的識別率曲線。 Figure 4 Recognition rate of each method changing with feature dimension in the case of scarf occlusion圖4 圍巾遮擋情況下各方法隨特征維數變化的識別率 Figure 5 Recognition rate of each method changing with feature dimension in the case of sunglasses and scarf occlusion圖5 墨鏡+圍巾遮擋情況下各方法隨特征維數變化的識別率 (3)墨鏡+圍巾遮擋:選擇9幅來自第1階段的圖像作為訓練集樣本,其中包括7幅無遮擋的人臉圖像、1幅戴著墨鏡、另1幅戴著圍巾的人臉圖像進行訓練。選擇第2階段的無遮擋圖像加上來自2個階段剩余的所有帶遮擋的圖像作為測試集用于測試。圖5給出了各方法隨特征維數變化的識別率曲線。表1給出了3種場景下幾種方法最高的人臉識別結果。 Table 1 Comparison of the highest face recognition rate between the DLMR-CRC method and several other methods on the AR database表1 在AR數據庫上,DLMR-CRC方法與其它幾種方法的最高人臉識別率對比 % 由表1和圖3~圖5可以看出,在3種場景中,DLMR-CRC方法在各個維度上的識別率在大多數情況下都高于其他方法的。通過與DLMR-SRC方法的對比,3種情況下都是略高于該方法,說明DLMR-CRC使用CRC的方法更能準確地描述人臉圖像的誤差遮擋。與LMR-CRC方法的對比結果表明,DLMR-CRC方法通過引入結構非相關性的約束能更好地增強低秩恢復數據的判別能力。另外還可以看出,DLMR-CRC的識別率遠高于LRC和NN的,說明在訓練樣本和測試樣本均受到遮擋時,本文方法的識別性能遠遠優于經典的線性回歸分類器和最近鄰分類器。 本節在Extended Yale B數據庫上通過隨機添加遮擋塊,模擬不同程度的遮擋進行實驗,驗證所提方法在不同光照強度下對遮擋的識別性能。Extended Yale B數據庫主要包括來自38個人的2 414幅人臉的正面圖像,根據光照程度,分為5個子集,包括子集Ⅰ、子集Ⅱ、子集Ⅲ、子集Ⅳ和子集Ⅴ,這5個子集光照強度依次增加。本節實驗選取集Ⅰ、子集Ⅱ和子集Ⅲ中一共1 170幅人臉圖像作為測試集,為了使人臉識別更具挑戰性,訓練集選取具有極端光照的子集Ⅲ和子集Ⅳ并進行如下設置: 實驗1選取子集Ⅲ中所有的人臉圖像作為訓練集1,針對每幅人臉圖像分別添加0%~70%的不相關隨機塊遮擋共453×8=3264幅圖像,部分實驗樣本如圖6a所示。 實驗2選取子集Ⅳ中所有的人臉圖像作為訓練集2,針對每幅人臉圖像分別添加0%~70%的不相關隨機塊遮擋共524×8=4192幅圖像,部分實驗樣本如圖6b所示。 Figure 6 Part of the experimental samples in Extended Yale B database圖6 Extended Yale B數據庫中的部分實驗樣本 實驗1和實驗2中向每個測試圖像中隨機添加一個不相關的圖像,其大小由遮擋率決定,每幅測試圖像的遮擋位置是隨機選擇的,所有圖像裁剪為96×84像素。選擇DLMR-CRC正則化參數β=1.1,η= 0.001,λ=0.005。圖7分別給出了在不同比例塊遮擋情況下,各方法的平均識別率隨著遮擋比例的變化情況。 Figure 7 Recognition rate of each method on training set 1 and training set 2 varies with the occlusion rate圖7 訓練集1和訓練集2上各方法識別率隨遮擋比例變化 通過圖7a和圖7b可看出,在無遮擋或遮擋面積較小時,本文所提DLMR-CRC方法和其他方法一樣都具有較高的識別率。隨著隨機塊遮擋面積的增大,在實驗1中光照條件相對較好時,DLMR-CRC方法和其他對比方法一樣,整體識別性能都有所下降,但DLMR-CRC仍然具有明顯優勢,識別率最高可達64%左右,比DLMR-SRC和LMR-CRC性能分別提升了3%和9%左右,值得注意的是,比經典的NN和SRC方法性能分別提升了33%和21%。通過圖7b分析可以看出,在極端光照的訓練集2上,雖然隨著隨機遮擋塊比例的逐漸增加,所有的識別方法性能都急劇下降,其中本文所提方法和DLMR-SRC、LMR-CRC略占優勢,盡管最高識別率僅有38%,但是也比其他對比方法有明顯的提升,說明結構非相關性的約束能更好地增強低秩恢復數據的判別特性,并且結合協同表示的分類方法降低了算法運行的復雜度,在一定程度上緩解了因光照變化和遮擋為人臉識別帶來的干擾。 本文針對訓練樣本和測試樣本均受到噪聲污染的情況,為解決樣本數據來自不同子空間時,低秩矩陣恢復算法不能很好地保持原始數據的局部幾何結構,進而不能有效地恢復出干凈的低秩人臉圖像和誤差矩陣圖像的問題,提出了一種基于判別低秩矩陣恢復的協同表示遮擋人臉識別方法,并在2個常見的人臉數據庫上進行人臉識別實驗的驗證。該方法該通過結構非相關性約束項的引入,不僅在保持原始數據的局部幾何結構的同時增強了恢復的低秩數據的判別能力,而且還通過學習低秩投影矩陣對受污損的測試樣本進行了修正,最后結合CRC較高識別精度與低運算復雜度的優勢,提升了DLMR-CRC方法對嚴重的污損或光照變化的破壞的魯棒性,具有更好的識別性能,提高了遮擋人臉的識別率,使其在現實世界應用中的遮擋人臉識別更實用。
3.3 低秩投影矩陣

4 實驗驗證分析
4.1 AR數據庫





4.2 Extended Yale B 數據庫


5 結束語