亢 潔, 李 珍, 王曉東, 李曉靜
(陜西科技大學 電氣與信息工程學院, 陜西 西安 710021)
?
基于MB_LBP旋轉不變特征的AdaBoost人臉檢測算法研究
亢 潔, 李 珍, 王曉東, 李曉靜
(陜西科技大學 電氣與信息工程學院, 陜西 西安 710021)
傳統的基于Haar特征的AdaBoost人臉檢測算法,由于Haar特征數量過多,導致訓練時間過久,而且不能快速檢測出人臉。針對這一問題,本文提出一種基于多塊局部二值模式(Multi-block Local Binary Pattern,MB_LBP)特征的AdaBoost人臉檢測算法,這種MB_LBP特征結合了旋轉不變局部二值模式(Local Binary Patterns,LBP)描述符,表達能力更強,特征數量更少.仿真結果表明,在訓練時間大幅縮減的同時,使用MB_LBP特征時可以達到Haar特征的檢測效果,且檢測速度大大提高.
人臉檢測; 多塊局部二值模式; AdaBoost
近年來,伴隨國民經濟飛速發展,機動車保有量大幅上升,然而每年頻發的交通事故已成為社會關注的焦點.交通安全問題當中因疲勞駕駛引發的事故約占四分之一比重,疲勞駕駛已經成為行車安全的大敵[1].因為人臉檢測技術具有非接觸、方式友好、對行車干擾因素小以及更易被人接受等特點,因此非常適合用于駕駛員行車過程中疲勞狀態的檢測.
傳統的基于Haar特征的AdaBoost人臉檢測算法盡管檢測效果良好,但由于Haar特征的數量過多,其檢測速度受很大制約[2-5].相較于Haar特征,MB_LBP特征包含了更多的結構模式,它能夠更加精確反映出圖像的局部紋理的空間結構.此外,有研究文獻表明,對于大小為24×24的圖像當中Haar特征數有超過十萬之多,這會讓整個特征的計算過程異常復雜,而且計算量巨大使得整個流程很耗時[6],而相應大小的圖像其MB_LBP特征數只有8 000多種.可見,倘若用MB_LBP特征來構建最終的級聯分類器所需的訓練時間要遠低于采用Haar特征時所需的訓練時間.因此本文提出一種結合旋轉不變LBP描述子的MB_LBP特征,利用AdaBoost算法訓練人臉檢測分類器來進行人臉檢測.
1.1 傳統LBP特征

1.2 MB_LBP特征
傳統LBP特征的信息冗余度過高,描述不夠精確且算法的魯棒性不夠[9,10].文獻[11]提及Zhang等學者對傳統的LBP算子進行了新的改進,提出了MB_LBP算子.相比于傳統的LBP算子,MB_LBP特征則是將窗口中的每個像素點升級為對應塊狀區域的像素均值,整體結構看起來依然是3×3窗口,此外,在尺度上也是可以進行拓展的,如圖1所示,給出了MB_LBP特征的計算過程[12,13].

圖1 MB_LBP特征計算示意圖
在計算過程中,只需進行縮放利用不同尺度的MB_LBP模板在整個圖片上遍歷一次就可以獲得許多MB_LBP特征.圖2為幾種MB_LBP的特征[14].

圖2 幾種MB_LBP特征示例
1.3 基于MB_LBP特征的人臉檢測分類器訓練

(1)弱分類器的構造
采用多分支樹作為弱分類器,可知總共有36個分支,且每一分支都對應于一個確定的離散MB_LBP的特征值,弱分類器定義如下:
(1)
式(1)中:xk表示特征向量X中的第m個元素的MB_LBP特征,aj(j=0,…,35)表示對應訓練回歸參數,其定義如下:
(2)

