王冉
(西安職業(yè)技術(shù)學(xué)院 陜西 西安 710032)
基于Android平臺(tái)人臉識(shí)別算法的應(yīng)用
王冉
(西安職業(yè)技術(shù)學(xué)院 陜西 西安 710032)
研究的是基于Android平臺(tái)人臉識(shí)別算法的應(yīng)用,針對(duì)人臉識(shí)別方法進(jìn)行研究,以提高識(shí)別的準(zhǔn)確率和速度為目的,選用Haar特征提取的方法作為人臉檢測(cè)的主要方法,選用Adaboost算法作為人臉識(shí)別的主要算法。在研究過(guò)程中出現(xiàn)的難點(diǎn)有人臉的檢測(cè)受到外界影響,人臉的檢測(cè)誤差率較大,采用增加分類器將多個(gè)弱分類器級(jí)聯(lián)為強(qiáng)分類器以優(yōu)化算法,本設(shè)計(jì)已經(jīng)測(cè)試在Android手機(jī)上測(cè)試成功,同一人不同臉的近似度在90%左右。
人臉檢測(cè);人臉識(shí)別;Haar特征;Adaboost算法
人臉識(shí)別是先要對(duì)人的臉部特征進(jìn)行信息采樣,再充分利用機(jī)器識(shí)別技術(shù)進(jìn)行人臉識(shí)別,與其他人體生物特征相比,用戶及研究人員更容易獲取人臉信息(可以通過(guò)攝像頭等非接觸的方式獲取),人臉識(shí)別在身份驗(yàn)證、視頻監(jiān)控、網(wǎng)絡(luò)安全等基于圖像識(shí)別和移動(dòng)通信等方面有著廣泛的應(yīng)用,是一項(xiàng)具有挑戰(zhàn)性的課題。
人臉檢測(cè)與識(shí)別一直是研究者們的重點(diǎn)研究項(xiàng)目,已有的人臉檢測(cè)方法有基于先知的方法、特征不變量方法、模板匹配[1]的方法以及基于表象的方法等許多方法,或創(chuàng)新檢測(cè)方法或改進(jìn)現(xiàn)有的檢測(cè)方法,目的就是為了提高檢測(cè)的速率和準(zhǔn)確率。
隨著科技的進(jìn)步,人臉識(shí)別的方法也不斷更新,在分析一些主流的人臉識(shí)別方法[2](例如基于膚色的方法、基于子空間的方法、隱馬爾可夫模型方法、基于神經(jīng)網(wǎng)絡(luò)的方法、支持向量機(jī)方法以及基于Adaboost算法的人臉識(shí)別方法[3])的基礎(chǔ)上,經(jīng)過(guò)反復(fù)對(duì)比最終選擇出最優(yōu)的識(shí)別方法。
早期,研究人員在計(jì)算特征值的時(shí)候普遍采用的是使用圖像像素點(diǎn)的RGB值(即圖像的強(qiáng)度),圖像較大時(shí)計(jì)算量大、效率低、而且容易出錯(cuò),隨后Papageorgiou等人提出可以使用基于哈爾小波的特征代替圖像強(qiáng)度。Haar-like特征可由圖1表示。
圖1 Haar-like特征矩形圖
維奧拉和瓊斯的一個(gè)重要貢獻(xiàn)是使用積分圖。積分圖是一個(gè)二維矩形的查找表,與原始圖像具有一樣的尺寸。積分圖的每一個(gè)元素是原始圖像在對(duì)應(yīng)位置左上角所有像素的和。設(shè)任何區(qū)域內(nèi)的像素積分如圖2所示。
圖2 積分圖
則: 1點(diǎn)的積分 I1=Sum(Ra);
2 點(diǎn)的積分 I2=Sum(Ra)+Sum(Rb);
3 點(diǎn)的積分 I3=Sum(Ra)+Sum(Rc);
4 點(diǎn)的積分 I4=Sum(Ra)+Sum(Rb)+Sum(Rc)+Sum(Rd)
根據(jù)以上分析可知:Rd區(qū)域內(nèi)的像素之和(積分值)為:
例如我們用haar-like特征來(lái)表示人臉的灰度分布[4],采用圖1 Haar-like特征矩形圖中的(b)特征來(lái)表示待檢測(cè)人臉的灰度分布,改變矩形框的大小,以haar-like特征來(lái)盡可能細(xì)化的描述人臉特征,以達(dá)到準(zhǔn)確率,但同時(shí)描述的特征值變多了,計(jì)算量也就相應(yīng)變大了。積分圖就是為了提高計(jì)算速率,而Adaboost算法是在許多特征描述中挑選最優(yōu)的特征,從而建立弱分類器,能夠?qū)⑦@些圖像數(shù)字化進(jìn)而進(jìn)行計(jì)算。
1)Adaboost算法步驟
①給定(Given)訓(xùn)練樣本集S,正例樣本用X來(lái)表示、負(fù)例樣本用Y來(lái)表示;訓(xùn)練的最大循環(huán)次數(shù)用T來(lái)表示;
②初始化樣本權(quán)重為1/M,也就是訓(xùn)練樣本的初始概率分布;
③第一次迭代:(a)使用概率分布相當(dāng)?shù)挠?xùn)練樣本,訓(xùn)練弱分類器;(b)計(jì)算弱分類器的錯(cuò)誤率;(c)設(shè)置合適閾值,使誤差最小化;(d)重新設(shè)置樣本權(quán)重。
2)弱分類器設(shè)計(jì)
以設(shè)計(jì)決策樹的思路來(lái)設(shè)計(jì)弱分類器,選取Haar-like特征中3個(gè)具有代表性的特征數(shù)據(jù)來(lái)作為判斷輸入是否為人臉的依據(jù),輸入的數(shù)據(jù)即為待檢測(cè)圖片的特征值,而在分類應(yīng)用中,每一項(xiàng)特征判斷都用一個(gè)節(jié)點(diǎn)來(lái)表示,每次次判斷的輸出都用相應(yīng)的路徑來(lái)表示,每一種類別都用一個(gè)葉子節(jié)點(diǎn)來(lái)表示[5],該葉子節(jié)點(diǎn)也是最終判斷的結(jié)果。
3)強(qiáng)分類器的設(shè)計(jì)
設(shè)計(jì)好的弱分類器并不能完成識(shí)別任務(wù),將兩個(gè)弱分類器級(jí)聯(lián),如果還是不能達(dá)到就要增加級(jí)聯(lián)數(shù)目,以此類推,將多個(gè)弱分類器級(jí)聯(lián),強(qiáng)分類器就產(chǎn)生。
強(qiáng)分類器的訓(xùn)練過(guò)程如下:
①S集作為輸入訓(xùn)練樣本集,其中共有M個(gè)樣本(包括正樣本X和負(fù)樣本Y),訓(xùn)練的最大循環(huán)次數(shù)用T來(lái)表示;
②輸入弱分類器的算法、閾值和數(shù)目,輸出即為M個(gè)弱分類器的級(jí)聯(lián);
④根據(jù)弱分類器權(quán)重的初步估算,設(shè)計(jì)出第一個(gè)最優(yōu)弱分類器[6];
⑤調(diào)整弱分類器的各權(quán)重,從而提高被誤判的樣本的權(quán)重;
⑥新樣本和判斷有誤的樣本的新一輪的訓(xùn)練;
⑦重復(fù)循環(huán)執(zhí)行③~⑥步驟,經(jīng)過(guò)T輪后得到T個(gè)最優(yōu)弱分類器[6];
⑧將以上訓(xùn)練過(guò)程得到的T個(gè)最優(yōu)弱分類器進(jìn)行級(jí)聯(lián),就得到強(qiáng)分類器。
前面提到Haar有邊緣特征、線性特征、中心特征和對(duì)角線特征4個(gè)基本特征[7],組合后可形成特征模板。在這些特征模板中形成兩種顏色的矩形——分別為黑色和白色,文中定義模板的特征值為白色像素減去黑色像素的結(jié)果。影響Harr-like特征的特征值的個(gè)數(shù)的因素有兩個(gè),一個(gè)是選擇區(qū)域的大小[8],另一個(gè)是白色像素和黑色像素矩形框的大小,劃定區(qū)域形成弱分類器,將弱分類器級(jí)聯(lián)則形成強(qiáng)分類器。積分圖主要的目的就是計(jì)算白色像素區(qū)或者黑色像素區(qū)的像素和,采用積分圖提高了計(jì)算速度[9],提高人臉圖像檢測(cè)識(shí)別速度。
例如對(duì)待檢測(cè)人臉[10]劃分窗口,同樣以(b)類haar-like特征來(lái)計(jì)算,就是該矩形框的黑白像素差[11],求特征的代碼如下:
其計(jì)算量如圖3所示,不同窗口大小計(jì)算的特征數(shù)量如圖4所示。
圖3 特征值的計(jì)算(1)
圖4 特征值的計(jì)算(2)
人臉檢測(cè)的流程就是選取照片,進(jìn)行窗口取樣,對(duì)輸入的照片分別劃定特征區(qū)域,計(jì)算矩形框的黑像素和白像素的差[12],利用積分圖計(jì)算出所有的像素差,設(shè)定一定的差值為閾值,如果計(jì)算的值不在閾值范圍,則擴(kuò)大取樣區(qū)域,再次進(jìn)行特征值[13]的比對(duì),人臉檢測(cè)的流程設(shè)計(jì)如圖5所示。
圖5 人臉檢測(cè)流程圖
人臉識(shí)別的處理流程主要工作過(guò)程為選取照片,進(jìn)而進(jìn)行人臉的特征提取[14],判斷記錄特征鎖定人臉,計(jì)算出人臉的個(gè)數(shù)。
在此次軟件測(cè)試中,待檢測(cè)人臉和有效人臉都是已存儲(chǔ)的照片[15],操作方便,單人的圖像進(jìn)行采集做測(cè)試如圖6所示,測(cè)試給出的信息是:總計(jì)張人臉,經(jīng)過(guò)多次驗(yàn)證該模塊的準(zhǔn)確率可達(dá)90%左右。
圖6 人臉識(shí)別測(cè)試
文中對(duì)人臉識(shí)別方法進(jìn)行系統(tǒng)研究,以提高識(shí)別的準(zhǔn)確率和速度為目的,選用Haar特征提取的方法作為人臉檢測(cè)的主要方法,選用Adaboost算法作為人臉識(shí)別的主要算法,已經(jīng)在Android手機(jī)上測(cè)試成功,同一人不同臉的近似度在90%左右,測(cè)試證明增加分類器將多個(gè)弱分類器級(jí)聯(lián)為強(qiáng)分類器優(yōu)化算法,能有效提高識(shí)別的準(zhǔn)確率。
[1]王麗婷,丁曉青,方馳.一種魯棒的全自動(dòng)人臉特征點(diǎn)定位方法[J].自動(dòng)化學(xué)報(bào),2010(5):10-11.
[2]李見為,吳璇.基于視頻的人臉檢測(cè)和跟蹤算法[D].重慶:重慶大學(xué),2010.
[3]GUO Yan-wen,PAN Yong-juan,CUI Xiu-fen,et al. Harmonicmaps based constrained texture mapping method [J].Computer Aided Design and Computer Graphics,2015,17(7):1457-1462.
[4]Lis Z.Learning multi-view face subspaces and facial poseestimation using independent component analysis[J].IEEETransaction on Image Process,2015,14(6):705-712.
[5]王良民,張建明,詹永照,宋順林.人臉檢測(cè)研究現(xiàn)狀和發(fā)展[J].江蘇大學(xué)學(xué)報(bào):自然科學(xué)版,2013(5):15-16.
[6]Rowley H,Baluja S,Kanade T.Neural networkbased face detection [J].IEEE Pattern Analysis Machine Intellegence,2012,20(1):22-28.
[7]Yang G Z,Huang T S.Human face detection in a complex background.Pattern Recognition,2011,27(1):53-63.
[8]盧春雨,張長(zhǎng)水,聞芳,等.基于區(qū)域特征的快速人臉檢測(cè)法[J].清華大學(xué)學(xué)報(bào):自然科學(xué)版,2011,39(1):101-105.
[9]Tian Y,Tan T,WangY.Do singular values contains adequate information for face recognition[J].Pattern Recognition,2010,36(3):649-655.
[10]Moghaddam B,Pentland A.Probabilistic visual learning for object representation.IEEE Trans.Pattern Analysis and Machine Intelligence,2010,19(7):696-710.
[11]WANG Li-ting,DING Xiao-qing,F(xiàn)ANG Chi.A novel method for robust and automatic facial features location [J].ActaAutomatica Sinica,2010,35(1):9-16.
[12]鄭青碧.基于圖像的人臉檢測(cè)方法綜述[J].電子設(shè)計(jì)工程,2014(4):23-25.
[13]Zhao W,ChellaPPa R,Rosenfeld A.Face recognition:a literature survey [J].ACM Computing Surveys,2010,35(4):399-458.
[14]康學(xué)雷,邵凌,張立明.一種基于膚色和模板的人臉檢測(cè)方法[J].紅外與毫米波學(xué)報(bào),2010,19(6):209-215.
[15]劉黨輝,沈蘭蓀,Kin-Man Lam.人臉檢測(cè)研究進(jìn)展[J].計(jì)算機(jī)工程與應(yīng)用,2013(10):16-18.
Based on the research of Adaboost face recognition algorithm
WANG Ran
(Xi'an Vocational and Technical College,Xi'an 710032,China)
This paper studies the application of face recognition algorithm based on the Android platform.For face recognition method is studied,in order to improve the recognition accuracy and speed for the purpose.Select Haar feature extraction methods as the main method of face detection,Adaboost algorithm is chosen as the main algorithm of face recognition.During the study of the difficulty of a human face detection is affected by the outside world,Human face detection error rate is bigger,use more weak classifier multiple classifiers network it strong classifier to optimize algorithm.This design has been tested on the Android test is successful,the same person different face of approximate degree at around 90%.
facedetection; facial recognition;Haar features; Adaboost algorithm
TP312
A
1674-6236(2017)16-0190-04
2016-06-15稿件編號(hào):201606108
王 冉(1985—),女,陜西西安人,碩士,講師。研究方向:自動(dòng)控制、電路設(shè)計(jì)以及Android系統(tǒng)。