王鵬濤 王智文



摘 要:線性判別分析(LDA)方法在人臉識別特征提取中應用廣泛.針對其在應用方面存在的缺陷,本文提出一種基于粒子群優化(PSO)的LDA算法(PSO-LDA)的人臉識別算法.通過粒子群優化算法找尋到矩陣的最佳投影矢量,避免了直接對矩陣求特征值和特征向量,并通過多次迭代來解決投影空間中邊緣類相近樣本重疊問題.在ORL庫中進行對比實驗,實驗結果表明提出的方法抗噪性能好,能明顯提高人臉識別率.該算法具有識別穩定和便于實現的特點.
關鍵詞:線性判別分析;粒子群算法;最佳投影矢量;PSO-LDA
中圖分類號:TP317.4 文獻標志碼:A
0 引言
人臉識別是生物特征識別的一種,也是模式識別等領域中的前沿研究課題,因為其具有直接性,非接觸性,方便友好等特點,在鐵路、公安、銀行等眾多領域得到了廣泛的研究[1-2].目前,數字圖像處理技術在實際應用中廣泛使用[3],人臉識別越來越成為當前模式識別和人工智能領域的一個研究熱點[4].線性判別分析(LDA)方法作為一種經典的特征提取算法,由于其對光照、表情、姿態的敏感度較低,因而在人臉識別中得到廣泛使用[5].但在使用LDA算法時會遇到兩個方面的問題:1)求解復雜協方差矩陣的特征值和特征向量時,會遇到矩陣不可解的情況;2)存在邊緣類,使得投影空間中的相近樣本重疊的問題.針對這兩方面的缺陷,本文提出了一種基于粒子群優化(PSO)的LDA算法(PSO-LDA),用粒子群優化算法求矩陣的最佳投影矢量,避免了直接對矩陣求特征值和特征向量,通過多次迭代求解能很好地避免邊緣類問題.
1 相關理論
人臉識別方面的相關理論比較多,本文僅就經典的人臉特征提取算法的線性判別分析方法進行簡單介紹,并介紹用于優化該算法的粒子群優化算法.
1.1 傳統LDA算法簡介
線性判別分析(Linear Discriminant Analysis,LDA)是模式識別的經典算法之一[6].線性判別分析方法的基本思想是將高維模式樣本投影到最佳鑒別矢量空間,以達到抽取分類信息和壓縮特征空間維數的目的,使投影后的模式樣本在新的子空間中有最大的類間距離和最小的類內距離[7-8],即選擇使類間與類內離散度矩陣比值最大的特征來保證樣本數據在投影空間中有最佳的可分離性[9-10].分別用式(1)、式(2)和式(3)來定義類間離散度矩陣SB,類內離散度矩陣SW和目標函數Ja.
1.2 粒子群優化算法簡介
粒子群優化算法(Particle Swarm Optimization,PSO),是源于Kennedy博士和Eberhart博士對鳥群覓食的研究提出的進化算法[12],其中,首次研究是為了解決連續條件下的優化問題,隨著越來越多的問題出現在離散空間,粒子群的研究方向也朝著這方面轉變[13].鳥類在覓食時,每只鳥都不是直接去尋找食物,而是通過尋找距食物最近的鳥來進行下一步搜尋.因此,隨機產生一組粒子,每個粒子對應一個適應度的值,該值由適應度函數決定,而適應度函數用速度、位置和適應度的值來表征該粒子特征[14-16].算法通過式(4)和式(5)來進行速度更新和位置更新[17].
其中,為慣性權重,表示粒子對自身速度的記憶程度,在PSO算法中一般設為[0.3,1.2]之間的一個常數,r1,r2取區間[0,1]的隨機數,c1,c2是加速因子,為非負整數,c1是粒子跟蹤自己歷史最優值的權重系數,它表示粒子自身的認知,所以叫“自我認知”;c2是粒子跟蹤群體最優值的權重系數,它表示粒子對整個群體知識的認識,所以叫做“社會認知”,通常取c1=c2=1.494 45[18-19].pbest為個體極值,gbest為整個粒子群的全局極值,Xk記錄第k個粒子的當前位置,Vk記錄第k個粒子的當前速度,為了控制粒子因隨意亂跑而超出搜尋范圍,通常對粒子設置一個限度,Xk大小在[-xmax,xmax],Vk大小設置在[-vmax,vmax].當目標函數誤差達到要求或者迭代次數到達上限則算法終止.
進一步研究表明,慣性權重因子值與全局尋優能力成正比.值較大則全局尋優能力強,反之則全局尋優能力弱.但是,對于迭代算法而言,作為常數值引入到粒子群優化算法之中并不能很好地增強算法的全局尋優能力.為了得到更優的全局尋優能力同時又得到相對較小的慣性權重因子,故而慣性權重因子的取值方式得到了有效改進,其慣性權重因子轉變為動態值,用式(6)來計算.
式(6)中,t為當前的迭代次數,tmax為最大的迭代次數,(t)則代表了慣性權重因子在第t次迭代的值,t0是慣性權重的最初值,而tn則是慣性權重的最終值.
慣性權重因子(t)的引入使得標準粒子群優化算法在收斂的穩定性上得到了很大改善,經過大量的數據演算與近20年的技術融合,慣性權重因子(t)的取值從0.9遞減到0.4可以使得粒子群優化算法擁有較好的性能.慣性權重因子(t)對粒子群優化算法穩定性收斂的結果,使得粒子群優化算法成功地運用到了諸多實際問題的解決方案之中.
2 提出的PSO-LDA算法
Step1 初始化一簇粒子.根據數據復雜程度,設定迭代次數genmax=50,粒子群規模popsize=30,隨機位置Xk∈[-1,1]和隨機速度Vk=[-2,2].值得注意的是,粒子群優化算法中粒子的位置,為LDA算法的核心:投影矩陣A.因此,在設置投影矩陣大小時,需要考慮待優化矩陣,假設待優化的數據大小為n×m,其中m為樣本個數,n是樣本維數,為了達到降維的目的,就需要一個大小為d×m的投影矩陣,其中dStep3 對每個粒子,將其適應值與其經過的最好位置pbest作比較,如果較好,則將其作為當前的最好位置pbest.
Step4 對每個粒子,將其適應值與其經過的最好位置gbest作比較,如果較好,則將其作為當前的最好位置gbest.
Step5 根據式(4)、式(5)調整粒子速度和位置.若粒子陷入局部最優,返回Step 1.
Step6 未達到結束條件則轉Step 2.
Step7 迭代終止,即達到最大迭代次數.
3 仿真實驗結果及分析
本文使用ORL數據庫進行實驗,該庫中共有40個不同性別、不同年齡的對象,每個對象10幅人臉圖像,共計400幅圖像,大小為112×92,256個灰度級,其中,每個對象的人臉表情和姿態均有變化,包括笑、不笑,戴眼鏡、不帶眼鏡等.圖2選取了ORL數據庫中部分人臉圖像[20].實驗時,為提高識別速度,圖片大小壓縮為19×15,將后2幅圖像作為測試樣本,其余8幅圖像作為訓練樣本,計算傳統LDA算法和PSO-LDA算法識別率.然后將訓練樣本逐次遞減,測試樣本不變,重新計算識別率.LDA和PSO-LDA識別率如圖3所示.從圖3可以看出不同訓練樣本數目下,PSO-LDA識別率均值遠遠大于LDA識別率,LDA平均識別率為36.25%,PSO-LDA平均識別率為94%.隨著訓練樣本數目的增加PSO-LDA識別率基本穩定,而傳統LDA算法識別率卻波動較大,可以看出提出算法對小樣本問題有所改善.但當只將一幅人臉圖像作為訓練樣本時,PSO-LDA識別率略低于傳統LDA,因為當把一幅人臉圖像作為訓練樣本計算類內距SW時,樣本類均值即為樣本值,所以計算出的SW為零矩陣,則導致PSO-LDA算法中目標函數出現錯誤,識別率降低.
為了驗證PSO-LDA的可行性,測試了不同圖片大小的識別率,采用LDA和PSO-LDA識別率最高時的訓練樣本圖像數,分別改變照片大小為5×4,10×8,15×15,19×15,25×25,38×30,再次計算LDA和PSO-LDA算法識別率,實驗結果如圖4所示.實驗結果表明,改變圖像分辨率大小時,PSO-LDA均有較高識別率,LDA識別率波動較大,穩定性差.在圖像大小為15×15時,兩種算法均有較好表現,由此可以看出,圖像維數大小對識別率有直接影響,如何準確地選取圖像維數有進一步研究的意義.
在PSO-LDA算法中,終止條件為達到迭代次數.使用相同的訓練樣本和測試樣本,設定不同的迭代次數,觀察對識別率的影響,實驗結果如圖5所示.單獨改變迭代次數,識別率也有不同,因此,在使用本文提出算法進行人臉識別時,選擇合適的迭代次數也能提高算法識別率.
從前面3次實驗能夠看出PSO-LDA算法有很好的效果,為了進一步驗證本文提出算法的魯棒性,分別加入椒鹽噪聲、高斯白噪聲、泊松噪聲、斑點噪聲,圖6繪制在不同訓練樣本數下加入不同噪聲的識別率.對比圖1無噪聲實驗,可以看出,加入不同噪聲時的識別率同無噪聲時的識別率近似,上下波動在5%,同樣有較高的識別率.因此,本文提出的算法具有良好的魯棒性.
從4次實驗結果來看,本文提出的PSO-LDA算法在ORL數據庫上的表現均優于傳統LDA算法,不僅在識別率上有很大提高,而且有良好的魯棒性.
4 結語
本文通過介紹傳統LDA算法和PSO算法,并將兩者結合提出PSO-LDA算法.通過PSO算法求解LDA中的投影矩陣,改善了LDA算法的小樣本識別率,解決了傳統LDA中復雜繁瑣的協方差矩陣的求解問題,同時體現出PSO-LDA的方便、快捷,而且在識別效果上看識別率得到了明顯提高,有良好的魯棒性并且穩定.實驗結果表明,這種算法在人臉識別方面表現優良,而且通過研究也提出更高的要求,如何選擇合適的圖像大小和迭代次數使識別率再提高成為今后研究的重點.
參考文獻
[1] ZHOU C J,WANG L,ZHANG Q,et al. Face recognition based on PCA image reconstruction and LDA[J]. Optik-International Journal for Light and Electron Optics,2013,124(22) : 5599-5603.
[2] MARVADI D,PAUNWALA C,JOSHI M,et al. Comparative analysis of 3D face recognition using 2D-PCA and 2D-LDA approaches[C]//Proceedings 2015 5th Nirma University International Conference on Engineering,NUiCONE 2015.US:Institute of Electrical and Electronics Inc,2015.
[3] 俞昊,林川,譚光興,等. 視覺注意機制與Canny算子結合的目標輪廓檢測方法[J].廣西科技大學學報, 2016,27(2):87-92.
[4] 周德龍,高文,趙德斌. 基于奇異值分解和判別式KL投影的人臉識別[J].軟件學報,2003,14(4):783-789.
[5] 周柏清,任勇軍. LDE融合光譜回歸分類的光照變化人臉識別[J]. 計算機工程與應用,2014,50(11):154-158.
[6] PASAD M M. 1D-LDA verses 2D-LDA in online hadwriting recognition[C]//2014 International Conference on Circuits,Communication,Control and Computing,IEEE ICC 2014.US:Institute of Electrical and Electronics Inc,2014.
[7] 董曉慶,陳洪財. 基于子模式行列方向二維線性判別分析特征融合的特征提取[J].計算機應用,2014,34(12):3593-3598.
[8] BANSAL A,MEHTA K,ARORA S. Face recognition using PCA and LDA algorithm[C]//International Conference on Advanced
Computing &Communication Technologies.US:Institute of Electrical and Electronics Inc,2012.
[9] CLEMMENSEN L,HASTIE T,WITTEN D,et al. Sparse discriminant analysis[J]. Technometrics,2011,53 (4):406-413.
[10] HASTIE T,BUJA A,TIBSHIRANI R. Penalized discriminant analysis[J].Annals of Statistics,1995,23(1):73-102.
[11] LU G F,ZOU J,WANG Y. Incremental complete LDA for face recognition[J]. Pattern Recognition,2012,45 (7):2510–2521.
[12] KENNEDY J,EBERHART R.Particle swarm optimization[C]//IEEE International Conference on Neural Networks,ICNN 1995.
US:Institute of Electrical and Electronics Inc,1995.
[13] AOKI T,ARANHA C,KANOH H.PSO algorithm with transition probability based on hamming distance for graph coloring problem[C]//2015 IEEE International Conference on Systems.US:Institute of Electrical and Electronics Inc.2015.
[14] 唐俊. PSO 算法原理及應用[J]. 計算機技術與發展,2010,20(2):213-216.
[15] 張利鳳.粒子群優化算法及其應用[D].重慶:重慶大學,2012.
[16] MARINI F,WALCZAK B. Particle swarm optimization(PSO). A tutorial[J]. Chemometrics and Intelligent Laboratory Systems.
2015,149:153-165.
[17]皮倩瑛,葉洪濤.一種動態調節慣性權重的粒子群算法[J].廣西科技大學學報,2016,27(3):26-32.
[18] DADGAR M,JAFARI S,HAMZEH A. A PSO-based multi-robot cooperation method for target searching in unknown environments[J]. Neurocomputing,2016,177(C):62-74.
[19] YAN W.Improved discrete particle swarm optimization and application in attribute reduction[D].Harbin:Harbin Engineering University,2011.
[20] ATT Laboratories Cambridge.The ORL Database of Faces[DS/OL].(2015)[2015-07-12].http://www.cam-orl.co.uk/ facedatabase.html.
Abstract:The method of linear discriminant analysis (LDA) is widely used in feature extraction of face recognition. In view of its defects in application, a LDA face recognition algorithm based on particle swarm optimization (PSO) is proposed in this paper. The eigenvalues and eigenvectors of matrix are avoided to calculate directly by using particle swarm optimization algorithm to find the best projection vectors of matrix, and the overlapping problem of similar samples of the edge class in the projection space is solved through several iterations. Experiments are conducted using ORL face database, the results show that the proposed method has good anti-noise performance and can significantly improve the rate of face recognition. The proposed method have a better stability, and easy to realize.
Key words: linear discriminant analysis; particle swarm optimization algorithm; best projection vectors; PSO-LDA
(學科編輯:黎 婭)