(2)弱分類器的訓練
本文選擇目前實現簡單,泛化能力較好的Gentle AdaBoost算法來對弱分類器進行訓練,對弱分類器進行訓練得到強分類器的具體步驟[15,16]:
①給定待訓練樣本(x1,y1),(x2,y2),…,(xN,yN),總共包含N個訓練樣本,其yi=-1或1分別對應負例樣本和正例樣本:已知訓練樣本中有p個負例樣本,q個正例樣本;并對人臉樣本的權重初始化為w1=1/2q,非人臉樣本的權重初始化為w1=1/2p;
②對m=1,…,M(M表示迭代次數,本文中設定為200):尋找一個最優的弱分類器fm(x),使得權重均方誤差和最小,即使得函數
(3)

③輸出強分類器F(x)
(4)
式(4)中:Q是強分類器的閾值.
(3)級聯分類器的設計及訓練
級聯分類器是由多個強分類器疊加而成的,而每個強分類器都是采用AdaBoost算法在經過步驟(2)中的訓練過程所得到的,其目的就是為了在檢測的時候更加準確.從某種意義上來看,級聯分類器是一種類似于決策二叉樹的方法.將待檢測圖片輸入之后,特征計算過程中會將圖片劃分成多塊待測窗口,這些子窗口從進入級聯分類器開始,會不斷地被每一個節點篩選,檢測為人臉時,就會送入下一層繼續篩選,直至每一層的強分類器都認定其為人臉,最終結果才會認定該窗口為人臉部分;只要其中任意一節點的判定過程中,該子窗口被判定為不是人臉,該子窗口會馬上被拋棄,從而繼續下一窗口的整個過程的判定,具體的過程如圖3所示,其中T表示True,判別為人臉,F表示False,判別為非人臉.

圖3 級聯分類器示意圖


表1 不同弱分類器數下的兩種特征的誤檢率對比
Haar特征訓練的級聯分類器為20層共2 094個弱分類器,MB_LBP特征訓練的級聯分類器為9層共319個弱分類器.從表2可以看出,基于MB_LBP特征的人臉檢測算法訓練時間遠小于基于Haar特征的人臉檢測算法訓練時間.

表2 兩種特征訓練級聯分類器的時間對比
本文測試樣本選用網絡搜集的包含人臉的圖像,其中單人臉樣本100張和多人臉樣本200張,共計1 107個人臉進行測試,測試結果如表3所示.可以看到,本文算法在使用更少的特征情況下也能達到與Haar特征分類器相當的效果,甚至在有些測試樣本如人臉偏轉、墨鏡遮擋等較復雜的情況下,本文方法表現更好,如圖4~5所示.
圖4 (a)為本文采用的MB_LBP特征對多人臉圖的檢測效果,耗時75.453 2 ms,圖片大小為490×325;圖4(b)為Haar特征對多人臉圖的檢測效果圖,耗時約160.13 ms.可以看到MB_LBP特征相對于Haar特征能夠更加快速精準的檢測到人臉.

(a)采用的MB_LBP特征時的檢測效果 (b)采用Haar特征時的檢測效果圖4 兩種特征檢測效果對比
圖5的尺寸為440×587,人臉偏轉35度左右的MB_LBP特征檢測效果圖,檢測時間為97.7 ms,而Haar特征檢測時間約為208 ms,但未能檢測出人臉.可以看出,MB_LBP特征結合了旋轉不變的描述子之后相對于Haar特征來說,對有旋轉的人臉也能夠比較有效的檢測.可以看到,在檢測速度方面,MB_LBP特征耗時比Haar特征的耗時要少一半左右.

