顧偉,劉文杰,朱忠浩,許凱
一種基于膚色模型和模板匹配的人臉檢測算法
顧偉,劉文杰,朱忠浩,許凱
近年來,隨著人機(jī)識別技術(shù)的日益發(fā)展,人臉檢測問題越來越受到重視,而人臉檢測技術(shù)的關(guān)鍵在于準(zhǔn)確率和檢測速度。為了有效提高人臉檢測的效率,提出了一種基于膚色分割和模板匹配算法的人臉檢測方法。首先,建立顏色模型,利用顏色信息對圖像進(jìn)行粗檢測,得到粗檢測結(jié)果,然后,采用模板匹配技術(shù)確定人臉。該算法克服了單用模板匹配法的時間延遲,提高了檢測精度和速度。
人臉檢測;膚色模型;模板匹配
人臉檢測是人臉識別技術(shù)[1]的第一步,是模式識別領(lǐng)域和計算機(jī)視覺方向的重要研究課題和研究熱點之一。人臉檢測的要求是判斷圖像中是否存在類似人臉的區(qū)域,若有則進(jìn)一步確定人臉的位置、方向等屬性。傳統(tǒng)的人臉檢測技術(shù)多用單一方法,一般要求背景簡單,人臉姿態(tài)變化幅度不大,主要的方法有:模板匹配法[2][3],基于統(tǒng)計特征的方法[4]及人工神經(jīng)網(wǎng)絡(luò)[5]等。簡單的模板匹配法早已證明是不能很好地解決尺度、姿態(tài)和形狀變化等問題,它的改進(jìn)方法—可變模板法可以較好地解決上述問題,但這種方法最大的缺點是對初始位置的敏感。基于特征的方法是比較從圖像中抽取的一定特征的相似性,用匹配的方法進(jìn)行檢測,但是特征的提取有一定困難。利用人工神經(jīng)網(wǎng)絡(luò)方法能得到較好的檢測效果,但是人工神經(jīng)網(wǎng)絡(luò)需要大量的訓(xùn)練樣本,而且學(xué)習(xí)時間長。有研究指出同種人的皮膚顏色有一定的特性,與其他物體的顏色分布有較明顯的差異,并且顏色不隨物體大小、姿態(tài)而變化,因此利用膚色聚類特性建立模型對人臉圖像進(jìn)行粗定位,成為了目前人臉檢測與跟蹤領(lǐng)域的主流方法。當(dāng)然僅僅利用膚色模型進(jìn)行人臉檢測是不夠的,因為自然界存在著大量與人臉膚色類似的物體,因此幾乎所有采用了膚色特征的方法都需要利用其他的人臉特征做進(jìn)一步驗證。本文采用了一種膚色模型與模板匹配技術(shù)相結(jié)合的算法[6],首先建立合適膚色模型,根據(jù)膚色模型對圖像進(jìn)行分割,然后根據(jù)模板匹配方法定位人臉位置,算法流程如圖1所示:
圖1 算法流程
1.1 膚色模型的建立[8]
光在頻域分布中的不同波段對應(yīng)了各種顏色,光譜中可見區(qū)域段光是人可以感知到的顏色。當(dāng)我們將兩種不同的顏色按一定比例混合可以生成另一種顏色,通過混合3種不同的顏色我們就可以得到我們想要的顏色,這就是三基色顏色模型的基本原理。顏色模型有很多種,顏色空間的轉(zhuǎn)換常用的顏色模型主要有:RGB、YCrCb、HSI、YUV等。
為了把人臉區(qū)域從整個圖像中分割出來,需要建立對于不同膚色和光照條件下具有一定魯棒性的膚色模型[9],常用的RGB色彩空間不適合用來建立膚色模型,因為在RGB空間中三基色(r、g、b)不僅代表顏色,還表示了亮度,周圍環(huán)境光照的變化會使人臉的檢測變得更加復(fù)雜,因此RGB色彩空間用于膚色分割過程是不可靠的。為了建立可用于膚色分割的色彩模型,需要把顏色表達(dá)式中的色度和亮度信息分開,這樣就能利用膚色的聚類特性進(jìn)行膚色分割。本文選用YCrCb空間作為膚色分布統(tǒng)計的映射空間,在YCbCr色彩空間中膚色聚類特性比較好,受光照亮度的影響較小,并且是二維獨立分布,能較好地限制膚色區(qū)域的分布。YCrCb顏色模型共有三個分量,其中Cr分量和Cb分量分別表示紅色色度和藍(lán)色色度,并且YCrCb顏色模型將亮度信息分離了出來。YCrCb顏色模型與RGB色彩空間具有線性關(guān)系,可以由RGB模型換算得到,因此YCrCb顏色模型在圖像分割領(lǐng)域得到了廣泛的應(yīng)用。因此降低光照對膚色分割的影響,本文采用YCrCb顏色模型[10]。
首先對目標(biāo)圖像進(jìn)行顏色空間轉(zhuǎn)換,將目標(biāo)圖像由常用的RGB空間轉(zhuǎn)換到亮度與色彩獨立的YCrCb空間,轉(zhuǎn)換公式如公式(1):
有研究指出[11]:盡管不同人的膚色可能有很大的不同(尤其是不同的人種之間),但相對于它們在亮度上的差異而言,它們在色度上的差異要小得多,也就是說對于不同的人,他們的膚色在色度值上很接近,而在亮度值上差異較大,因此可以歸納為不同人的膚色滿足2D Gaussian模型如公式(2):
1.2 基于顏色模型的粗檢測
膚色模型建立以后,首先根據(jù)膚色模型,將目標(biāo)圖像轉(zhuǎn)換到Y(jié)CrCb色彩空間,然后根據(jù)相似度計算公式判斷目標(biāo)圖像的每一個像素與膚色的相似度,相似度計算公式如如公式(3):
計算相似度后,通過選取合適的閥值,將相似度計算得到的灰度圖像進(jìn)一步轉(zhuǎn)換為二值圖像,二值圖像中0表示屬于膚色,1則表示屬于非膚色區(qū)域。
由于存在噪聲干擾,得到的二值圖像一般存在邊緣模糊的現(xiàn)象,并且由于人臉中存在眼睛、眉毛、嘴等非膚色部分,使得二值圖像中人臉往往沒有被完全填充,為了降噪、增強(qiáng)邊緣以及眉眼等非膚色器官的影響,需要對二值圖像做進(jìn)一步的預(yù)處理,每一步的處理結(jié)果分別如圖2所示:
圖2 膨脹腐蝕處理后的圖像
在自然界中,有可能存在著很多和人類皮膚顏色相似的物體,因此在復(fù)雜背景下,預(yù)處理后的二值圖像中可能存在著手、胳膊等非人臉區(qū)域,為了降低后續(xù)處理的難度,根據(jù)人臉的幾何特征對目標(biāo)圖像做進(jìn)一步的處理,如剔除一些很小的區(qū)域和一些狹長型的區(qū)域,提高檢測結(jié)果的精度。
2.1 模板匹配算法
模板匹配是機(jī)器識別領(lǐng)域常用的方法。所謂模板匹配就是在目標(biāo)圖像中搜索與已知模式相匹配的結(jié)果。
模板匹配過程如下:設(shè)模板為T,目標(biāo)圖為S,以圖來形容模板匹配的過程就是將模板T放在目標(biāo)S上進(jìn)行平移,此時,將模板T覆蓋的目標(biāo)圖S上的區(qū)域稱為子圖j為子圖的左上角象素點在目標(biāo)圖S中的坐標(biāo),稱為參考點,如圖3所示:
圖3 模板匹配過程
將公式(4)展開如公式(5):
對公式(6)進(jìn)行歸一化處理如公式(7):
2.2 生成模板[13]
本文構(gòu)造模板的方法是選取多個樣本并取平均的方法,首先選取大量的人臉圖像(本文使用的是芬蘭奧盧大學(xué)的人臉庫,該人臉庫包含不同光照及不同膚色的125個人的人臉圖像共兩千多幅),根據(jù)經(jīng)驗在選擇的每個人臉圖像中劃出人臉的區(qū)域作為人臉的樣本。通過這種方法得到的人臉樣本存在不一樣的尺度和不同的灰度分布,因此第二步需要對樣本作灰度分布標(biāo)準(zhǔn)化和尺度變換,最后將所有樣本壓縮到指定的尺度并取灰度平均,這樣就得到了原始模板。得到原始模板之后的主要工作是尺度變換和灰度分布標(biāo)準(zhǔn)化。
圖像的灰度分布有兩個參量,分布是灰度平均值和方差,為了消除采集樣本時光照等因素對圖像的影響,我們將這兩個參量設(shè)置為給定的值,這樣就將灰度平均均值和方差兩個關(guān)鍵特征一致化。我們認(rèn)為這種灰度分布標(biāo)準(zhǔn)化方法比常用的直方圖均衡化方法更為有效。對于尺度變換,我們采用基于線性插值的重采樣方法,具體操作本文不再贅述。
圖像的灰度分布方差由公式(9):
對每個樣本圖像做如下變換,將每個樣本圖像的灰度平均值和方差變換到事先設(shè)定的灰度平均值和方差如公司(10):
2.3 基于模板匹配的細(xì)檢測[14]
在利用膚色模型粗檢測之后,將檢測到的膚色區(qū)域灰度標(biāo)準(zhǔn)化,然后進(jìn)行相似度計算。設(shè)輸入圖像區(qū)域的灰度矩陣為R[M][N],其灰度均值和均方差分別為和模板的灰度矩陣為T[M][N],其灰度均值和均方差分別為和則兩者之間的相關(guān)系數(shù)和對應(yīng)象素灰度值的平均偏差可以表示為公式(11)、(12):
其中α為權(quán)重系數(shù),經(jīng)驗值為35。
我們使用本文的算法進(jìn)行了實驗測試,實驗所用的樣本圖像來源于相機(jī)拍攝及網(wǎng)上下載的各種圖像,樣本圖像涵蓋了不同環(huán)境、不同背景的各種人臉圖像,實驗證明該算法檢測速度和準(zhǔn)確性都較好如圖4所示:
圖4 多人臉圖像檢測結(jié)果
圖4(a)、圖4(b)為單人臉圖片的檢測結(jié)果,圖4(c)為復(fù)雜背景下多人臉圖片的檢測結(jié)果,圖中正常姿態(tài)人臉均能被準(zhǔn)確檢測,僅有少量人臉由于姿態(tài)變化較大或重要部分被遮擋沒能被檢測出來,根據(jù)實驗結(jié)果統(tǒng)計,正確率達(dá)到97.3%。
對于實用的人臉檢測算法,不但要有很高的準(zhǔn)確率,對于檢測速度也有很高的要求。傳統(tǒng)的模板匹配算法中,匹配度的計算是最占用時間的。本文算法結(jié)合了膚色模型粗檢測,只對膚色區(qū)域作匹配,這樣大大減少了匹配區(qū)域,提高了檢測速度。傳統(tǒng)模板匹配法和本文所述算法的數(shù)據(jù)比較,所述算法在正確率和效率上都得到了較大提升,如表1所示:
表1 兩種算法實驗數(shù)據(jù)對比
本文描述了一種膚色模型與模板匹配算法相結(jié)合的人臉檢測算法, 這種算法利用膚色特性,縮小了模板匹配的區(qū)域,提高了檢測效率,且不受光照條件和面部表情變化的影響,檢測精度較高,具有很好的魯棒性。
[1] 楊萬振.人臉識別技術(shù)概述[J] .計算機(jī)光盤軟件與應(yīng)用.2012(05) .
[2] Yang G.Human Face Detection in a Complex Background.[J]Pattern Recognition.1994,27(10):53-63.
[3] Hao Li,Hai-Bin Duan,Xiang-Yin Zhang. A novel image template matching based on particle filtering optimization[J]. Pattern Recognition Letters . 2009 (13)
[4] Sung K.Poggio T.Example-based learning for view-based human face detection: [J]IEEE Trans pattern Analysis and Machine Intelligence.1998,18(1):39-51.
[5] Rowley H A, Baluja S, Kannde T.Neural network based face detection[J]:IEEE Trans on PAMI, 1998,20(1):23-28.
[6] 朱正平,孫傳慶,王陽萍.基于膚色與模板匹配的人臉檢測的方法研究[J].自動化與儀器儀表,2008,2008( 6) :91-93,105.
[7] 王紅,韓宇星.膚色信息在人臉檢測中的應(yīng)用[J].計算技術(shù)與自動化.2008(04)
[8] 李嵐,朱林杰,張云.膚色與梯度互補(bǔ)的人臉檢測研究[J].計算機(jī)應(yīng)用與軟件,2013,30(2):280-282.
[9] 李智勇,田貞.基于膚色模型的人臉檢測研究[J].現(xiàn)代電子技術(shù).2011(03)
[10] 張爭珍,石躍祥.YCgCr顏色空間的膚色聚類人臉檢測法[J].計算機(jī)工程與應(yīng)用,2009,45(22):163-165.
[11] Yang J, Lu W, Waibe A. Skin-color modeling and adaptation[R]. Pittsburgh:CMU-CS, 1997. 97-146.
[12] .梁路宏,艾海舟,何克忠等.基于多關(guān)聯(lián)模板匹配的人臉檢測[J].軟件學(xué)報,2001,12(1):1784-1792.
[13] 由霖,修春波.基于模板匹配的目標(biāo)識別算法[C].2011年中國智能自動化學(xué)術(shù)會議論文集(第一分冊).2011.
[14] 盧緒軍,趙勛杰.一種基于膚色和模板匹配的人臉檢測方法[J].計算機(jī)應(yīng)用與軟件.2011(07)
A Face Detection Method Based on Skin-Color Model and Template Matching
Gu Wei1,2, Liu Wenjie1,2, Zhu Zhonghao2, Xu Kai2
(1.Jiangsu Engineering Center of Network Monitoring, Nanjing University of Information Science & Technology, Nanjing 210044, China; 2. School of Computer & Software, Nanjing University of Information Science & Technology, Nanjing 210044, China)
Nowadays, with the development of face identification technology, face detection has been paid more and more attention. The key of face detection technology is accuracy and detection speed. In order to effectively improve the efficiency of face detection, we proposed a method of face detection which based on skin-color model and template matching. First we set up the skin-color model and detect the image by the color information roughly, and then we can identify the face by template matching. This method improves the disadvantage of traditional template matching method and increase the accuracy and speed of the detection.
Face Detection; Skin-Color Model; Template Matching
TP391
A
1007-757X(2014)07-0013-04
2014.07.20)
國家自然科學(xué)基金青年科學(xué)基金(61103235);南京信息工程大學(xué)教改課題(12JY041);南京信息工程大學(xué)實驗開放項目(13KF037)
顧 偉(1983-),男,南京信息工程大學(xué)計算機(jī)與軟件學(xué)院,實驗師,碩士研究生,研究方向:模式識別與圖像處理,南京 210044劉文杰(1979-),男,南京信息工程大學(xué)計算機(jī)與軟件學(xué)院,副教授,博士,研究方向:智能計算、網(wǎng)絡(luò)計算、量子算,南京 210044朱忠浩(1990-),男,南京信息工程大學(xué)計算機(jī)與軟件學(xué)院,在校大學(xué)生,研究方向:計算機(jī)科學(xué)與技術(shù),網(wǎng)絡(luò)工程,南京 210044許 凱(1993-),男,南京信息工程大學(xué)計算機(jī)與軟件學(xué)院,在校大學(xué)生,研究方向:計算機(jī)科學(xué)與技術(shù),網(wǎng)絡(luò)工程,南京 210044