本發(fā)明涉及計算機視覺、模式識別、生物特征識別等技術(shù)領域,特別涉及一種基于拓撲保持的解析型字典學習模型的人臉識別方法(topologypreservinganalysisdictionarylearning,簡稱tp-adl)。
背景技術(shù):
生物特征識別技術(shù)是使用人體的某些生物特性來對個體的身份進行識別的先進技術(shù)。因為每個人的生物特征都是不同的,而且不會輕易改變,滿足個體識別的條件。這種技術(shù)通常采用的方法是先對個體采取某個或某些生物特征,然后將其與已有數(shù)據(jù)庫中的樣本進行比較,判斷是否符合。與傳統(tǒng)的以證件、密碼等為對象的識別技術(shù)相比,以人臉識別為代表的生物特征識別技術(shù)可以做到不與識別人發(fā)生任何肢體接觸,可以不驚動對象,只需要采用一般的攝像頭就可以采集,成本很低,因此人臉識別技術(shù)成為眾多學者們重點研究的對象之一。
人臉識別的研究始于20世紀60年代,并且隨著計算機硬件和網(wǎng)絡的發(fā)展,在幾十年中取得了長足的進步。人臉識別技術(shù)正在視頻監(jiān)控、證件驗證、刑偵破案等社會生活的諸多方面發(fā)揮著巨大作用。常規(guī)的人臉識別技術(shù)主要包含2個主要過程,即訓練過程和測試過程。訓練過程有3個處理環(huán)節(jié),分別是訓練圖像預處理、訓練圖像特征的提取、分類模型的建立。測試過程有3個處理環(huán)節(jié),分別是測試圖像預處理、測試圖像特征的提取、使用訓練階段得到的分類模型對測試圖像進行分類預測。如果要改進人臉識別技術(shù),提升識別準確度,可以對人臉圖像預處理的方法進行改進,也可以對提取人臉圖像特征的方法進行創(chuàng)新,還可以選擇適合人臉圖像特征的分類模型和分類算法。如何增加各環(huán)節(jié)處理方法的適用性,即不斷改進這些處理算法以改善分類方法的整體性能,這仍是目前人臉識別研究領域的重點。
稀疏表示理論與人臉識別的結(jié)合是近些年被提出的。稀疏表示理論是將待預測的圖像用訓練集中的圖像進行線性組合表示,然后對線性組合的系數(shù)進行分類判決,達到預測其類別的目的。與主成分分析(pca)等傳統(tǒng)方法不同,稀疏表示是基于i0或i1范數(shù)的求解過程,重點是找到線性組合的系數(shù)即待測人臉圖像的稀疏編碼。這種思路與之前的人臉識別方法有很大的不同,而且稀疏表示理論的優(yōu)點在于對于面部有掩蓋的情況下,可以有更好的分辨效果,因此這種理論在人臉識別中的應用受到越來越多的學者的關(guān)注。
稀疏表示理論的中心思想是:首先構(gòu)造一個過完備字典,其中包含足夠的具有代表性的樣本,然后對于任意一個樣本(一般是一個向量),用這個字典中少數(shù)幾個樣本來線性加和表示,這樣就可以得到一個非零元素很少的編碼向量,達到稀疏表示的目的。稀疏編碼的性能在很大程度上依賴于字典的學習,在稀疏表示應用到人臉識別的初期,大多是用預設的固定字典,如:訓練集特征組成的字典、curvelet基組成的字典、gabor基組成的字典等,這樣的字典在不同數(shù)據(jù)集上的重構(gòu)效果不一,對不同數(shù)據(jù)集的識別準確率也波動很大。因此,一個根據(jù)訓練數(shù)據(jù)集自適應學習得到的字典往往比預設的固定字典更加符合人臉識別的需求。
如今已有很多優(yōu)秀算法來快速學習一個過完備字典,但是最初提出的傳統(tǒng)字典學習模型并不是應用于分類識別的,而是應用于信號重構(gòu)的相關(guān)問題。為了利用字典學習解決人臉識別問題,研究者們提出了兩類方法,這些方法將傳統(tǒng)的字典學習修正為滿足人臉識別需求的監(jiān)督字典學習:一類是直接學習具有判決力的字典,另一類是使稀疏編碼具有區(qū)分性,繼而使得到的字典具有判決力。前者主要是利用重構(gòu)誤差來進行最終的人臉識別,后者主要是利用稀疏表示系數(shù)作為新的特征用于分類識別。
然而,學者們?yōu)榻鉀Q分類識別問題而提出的多種監(jiān)督字典學習模型都是學習一個綜合型字典,在學習階段需要求解基于線性加和表示的合成編碼過程。這種編碼過程在求解時使用迭代的方式進行,非常耗時,嚴重影響了人臉識別的實際使用。此外,這些監(jiān)督字典方法過于強調(diào)編碼的稀疏性在分類識別任務中的作用,忽視了在原始特征數(shù)據(jù)中蘊含的結(jié)構(gòu)信息,而這些結(jié)構(gòu)信息往往對于分類模型的識別準確率有很大的影響。
作為字典學習的另外一個主流方向,解析型字典學習模型引起了國內(nèi)外學者的高度關(guān)注。解析型字典是綜合型字典的對偶形式,它的目標不是學習一組用于線性加和表示的基,而是學習一個映射矩陣,使得信號映射以后的表示是稀疏的。解析型字典學習模型具有良好的信號表示能力,但目前國內(nèi)外的研究僅僅停留在解析型字典對信號進行重構(gòu)的應用上。
技術(shù)實現(xiàn)要素:
本發(fā)明的目的是提出一種基于拓撲保持的解析型字典學習模型的人臉識別方法,以解決傳統(tǒng)的基于稀疏表示和字典學習的人臉識別方法對圖像結(jié)構(gòu)信息和判決信息利用不夠充分、學習過程的時間復雜度較高等問題。
為了實現(xiàn)本發(fā)明的目的,本發(fā)明提供了一種基于拓撲保持的解析型字典學習模型的人臉識別方法,
步驟s1,為了方便操作,首先對訓練集和測試集樣本進行預處理,中心裁剪得到w×h的像素部分,然后用隨機矩陣
步驟s2,優(yōu)化學習得到解析型字典ω:按照提出的拓撲保持的解析型字典學習模型對訓練集數(shù)據(jù)建模,通過兩步交替迭代的優(yōu)化方式最小化目標函數(shù),學習解析型字典ω和編碼系數(shù)x;
步驟s3,獲得訓練集和測試樣本的編碼系數(shù):用訓練好的解析型字典ω根據(jù)x=ωy對訓練集和測試樣本同時進行編碼;
步驟s4,將測試樣本的編碼系數(shù)、訓練集的編碼系數(shù)及其對應的類別標簽信息一起輸入分類器,得到最終分類結(jié)果。
其中,在步驟s1中,對訓練集和測試集樣本進行相同的中心裁剪,將獲得的圖像拉伸成列向量,然后用隨機矩陣對訓練集和測試集樣本的列向量進行映射,其中:隨機矩陣每個元素都是先獨立取樣于零均值的正態(tài)分布,再將其每行都標準化到單位長度。
其中,在步驟s2中,求解模型為:
上述目標函數(shù)中:α,β為人工設置的權(quán)重參數(shù),用于調(diào)節(jié)各項之間的相對大小關(guān)系;
其中,第一部分是基本的解析型字典學習模型:
其中,
其中,第二部分tr(ωylytωt)是拓撲保持項,拓撲保持需要保持的是影響k近鄰(knn)分類性能的原始特征的相對遠近程度(近鄰排序),原始空間任意兩個特征向量yu和yv的距離設為suv,編碼空間對應的距離設為tuv,拓撲保持目標函數(shù)為:
其中:矩陣si為反對稱矩陣,其位置(u,v)的元素值是原始空間兩個距離的差siu-siv,利用反對稱矩陣的性質(zhì),對公式(3)進行化簡,可得:
可令wij∑usi(u,j),則公式(4)可繼續(xù)化簡為:
此處的矩陣w即可看作一個權(quán)重矩陣(w不對稱,但是可以分解成對稱矩陣w+與反對稱矩陣w-的加和),可以求取l=s+-w+,其中s+矩陣定義為對角陣,第i個對角元素值s+,ii等于w+矩陣的第i行所有元素的和,由此,可以推導得到拓撲保持項的拉普拉斯矩陣形式的約束:
為了同時保持近鄰特性,我們采取以下方式為每個yi計算wij:
其中n(yi)是yi的k近鄰集合,考慮到解析型字典在編碼過程中的重要性,也為了更直接的學習字典ω,我們將公式(6)中的x替換為ωy,繼而得到拓撲保持項的最終形式;
第三部分
其中,在步驟s2中,目標函數(shù)(1)是非凸問題,考慮求解它的凸松弛形式(8):
目標方程(8)是一個雙凸問題,它的求解需要通過一個兩步的交替迭代優(yōu)化策略來完成,具體的過程總結(jié)如下:
s21,對于訓練集中的人臉特征,通過公式(7)計算得到矩陣w并求出拉普拉斯矩陣l。對x進行初始化,令其初始值為h,接下來,進入交替迭代過程,循環(huán)s22和s23直到收斂或達到迭代次數(shù)要求;
s22,固定編碼系數(shù)x,更新解析型字典ω;這時,目標函數(shù)(8)就可以寫成如下形式:
這個目標函數(shù)是有閉式解的,可令其一階導數(shù)為0,推得:
ω*=xyt[y(i+αl)yt+γi]-1(10)
為方便表示,將不同大小的單位陣均用i來表示;
s23,固定解析型字典ω,更新編碼系數(shù)x。這時,目標函數(shù)(8)就化為:
這個目標函數(shù)也是有閉式解的,可令其一階導數(shù)為0,推得:
設定β為一個很大的數(shù),使得x能夠盡可能逼近稀疏的標簽矩陣h;
經(jīng)過上述優(yōu)化過程之后,可以得到最終的訓練結(jié)果,包括解析型字典
其中,在步驟s3中,模型訓練后,依照x=ωy用訓練好的解析型字典ω對訓練集和測試樣本同時進行編碼,完成以上編碼過程,可以獲得訓練集和測試樣本在字典上的編碼系數(shù)。
其中,在步驟s4中,將測試樣本的編碼系數(shù)、訓練集的編碼系數(shù)及其對應的類別標簽信息一起輸入k近鄰(knn)分類器,得到最終分類結(jié)果。
與現(xiàn)有技術(shù)相比,本發(fā)明的有益效果為,對于實際應用環(huán)境下的人臉識別問題,有3個環(huán)節(jié)至關(guān)重要,按先后順序依次為預處理、特征提取、分類模型訓練與預測。本發(fā)明針對后兩個環(huán)節(jié),尤其是第3個環(huán)節(jié)的分類模型,進行了有益創(chuàng)新。本發(fā)明提出一種基于拓撲保持的解析型字典學習模型的人臉識別方法,將人臉特征的結(jié)構(gòu)信息與判決信息放在一個統(tǒng)一的解析型字典學習框架下學習,使得最終的人臉識別準確率與運行速度均得到明顯提高。
附圖說明
圖1是本發(fā)明的方法流程圖;
圖2是ar數(shù)據(jù)庫中的人臉圖像舉例;;
圖3圖3是本發(fā)明在ar數(shù)據(jù)庫上在識別準確率、訓練時間、平均每張圖像測試時間等3個指標上與其他方法的對比圖。
具體實施方式
為了使本發(fā)明的目的、技術(shù)方案及有益效果更加清楚明白,以下結(jié)合實施例,對本發(fā)明進行進一步詳細說明。應當理解為此處所描述的具體實施例僅僅用以解釋本發(fā)明,并不用于限制本發(fā)明的保護范圍。
本發(fā)明提出對現(xiàn)有的解析型字典學習模型進行改進,既借鑒綜合型字典學習在分類識別應用中的多種判決模型,又引入前人都忽視的原始特征數(shù)據(jù)中蘊含的結(jié)構(gòu)信息。這種將人臉特征的結(jié)構(gòu)信息與判決信息放在一個統(tǒng)一的解析型字典學習框架下學習的方案,使得人臉特征的編碼系數(shù)可以更有利于最后的識別過程,從而獲得最佳的識別效果。
本發(fā)明通過拓撲保持的解析型字典學習模型將人臉特征的結(jié)構(gòu)信息與判決信息放在一個統(tǒng)一的框架下學習,使得學習到的解析型字典最能夠代表人臉的本征特征,對應的編碼也具有更強的判別性。
如圖1所示,本發(fā)明提供了一種基于拓撲保持的解析型字典學習模型的人臉識別方法,該方法包括:
步驟s1,為了方便操作,首先對訓練集和測試集樣本進行預處理,分別去掉邊緣處5-10個像素,得到中心w×h的像素部分,假設m=wh,將每個圖像拉伸成m×1的列向量。然后用隨機矩陣
步驟s2,對訓練集
上述目標函數(shù)中:α,β為人工設置的權(quán)重參數(shù),用于調(diào)節(jié)各項之間的相對大小關(guān)系;
其中,第一部分是基本的解析型字典學習模型,如公式(2):
其中,
其中,第二部分tr(ωylyrωt)是拓撲保持項,拓撲保持需要保持的是影響k近鄰(knn)分類性能的原始特征的相對遠近程度(近鄰排序),即針對″哪個更近″,而不是單純的″哪個是近鄰″。稀疏編碼要保持原始特征的拓撲結(jié)構(gòu),原始空間任意兩個特征向量yu和yv的距離設為suv,編碼空間對應的距離設為tuv,拓撲保持目標函數(shù)為:
其中:矩陣si為反對稱矩陣,其位置(u,v)的元素值是原始空間兩個距離的差siu-siv,利用反對稱矩陣的性質(zhì),對公式(3)進行化簡,可得:
可令wij∑usi(u,j),則公式(4)可繼續(xù)化簡為:
此處的矩陣w即可看作一個權(quán)重矩陣(w不對稱,但是可以分解成對稱矩陣w+與反對稱矩陣w-的加和),可以求取l=s+-w+,其中s+矩陣定義為對角陣,第i個對角元素值s+,ii等于w+矩陣的第i行所有元素的和,由此,可以推導得到拓撲保持項的拉普拉斯矩陣形式的約束:
為了同時保持近鄰特性,我們采取以下方式為每個yi計算wij:
其中n(yi)是yi的k近鄰集合,考慮到解析型字典在編碼過程中的重要性,也為了更直接的學習字典ω,我們將公式(6)中的x替換為ωy,繼而得到拓撲保持項的最終形式;
第三部分
目標函數(shù)(1)是非凸問題,考慮求解它的凸松弛形式(8):
目標方程(8)是一個雙凸問題,它的求解需要通過一個兩步的交替迭代優(yōu)化策略來完成,具體的過程總結(jié)如下:
s21,對于訓練集中的人臉特征,通過公式(7)計算得到矩陣w并求出拉普拉斯矩陣l。對x進行初始化,令其初始值為h,接下來,進入交替迭代過程,循環(huán)s22和s23直到收斂或達到迭代次數(shù)要求;
s22,固定編碼系數(shù)x,更新解析型字典ω;這時,目標函數(shù)(8)就可以寫成如下形式:
這個目標函數(shù)是有閉式解的,可令其一階導數(shù)為0,推得:
ω*=xyt[y(i+αl)yt+γi]-1(10)
為方便表示,將不同大小的單位陣均用i來表示;
s23,固定解析型字典ω,更新編碼系數(shù)x。這時,目標函數(shù)(8)就化為:
這個目標函數(shù)也是有閉式解的,可令其一階導數(shù)為0,推得:
我們在實驗中將會設定β為一個很大的數(shù),使得x能夠盡可能逼近稀疏的標簽矩陣h;
經(jīng)過上述優(yōu)化過程之后,可以得到最終的訓練結(jié)果,包括解析型字典
步驟s3,在模型訓練之后,雖然得到了訓練集對應的編碼系數(shù)x,但是該編碼系數(shù)由于經(jīng)過優(yōu)化而過于理想化,測試樣本由于類別信息未知而并不能進行類似的優(yōu)化,因此會造成訓練樣本與測試樣本編碼空間的″失配″,這會對測試樣本的分類產(chǎn)生影響,容易使得分類準確率降低。因此,我們一視同仁地,模型訓練后,依照公式(13)用訓練好的解析型字典ω對訓練集和測試樣本同時進行編碼,完成以上編碼過程,可以獲得訓練集和測試樣本在字典上的編碼系數(shù)。
x=ωy(13)
步驟s4中,將測試樣本的編碼系數(shù)、訓練集的編碼系數(shù)及其對應的類別標簽信息一起輸入k近鄰(knn)分類器,得到最終分類結(jié)果。
實施例:
為了詳細說明本發(fā)明的具體實施方式及驗證本發(fā)明的有效性,我們將本發(fā)明提出的方法應用于一個公開的人臉數(shù)據(jù)庫,即ar人臉數(shù)據(jù)庫。該數(shù)據(jù)庫包含126個人的4000佘張彩色圖像。這些圖像擁有較多的臉部變化,如不同的光線情況、不同的表情、不同的臉部遮擋(墨鏡和圍巾)等,這樣使得實驗更具有挑戰(zhàn)性。圖2展示了我們所使用的圖像,從中可以明顯看出各種臉部的變化。我們使用由50個男人50個女人的2600張圖片構(gòu)成的數(shù)據(jù)子集。對于每個人的圖像,我們隨機選擇20張進行訓練,另外6張進行測試。每張人臉圖像經(jīng)過預處理后大小為165×120,使用隨機矩陣映射得到540維列向量作為訓練和測試的輸入特征。
按照之前介紹的技術(shù)細節(jié)中的步驟s2,我們首先將所有訓練集數(shù)據(jù)輸入模型進行訓練,其中:計算w時每個樣本的近鄰數(shù)k設為5,權(quán)重參數(shù)α和γ分別為0.001和0.1,而β被經(jīng)驗地設為較大的整數(shù)10。訓練完畢得到解析型字典
圖3展示了我們的方法在識別準確率、訓練時間、平均每張圖像測試時間共3個指標上和其他方法的對比,其中dlsi來自于ignacioramirez的文章《基于結(jié)構(gòu)化不相干性和共同特征的字典學習模型的分類和聚類》,fddl來自于mengyang的文章《基于fisher判決字典學習模型的稀疏表示》,lc-ksvd來自于zhuolinjiang的文章《基于標簽一致k-svd的判決字典學習模型的稀疏編碼》,dpl來自于shuhanggu的文章《基于映射字典對學習的模式分類》。和這些比較流行的基于字典學習的方法比較,我們的方法在人臉識別的準確率和運行速度上有明顯的提高。因此,本發(fā)明在人臉識別的實際應用中是一種極為有效的方法,可以顯著地提高識別準確率并且節(jié)約運行時間。
以上所述的具體實施例,對本發(fā)明的目的、技術(shù)方案和有益效果進行了進一步詳細說明,所應理解的是,以上所述僅為本發(fā)明的具體實施例而已,并不用于限制本發(fā)明,凡在本發(fā)明的精神和原則之內(nèi),所做的任何修改、等同替換、改進等,均應包含在本發(fā)明的保護范圍之內(nèi)。