圖5 采用MB_LBP特征時對旋轉人臉的檢測效果
本文針對使用Haar特征在構建分類器的過程中,特征數量過高、特征描述能力不夠強以及檢測時間過長等問題,提出了一種在AdaBoost架構下基于MB_LBP特征的人臉檢測算法.相比于傳統的Harr特征,MB_LBP特征只需要很少的特征數量就能夠對分類器完成快速訓練.仿真結果表明,相較于Haar特征分類器,在檢測效果相當的情況下,本文算法所需的訓練時間更小,檢測速度更快.
[1] 李紹文,王江波.駕駛員疲勞檢測系統的研究[J].計算機工程與應用,2013,49(15):253-258.
[2] Tomar S,Pandey Y.A review over face detection and recognition for frontal face images[J].Engineering Universe for Scientific Research and Management(International Journal),2013,5(5):1-5.
[3] Pavani S K,Delgado D,Frangi A F.Haar-like features with optimally weighted rectangles for rapid object detection[J].Pattern Recognition,2010,43(1):160-172.
[4] 陳 驍,金 鑫.基于級聯AdaBoost與示例投票的人臉檢測[J].計算機技術與發展,2015,25(12):18-21.
[5] Sharifara A,Rahim M S M,Anisi Y.A general review of human face detection including a study of neural networks and Haar feature-based cascade classifier in face detection[C]//International Symposium on Biometrics and Security Technologies.Kuala Lumpur,Malaysia:IEEE,2015:73-78.
[6] Shen J,Sun C,Yang W,et al.A novel distribution-based feature for rapid object detection [J].Neurocomputing,2011,74(17):2 767-2 779.
[7] Xiaopeng H,Guoying Z,Matti P,et al.Combining LBP difference and feature correlation for texture description.[J].IEEE Transactions on Image Processing A Publication of the IEEE Signal Processing Society,2014,23(6):2 557-2 568.
[8] 劉 麗,匡綱要.圖像紋理特征提取方法綜述[J].中國圖象圖形學報,2009,14(4):622-635.
[9] 張潔玉,武小川.加權局部二值模式的人臉特征提取[J].中國圖象圖形學報,2014,19(12):1 794-1 801.
[10] 李 根,李文輝.主方向旋轉LBP特征的平面旋轉人臉檢測[J].電子學報,2015,43(1):198-202.
[11] 劉 麗,謝毓湘,魏迎梅,等.局部二進制模式方法綜述[J].中國圖象圖形學報,2014,19(12):1 696-1 720.
[12] 戴桂平,林洪彬.基于非下采樣 Contourlet 變換和 MB_LBP直方圖的掌紋檢測[J].傳感技術學報,2014,27(10):1 387-1 393.
[13] 崔 浩,劉軍清,陳 鵬,等.基于MB_LBP與改進Fast PCA算法的人臉特征提取[J].微型機與應用, 2015,34(15):29-32.
[14] 潘秋萍,楊萬扣,孫長銀.基于Haar與MB-LBP特征的車牌檢測算法[J].東南大學學報(自然科學版),2012,42(S1):74-77.
[15] 孟子博,姜 虹,陳 婧,等.基于特征裁剪的AdaBoost算法以及在人臉檢測中的應用[J].浙江大學學報(工學版),2013,47(5):906-911.
[16] 賈慧星,章毓晉.基于動態權重裁剪的快速AdaBoost訓練算法[J].計算機學報,2009,32(2):336-341.
【責任編輯:蔣亞儒】
Research on the AdaBoost face detection algorithm based on the rotation invariant features of MB_LBP
KANG Jie, LI Zhen, WANG Xiao-dong, LI Xiao-jing
(College of Electrical and Information Engineering, Shaanxi University of Science & Technology, Xi′an 710021, China)
The training time of the traditional AdaBoost face detection algorithm based on the Haar features is too long,and the face can not be detected quickly due to the excessive number of Haar features. Aiming at this problem,the AdaBoost face detection algorithm based on the multi-block local binary pattern (MB_LBP) features is proposed in this paper.The MB_LBP features are combined with the rotation invariant local binary pattern (LBP) descriptor,which have stronger representation ability and fewer features.The simulation results show that the MB_LBP features performed as well as the Haar features do,and the training time is significantly reduced at the same time,and the detection rate is greatly improved.
face detection; MB_LBP; AdaBoost
2017-03-09
陜西省科技廳自然科學基礎研究計劃項目(2014JM8329); 陜西省教育廳專項科研計劃項目(14JK1029,2013JK1044); 咸陽市科技計劃項目(2011K07-03); 陜西省大學生創新創業訓練計劃項目(2015-1237)
亢 潔(1973-),女,陜西潼關人,副教授,博士,研究方向:圖像處理與模式識別
2096-398X(2017)04-0164-04
TP391.41
A