孫紅艷 趙輝
摘要:本文通過分析人臉檢測的算法,并根據(jù)手機系統(tǒng)的特點,提出了基于膚色分割與AdabOOSt相結(jié)合的檢測方法。首先,利用膚色分割算法分割膚色區(qū)域,并對原始圖像進行預(yù)處理。然后,再通過AdabOOSt算法,利用Haar特征,對預(yù)處理后的圖像中是否存在人臉進行精檢。
關(guān)鍵詞:人臉檢測 膚色分割 Adaboost算法 Haar特征
一、引言
人臉檢測是對給定的靜止或動態(tài)圖像,檢測里面是否包含人臉,人臉檢測的方法分成兩類:一種是借助人臉特征進行分析的方法,一種是根據(jù)統(tǒng)計理論進行建模的方法。
基于特征的檢測方法分為:基于低層特征的分析方法,組群特征分析方法和變形模型方法?;诮y(tǒng)計理論建模方法有:Adaboost法、隱馬爾可夫模型、人工神經(jīng)網(wǎng)絡(luò)、支持向量機等。
本文通過膚色分割算法,在待檢測圖像分割出包含膚色的有效區(qū)域,并且在檢測過程中,對非膚色區(qū)域進行預(yù)處理,將它們設(shè)成統(tǒng)一的顏色,這樣,將會減小在下一步的處理中,將非膚色區(qū)域檢成人臉的概率;然后,再通過Adaboost算法,利用矩形特征對經(jīng)過膚色分割處理后的膚色區(qū)域中是否包含有效的人臉數(shù)據(jù)進行精檢。
二、膚色分割算法
膚色特征是聚類特征,并且特征穩(wěn)定、區(qū)別能力較強、計算復(fù)雜度低,因而,在算法選擇上,我們首先利用膚色特征,對人臉檢測進行預(yù)處理,快速地分割出膚色區(qū)域,基于膚色的人臉檢測主要包含兩部分:顏色空間的選取及在所選取的顏色空間上的膚色模型的建立。
本文選用在YCbCr顏色空間上,進行膚色分割的處理,借助簡單閾值模型對圖像中存在的膚色區(qū)域進行粗檢,目的就是查找到了圖像中的可能的膚色區(qū)域,并作為人臉的候選區(qū)域,同時,去除非膚色區(qū)域,從而減小圖像中的非膚色區(qū)域?qū)θ四樳^程的干擾,并減小人臉精檢步驟的計算量。
通過顏色空間的對比,我們可以發(fā)現(xiàn),YCbCr顏色空間正好可以滿足我們的要求,剔除亮度Y分量以后,利用二維互相獨立的Cb、cr分量構(gòu)造坐標(biāo)平面,就可以分析膚色的聚類區(qū)域。根據(jù)Chai的研究,如果輸入圖像的像素值在以下范圍內(nèi),就可以認(rèn)為其屬于膚色像素:
利用上述公式,可以將膚色區(qū)域從圖像中分割出,分割時,可以適當(dāng)放寬膚色的閾值,以盡量減少在膚色分割環(huán)節(jié)漏檢膚色區(qū)域的可能性。分割出來來的膚色區(qū)域,作為包含人臉的候選區(qū)域,將會被轉(zhuǎn)給下一級的驗證算法Adaboost處理模塊來進行精檢處理。
三、Adaboost算法
77≤cb≤127且133≤Cr≤173
Viola與Jones在2001年構(gòu)建了一個人臉檢測框架,這個框架不僅能夠獲得比較高的人臉檢測率,而且檢測速度很快,達(dá)到了真正實時的效果。在這個框架中,用到的主要技術(shù)有三項:Adaboost算法、分類器級聯(lián)、矩形特征與積分圖。
本文選用了Adaboost算法,在膚色模型分割出的膚色區(qū)域上,利用矩形特征來進行第二階段的人臉檢測。同時,在膚色分割過程中,對非膚色區(qū)域進行特殊處理,將所有的非膚色區(qū)域的像素值設(shè)成0.即黑色,這樣,能夠確保Adaboost在對非膚色區(qū)域進行檢測時,不會檢到滿足矩形特征特征值的區(qū)域,從而,提高了檢測率,同時,使Adaboost環(huán)節(jié)的處理只集中在膚色區(qū)域進行,降低了檢測時間。
四、系統(tǒng)實現(xiàn)
本文實現(xiàn)了一個用于人臉檢測的WP8.1系統(tǒng),處理過程為:首先,在YCbCr空間上對圖像進行預(yù)處理,提取出膚色區(qū)域,將非膚色區(qū)域設(shè)成黑色;然后,通過Adaboost+Haar特征的方法,對預(yù)處理后的圖像數(shù)據(jù)進行人臉檢測,以下是此系統(tǒng)的結(jié)構(gòu)流程圖。
五、實驗結(jié)果與數(shù)據(jù)分析
從網(wǎng)絡(luò)上下載了50張包含各種人臉位姿、不同人臉數(shù)目、各種背景等的測試圖像,對此系統(tǒng)進行測試,其中單人臉圖像10張(共包含的人臉數(shù)目10),2-4人臉圖像10張(共包含的人臉數(shù)目33),5-10人臉圖像15張(共包含的人臉數(shù)目128),10人臉以上圖像10張(共包含的人臉數(shù)目156),特殊圖像(如特別復(fù)雜的背景,分辯率很大的圖像、人臉數(shù)目超過30的圖像等)5張(用于評介此系統(tǒng)的性能),以下是測試的統(tǒng)計結(jié)果,表中的A代表利用Adaboost算法進行檢測,B代表利用膚色分割與Adaboost相結(jié)合的算法進行檢測。
從上表,我們可以看出,與單純的利用Adaboost算法進行人臉檢測相比,膚色分割與Adaboost相結(jié)合的算法能有效地降低誤檢率,同時,獲得更快的檢測速度,但是,對于提高檢測率貢獻不大。同時,對于復(fù)雜的圖像,如分辨率很大的圖像,檢測的耗時明顯增加,這主要是檢測區(qū)域過大及手機處理能力有限造成的:而對于人臉數(shù)目超過50的圖像,檢測時間過長,甚至以幾十秒計,在性能上是無法接受的,還需要對系統(tǒng)進一步的優(yōu)化。