李思琳,邵玉斌
(昆明理工大學(xué)信息工程與自動(dòng)化學(xué)院,昆明 650051)
人臉檢測(cè)是指給定一幅圖像,然后判斷其中是否存在人臉,如果有人臉存在,則返回其位置坐標(biāo)和大?。?-6]。在 Viola[4]提出基于 Boosting 的快速人臉檢測(cè)系統(tǒng)后,許多學(xué)者對(duì)基于Boosting的算法提出了改進(jìn)。目前,另一種得到廣泛應(yīng)用的學(xué)習(xí)算法是AdaBoost。該算法的基本思想是:只要找到比隨機(jī)猜測(cè)略好的弱學(xué)習(xí)算法,就可以通過(guò)一定的方式構(gòu)造出任意精度的強(qiáng)學(xué)習(xí)算法。Ada-Boost算法能夠集成多個(gè)弱分類器而成為一個(gè)強(qiáng)分類器。文獻(xiàn)[2]指出,AdaBoost算法集成有限數(shù)量的弱分類器個(gè)不利于AdaBoost算法的分類精度進(jìn)一步改善。文獻(xiàn)[3]指出AdaBoost算法在理論上是可以集成無(wú)窮多個(gè)弱分類器。文獻(xiàn)[4]提出可用支持向量機(jī)的方法實(shí)現(xiàn)無(wú)窮維AdaBoost算法,即需要建立一個(gè)新的支持向量機(jī)核函數(shù),使此核函數(shù)集成無(wú)窮多個(gè)AdaBoost算法弱分類器,并用于電路故障檢測(cè)。本文在該算法的基礎(chǔ)上,將其方法用于人臉檢測(cè),在很大程度上提高了檢測(cè)精度,分類結(jié)果優(yōu)于一般的AdaBoost算法。
AdaBoost算法是一種基于弱分類器的分類算法。該算法根據(jù)分類結(jié)果來(lái)調(diào)整分類樣本的權(quán)值,具體為降低正確分類樣本的權(quán)值,增加錯(cuò)誤分類樣本的權(quán)值,以便在下一輪訓(xùn)練過(guò)程中,把主要精力放在前一次分類錯(cuò)誤的樣本上,最后挑選更新權(quán)值后樣本分類錯(cuò)誤最小的弱分類器,并把得到的弱分類器進(jìn)行線性組合,最終形成強(qiáng)分類器[5-6]。
給定一個(gè)訓(xùn)練集(xi,yi),…,(xL,yL),其中:xi是輸入的訓(xùn)練樣本;yi是分類類別標(biāo)志,yi∈(1,0)表示真假樣本。初始化過(guò)程中,對(duì)所有參加訓(xùn)練的樣本賦予相同的一個(gè)權(quán)值,再用Ada-Boost算法對(duì)參加訓(xùn)練的所有樣本進(jìn)行T輪訓(xùn)練。每一輪訓(xùn)練后,都要從很多個(gè)分類器中選擇誤差最小的那個(gè)作為一個(gè)弱分類器hi。在確定好所有的弱分類器后,再將它們進(jìn)行線性組合,構(gòu)成最終的強(qiáng)分類器[7]。當(dāng)T個(gè)弱分類器集成時(shí),AdaBoost分類器判別式如式(1)所示[8]。
其中:hi(x)為弱分類器;ωi為弱分類器對(duì)應(yīng)的權(quán)值;f(x)為最終強(qiáng)分類器??梢詫daBoost算法看作樣本映射到高維特征空間,在該高維空間求一個(gè)超平面,然后將2類樣本分開(kāi),且使2種樣本間的間隔達(dá)到最大,如圖1所示。
圖1 AdaBoost算法分類超平面
那么,若要使2種樣本間隔最大,即轉(zhuǎn)換為求式(2)的最大值問(wèn)題。
其中:yi(ωTxi+b)≥1;i=1,2,…,N;‖ω‖1=式(2)的優(yōu)化問(wèn)題可轉(zhuǎn)化為求
當(dāng)弱分類器數(shù)量趨于無(wú)窮多個(gè),即T→∞時(shí),式(1)可以寫(xiě)成式(3)的形式,這樣AdaBoost算法就集成了無(wú)窮個(gè)弱分類器。
SVM的基本思想是[15-19]:在二維2類線性可分情況下,會(huì)有許多線性分類器將這組數(shù)據(jù)分開(kāi),但只存在1個(gè)使該2類的分類間隔最大的分類器,那么這個(gè)分類器就是最優(yōu)分類超平面。wTx+b=0,x∈Rd,它對(duì)任意樣本點(diǎn)都滿足[9-10]:
這樣,任意樣本點(diǎn)到分類超平面的距離為margin=2/‖ω‖,因此使margin最大的超平面就是最優(yōu)分類超平面。要使分類間隔2/‖ω‖最大,就意味著2/‖ω‖最小,且為非零值,。即只有支持向量影響最終的劃分結(jié)果。
若訓(xùn)練樣本為非線性可分,可以通過(guò)非線性函數(shù)φ(x)將訓(xùn)練樣本集x映射到一個(gè)高維線性特征空間中,在這個(gè)空間中構(gòu)造最優(yōu)分類超平面,而這個(gè)超平面的維數(shù)可能是無(wú)窮大的[11]。在非線性情況下,分類超平面為ω×φ(x)+b=0。
最優(yōu)分類面問(wèn)題可描述為
其中:ξ為線性不可分問(wèn)題的松弛變量;C為懲罰參數(shù),使得
進(jìn)而可得到其對(duì)偶形式為
最后
式(8)中的 K(xi,xj)=φ(xi)φ(xj)為核函數(shù)。
從以上分析可以看出,支持向量機(jī)和AdaBoost算法之間是有很大聯(lián)系的??梢愿鶕?jù)這種關(guān)系,用支持向量機(jī)的方法實(shí)現(xiàn)無(wú)窮多個(gè)弱分類器的Ada-Boost算法。而要實(shí)現(xiàn)這設(shè)想,工作重點(diǎn)是要重新建立一個(gè)新的核函數(shù),而且該核函數(shù)可以集成無(wú)窮多個(gè) AdaBoost算法弱分類器[4]。
若弱分類器組為 S= {hα:α∈C[a,b ]},則支持向量機(jī)核函數(shù)定義為
其中:φx(α)=r(α)hα(x);α 是弱分類器 hα的參數(shù);r為實(shí)數(shù)。
把定義的新核函數(shù)代入支持向量機(jī)優(yōu)化算式和分類器算式,則支持向量機(jī)的優(yōu)化算式可寫(xiě)為
其中 ξi≥0,i=1,2,…,m。
支持向量機(jī)的分類表達(dá)式寫(xiě)為
α∈C[a,b],當(dāng)α取不同值時(shí),會(huì)產(chǎn)生不同的弱分類器 hα(x),同時(shí) α 在空間 C[a,b]內(nèi)連續(xù),所以 α 可以取無(wú)窮多個(gè)值,因此式(9)核函數(shù)可以集成無(wú)窮多個(gè)AdaBoost算法弱分類器。
基于無(wú)窮維AdaBoost算法大部分步驟可通過(guò)SVM的方法實(shí)現(xiàn),其具體步驟如下:
1)輸入一個(gè)訓(xùn)練樣本集(xi,yi),i=1,2,…,N和一個(gè)弱分類器組H。
2)根據(jù)定義,建立一個(gè)支持向量機(jī)的新的核函數(shù),并且賦給r一個(gè)常數(shù),此核函數(shù)集成無(wú)窮個(gè)AdaBoost算法弱分類器。
3)選擇支持向量機(jī)參數(shù)C。
4)將第2)步得到的支持向量機(jī)核函數(shù)代入支持向量機(jī)計(jì)算式,計(jì)算出a和b。
5)輸出判別式
本研究采用的訓(xùn)練樣本集是從MIT CBCL數(shù)據(jù)庫(kù)中選取的??紤]到大量的樣本將占用很多內(nèi)存空間,所以本文只選用了庫(kù)中的1 000幅人臉圖像,2 000幅非人臉圖像。但MIT CBCL數(shù)據(jù)庫(kù)中的人臉都是白種人臉圖像,所以又采集了500幅黃種人臉圖像,并將其標(biāo)準(zhǔn)化為19×19的尺寸。因此人臉圖像共1 500幅,非人臉圖像共2 000幅。本實(shí)驗(yàn)的測(cè)試環(huán)境為p4 2.80 GHz CPU,1G內(nèi)存,操作系統(tǒng)為Windows XP,在Matlab 7.0的平臺(tái)上編程實(shí)現(xiàn)。表1、圖2列出了基于本文提出的算法與現(xiàn)有算法在MIT+CMU人臉庫(kù)的檢測(cè)結(jié)果比較,可以看出本文的算法較AdaBoost算法在精度上要高一些。
表1 本文算法與傳統(tǒng)算法的對(duì)比
圖2 人臉檢測(cè)結(jié)果ROC曲線
圖3中所有的人臉總共為11個(gè),實(shí)際被檢測(cè)出為人臉的總共有10個(gè)。有1個(gè)人臉被漏檢,原因是漏檢的人是側(cè)面的,而本次實(shí)驗(yàn)的訓(xùn)練集都是正面的人臉。
可以看出本文的算法對(duì)于側(cè)面的人臉檢測(cè)情況不適用,但同時(shí)可以看出,對(duì)于微微低頭的人臉、小角度旋轉(zhuǎn)的人臉、戴眼鏡的人臉以及微笑的人臉采用本文算法都能被檢測(cè)出來(lái)??梢?jiàn),本文算法除精度高以外,魯棒性也得到了很大提升。
圖3 檢測(cè)結(jié)果
利用支持向量機(jī)的方法實(shí)現(xiàn)無(wú)窮維AdaBoost算法,即建立了一個(gè)新的支持向量機(jī)核函數(shù),使此核函數(shù)集成無(wú)窮多個(gè)AdaBoost算法弱分類器,從而實(shí)現(xiàn)對(duì)人臉的檢測(cè)。該算法在很大程度上提高了檢測(cè)精度和魯棒性,分類結(jié)果優(yōu)于傳統(tǒng)的Adaboost算法。
[1]任成娟,胡淑芳,劉崇文.子模式局部保持映射人臉識(shí)別算法[J].重慶理工大學(xué)學(xué)報(bào):自然科學(xué)版,2011,25(6):84-89.
[2]肖南峰,姚永剛.基于RBF神經(jīng)網(wǎng)絡(luò)的人臉識(shí)別算法[J].重慶理工大學(xué)學(xué)報(bào):自然科學(xué)版,2011,25(6):56-67.
[3]張南南,汪正祥.基于Gabor小波的人臉特征提取[J].自動(dòng)化與儀器儀表,2011(6):138-140.
[4]閆常浩.人臉識(shí)別算法[J].四川兵工學(xué)報(bào),2011(4):65-67.
[5]薛冰.人臉識(shí)別技術(shù)綜述[J].四川兵工學(xué)報(bào),2010(7):119-121.
[6]朱超平.基于人臉識(shí)別的門(mén)禁系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn)[J].重慶工商大學(xué)學(xué)報(bào):自然科學(xué)版,2011(4):390-393.
[7]Viola P,Jones M.Robust Real-Time Object Detection[C]//Proceeding of IEEE Workshop on SCTV.[S.l.]:[s.n.],2001.
[8]梁路宏,艾海舟,徐光祐,等.人臉檢測(cè)研究綜述[J].計(jì)算機(jī)學(xué)報(bào),2002,25(5):1-9.
[9]Viola P,Jones M.Fast and Robust Classification Using Asymmetric AdaBoost and a Detector Cascade[EB/OL].[2002-09-24].http//www.merl.com/people/viola/research/publications/2002.
[10]劉沖,張均東,曾鴻,等.基于支持向量機(jī)的無(wú)窮維AdaBoost算法及其應(yīng)用[J].儀器儀表學(xué)報(bào),2010,31(4):764-768.
[11]Hjelmas E,Low B K.Face detection:A survey[J].Computer Vision and Image understanding,2001,83(1):236-274.
[12]Yang M H,Kriegan D,Ahuja N.Detection faces in image:a survey[J].IEEE Transactions on Pattern Analysis and Machine Intelligence,2002,24(1):34-58.
[13]Saml A,Iyentgar P A.Automatic recognition and analysis of human faces and facial expressions:A Survey[J].Pattern Recognition,1992,25(1):65-77.
[14]Vapnik V N.Statistical learning Theory[M].Berlin:Springer,1998.
[15]鄔嘯.基于混合核函數(shù)的支持向量機(jī)[J].重慶理工大學(xué)學(xué)報(bào):自然科學(xué)版,2011,25(10):66-70.
[16]崔建國(guó).基于支持向量機(jī)的飛行器健康診斷方法[J].壓電與聲光,2009(2):266-271.
[17]鄔嘯.改進(jìn)的雙隸屬度模糊支持向量機(jī)[J].重慶師范大學(xué)學(xué)報(bào):自然科學(xué)版,2011(5):49-53.
[18]余珺.基于多核優(yōu)選的裝備費(fèi)用支持向量機(jī)預(yù)測(cè)法[J].四川兵工學(xué)報(bào),2011(6):118-119.
[19]張瑞環(huán).基于幾何算法的支持向量機(jī)分類方法[J].重慶工商大學(xué)學(xué)報(bào):自然科學(xué)版,2011(5):453-457.
[20]Cristianini N,Shawe-Taylor J.An introduction to support vector machines[M].Cambridge:Cambridge University Press,2000.
[21]白鵬,張喜斌,張斌,等.支持向量機(jī)理論及工程應(yīng)用實(shí)[M].西安:西安電子科技大學(xué)出版社,2008.
[22]Freund Y,Schapire R E.A decision-theoretic generalization of online learning and an application to boosting[C]//Proc Second European Conference on Computational Learning Theory.[S.l.]:[s.n.],1995:65-70.
[23]劉棟,周激流,郎方年,等.視頻圖像的實(shí)時(shí)人臉檢測(cè)系統(tǒng)[J].激光雜志,2007(2):52-54.