劉燕 賀松 成雨風
摘 要:原有的Adaboost算法在復雜背景及光源下,很容易出現(xiàn)人臉的誤檢問題,從而使人臉誤檢率較高。人臉相似區(qū)域的樣本難以分類,導致出現(xiàn)權重過擬合現(xiàn)象使檢測率降低。針對這些問題,本文提出了一種YCbCr膚色區(qū)域分割+改進型Adaboost算法的人臉檢測算法。采用膚色區(qū)域分割排除復雜背景及光源的影響,將權重更新與正負樣本誤檢率相結合,抑制人臉相似區(qū)域的權重過擬合現(xiàn)象,同時引入符合人臉的Haar-Like特征進一步提高檢測率。通過實驗證明,本文提出的算法在人臉檢測中提高了檢測率,降低了誤檢率和檢測所需時間。
關鍵詞: Haar-Like特征;Adaboost;膚色分割;人臉檢測
【Abstract】 The original Adaboost algorithm is prone to face false detection under complex background and light source, which leads to a high rate of face false detection. It is difficult to classify the samples of face similar regions, which leads to the phenomenon of weight overfitting and reduces the detection rate. To solve these problems, this paper proposes a face detection algorithm based on YCbCr skin color region segmentation + improved Adaboost algorithm. Skin color region segmentation is adopted to exclude the influence of complex background and light source, weight updating is combined with positive and negative sample false detection rate, which could suppress the weight overfitting phenomenon in face similar areas. Meanwhile, Haar-Like features conforming to face are introduced to further improve the detection rate. Experimental results show that the algorithm proposed in this paper improves the detection rate, reduces the false detection rate and the detection time.
【Key words】 ?Haar-Like characteristics; Adaboost; skin color division; face detection
0 引 言
隨著計算機視覺的發(fā)展,人臉識別已應用在生活中的各個領域,比如身份驗證、智能人機接口、出入口控制等。其中的人臉檢測是人臉識別的一個重要組成部分,人臉檢測的檢測速度和檢測率直接影響到人臉識別系統(tǒng)的性能,因此人臉檢測也是相關領域學者研究的熱點課題,近些年來也得到了不斷拓展與創(chuàng)新。人臉檢測的評價指標有檢測率、檢測速度、誤檢率、魯棒性[1]。
目前,由Viola和Jones提出了經典的人臉檢測Adaboost算法,而且由其提出的人臉檢測器比其它學者提出的人臉檢測器性能更佳,但是還存在著檢測率和檢測效率不足的問題。與此同時,也還有研究發(fā)現(xiàn),膚色區(qū)域分割可以有效避免復雜背景、人臉姿態(tài)、表情變化和面部被遮擋等因素對人臉檢測的影響[2]。在待檢測圖像中,膚色區(qū)域分割排除了大部分非膚色部分,所以基于膚色區(qū)域分割的人臉檢測在速度上占據優(yōu)勢,使其經常在快速的人臉檢測系統(tǒng)中被應用。為了提高檢測率和檢測效率,本文提出了結合YCbCr膚色區(qū)域分割+改進型Adaboost算法的人臉檢測算法。
1 膚色區(qū)域檢測
Jain等人[3]提出在YCbCr色彩空間中膚色具有良好的聚類性,膚色在CbCr空間的映射形式也表現(xiàn)出橢圓的特性,這些特性為膚色分割提供了很好的效果,其中Y表示亮度分量,Cb表示藍色色度分量,Cr表示紅色色度分量[3-4]。而膚色區(qū)域分割過程可表述如下。
(1)選用色彩空間YCbCr,將圖像顏色空間從RGB空間轉換到CbCr空間中。
(2)采用簡單高斯模型進行膚色建模[5] 。
(3)利用自適應閾值分割方法,遍歷整個待檢測圖像中的每個像素點,按照Cb、Cr分割閾值分割膚色區(qū)域,像素點在設定的Cb、Cr閾值區(qū)間內,則判斷像素點為膚色[6],分離膚色像素,實現(xiàn)膚色二值化處理。
(4)對膚色二值化圖像采用數字形態(tài)學的相關運算進行優(yōu)化處理,消除不平滑的數據點或小連通域,從而得到平滑的二值化圖像。數學形態(tài)學主要包括著:膨脹運算、腐蝕運算、開運算和閉運算[7]。
膚色區(qū)域分割效果如圖1所示。在YCbCr空間的膚色區(qū)域分割,很好地將大部分背景區(qū)域與膚色區(qū)域區(qū)分開,為后續(xù)的人臉檢測縮小了檢測范圍。
2 Haar-Like特征
2.1 基本的Haar-Like特征
基本的Haar特征模板有5種[8],如圖2所示。除此之外,還延伸了一些常用的Haar特征,如:邊緣特征、線性特征和中心特征。
2.2 擴展的Haar-Like特征
特征值就是白色矩形內的像素和減去黑色矩形內的像素和[9]。Haar-like特征模板可以通過平移、縮放提取不同位置和尺度的特征值,在人臉圖像中Haar特征能夠描述人臉的灰度分布情況,眼睛和嘴巴的灰度值較高且位置相對固定[10]。為了更快地提取人臉特征,進一步優(yōu)化Haar分類器,并根據人臉的眼睛和嘴巴分布位置特征,加入了擴展的Haar-Like特征,從而達到提升檢測率的目的。本文擴展的Haar-Like特征如圖3所示。
3 Adaboost算法及改進
在人臉檢測過程中,Adaboost算法先是計算待檢圖像的積分圖,在積分圖中得出Haar特征值,快速提取人臉的灰度分布特性,通過大量的訓練選出最優(yōu)的Haar特征,將其轉化為最佳弱分類器。得到一個最佳弱分類器后,樣本的權重將全部更新,所有訓練樣本也將全部重新訓練才能再次選出最優(yōu)的Haar特征,從而轉化為最佳弱分類器,轉化出的若干個最佳弱分類器組合得到一個強分類器[11-12]。
3.1 Adaboost算法原理
在原有Adaboost算法中,當樣本被錯誤分類時,權重更新公式為wt,iexp(αt),如果樣本一直被錯誤分類,權重就會不停增長。改進后因為1-FPR<1、1-FNR<1,所以能夠降低權重擴張幅度,被錯分的樣本權重將會受到抑制,綜上即為對原有Adaboost算法提出的權重更新改進方法。
4 人臉檢測過程
本文的人臉檢測過程主要分為3部分,分別是:樣本分類器訓練、圖像預處理、在線人臉檢測。其整體設計過程如圖4所示。由圖4可知,對其中各重點環(huán)節(jié)的功能設計可做解析剖述如下。
(1)樣本分類器訓練包括:準備訓練樣本、積分圖計算、特征值計算、形成弱分類器及強分類器。該部分是利用已經改進的Adaboost算法訓練分類器,為人臉檢測做準備,其中的人臉樣本和非人臉樣本統(tǒng)稱為訓練樣本。
(2)圖像預處理包括:顏色空間轉換、建立高斯膚色模型、膚色區(qū)域分割、膚色區(qū)域優(yōu)化處理。該部分是用于提供膚色待檢測區(qū),為在線人臉檢測排除復雜背景或大部分非膚色區(qū)域。
(3)在線人臉檢測:將改進型Adaboost算法訓練得到的強分類器進行級聯(lián),對膚色待檢區(qū)域做進一步人臉驗證,對于檢測出來的人臉,定位并標注出人臉所在位置。
(4)強分類器級聯(lián):只有當前層強分類器判定為人臉區(qū)域,才能進入下一層的強分類器繼續(xù)進行判斷,即只有每層的強分類器都判定為人臉,才會輸出為人臉。級聯(lián)類似于決策樹算法的思想。
5 算法實現(xiàn)與結果分析
本實驗使用的開發(fā)平臺是Visual Studio 2013,OpenCV2.4.9,訓練樣本使用的是各大主流人臉檢測數據庫。為了保證每個Haar特征都在每個樣本中出現(xiàn),將所有前期準備的訓練樣本都轉換為20×20的灰度圖。測試樣本來自于網絡收集,共220張圖像,圖像有435張人臉,圖像包括了多人圖像和單人圖像。
為了驗證Adaboost算法改進后的性能,本文進行了檢測率、檢測時間和誤檢率的比較實驗。2種人臉檢測算法性能比較結果見表1。其中,誤檢率是被錯誤檢測的目標與檢測到的目標總量之比,檢測率是被檢測到的人臉目標與所有人臉總量之比。
從表1的性能比較結果來看,膚色分割+改進型Adaboost算法的檢測率為92.7%,其檢測率明顯高于原有的Adaboost算法檢測率86.2%,由此得知本文提出的人臉檢測算法有效地提高了檢測率。2種人臉檢測算法的誤檢率分別為18.6%和11%,檢測時間分別為368 s和179 s,在保證了檢測率的情況下,改進后的算法的誤檢率和檢測時間也明顯降低,說明了沒有經過膚色區(qū)域切割的圖像在人臉檢測時會被更多因素干擾,檢測尺寸也較大,因而檢測速度較慢,誤檢的幾率也就更大。綜上所述,在人臉檢測中,膚色分割+改進型Adaboost算法比原有Adaboost算法的性能更佳。
2種人臉檢測算法的效果比較如圖5所示。在運用原有Adaboost算法進行人臉檢測效果圖中,圖5(a)左子圖出現(xiàn)漏檢及誤檢,圖5(b)左子圖出現(xiàn)漏檢,兩圖出現(xiàn)漏檢均是因為人臉面部遮擋難以檢測。在第二組人臉檢測效果圖中,圖5(a)右子圖出現(xiàn)多處誤檢,圖5(b)右子圖檢測出所有人臉。從人臉檢測輸出結果上來說,膚色分割+改進型Adaboost算法比原有Adaboost算法的檢測率更高,誤檢率也更低。
6 結束語
本文提出的膚色分割+改進型Adaboost人臉檢測算法,對待檢測圖像做膚色區(qū)域分割預處理可以有效降低檢測時間和誤檢率。同時改進的權重更新方式也有針對性地抑制了權重過擬合現(xiàn)象,驗證了引入符合人臉的Haar-Like特征可有效提高檢測率。在今后的人臉檢測研究中,則亟需研究如何檢測帶有遮擋物的人臉,從而進一步完善人臉檢測系統(tǒng)。
參考文獻
[1]邵林昌. 基于膚色分割的人臉檢測[D]. 南京:東南大學,2006.
[2]艾學軼, 吳彥文, 汪亭亭. 復雜背景下基于膚色分割的人臉檢測算法研究[J]. 計算機工程與設計, 2010, 31(14):3268-3273.
[3]HSU R L, ABDEL-MOTTALEB M, JAIN A K. Jain, Face detection in colour images [J]. IEEE Transactions on Pattern Analysis and Machine Intelligence, 2002, 24(5): 696-706.
[4]BASILIO J A M , TORRES G A , PREZ G S, et al. Explicit image detection using YCbCr space color model as skin detection[C]// Proceedings of the 2011 American Conference on Applied Mathematics and the 5th WSEAS International Conference on Computer Engineering and Applications. Puerto Morelos, Mexico: ACM, 2011:123-128.
[5]王海川,張立明. 一種新的Adaboost快速訓練算法[J].復旦學報(自然科學版),2004,43(1):27-33.
[6]TREFNY/ J, MATAS J. Extended set of local binary patterns for rapid object detection[C]//Proc. of the Computer Vision Winter Workshop. Nov Hrady, Czech Republic: Czech Pattern Recognition Society, 2010: 1589-1596.
[7]萬麗. 基于膚色及AdaBoost算法的人臉檢測技術研究[D]. 成都:西南石油大學,2011.
[8]左登宇. 基于Adaboost算法的人臉檢測研究[D]. 合肥:中國科技大學,2009.
[9]LI Haoxiang, LIN Zhe,SHEN Xiaohui. A convolutional neural network cascade for face detection[C]// 2015 IEEE Conference on Computer Vision and Pattern Recognition (CVPR). Boston, MA, USA:IEEE,2015:5325-5334.
[10]劉俠,李蘇,李廷軍. 一種改進的Adaboost算法的人臉檢測分類器[J].空軍工程大學學報(自然科學版),2009,10(2):76-80.
[11]郭磊,王秋光. Adaboost人臉檢測算法研究及OpenCV實現(xiàn)[J].哈爾濱理工大學學報,2009,14(5):123-126.
[12]TERRILLON J C, SHIRAZI M N, FUKAMACHI H, et al. ComParative performance of different skin chrominance models and chrominance spaces for the automatic detection of human faces in color images[C]// 4th IEEE International Conference on Automatic Face and Gesture Recognition (FG 2000). Grenoble, France:dblp,2000:1-9.
[13]BI Ping, ZHAO Heng, LIANG Jimin .Variant pose face detection based on multi-classifier fusion[J].Joumal of System Simulation,2009,21(20):6469-6478.
[14]Samuel K, Partha N. The interaction of stability and weakness in AdaBoost[R]. Chicago: University of Chicago ,2001.
[15]VIOLA P, JONES M. Rapid object detection using a Boosted cascade of simple features [C]// Proceedings of the 2001 IEEE Computer Society Conference on Computer Vision and Pattern Recognition(CVPR 2001). Vancouver, Canada: IEEE Computer Society, 2001:1-9.