0 引言
在人臉檢測(cè)領(lǐng)域,人臉特征的選取是基礎(chǔ)與核心。目前主要的人臉檢測(cè)方法可以分為基于特征的方法和基于統(tǒng)計(jì)的方法兩大類?;谔卣鞯姆椒梢蕴幚磔^大尺度和視角變化的人臉檢測(cè)問題,但其最大的困難在于很難找到相對(duì)穩(wěn)定的特征,因?yàn)閳D像的顯示特征容易受到光照、噪聲等的影響;基于統(tǒng)計(jì)的方法可以避免特征提取和分析過程,但存在計(jì)算量大,以及非人臉樣本收集和樣本訓(xùn)練難的問題。
為此,本文對(duì)基于膚色分割結(jié)合模板匹配的人臉檢測(cè)方法進(jìn)行了改進(jìn),提出基于“光照預(yù)處理+膚色模型+模板匹配”的人臉檢測(cè)解決思路,即在光照預(yù)處理的前提下,利用膚色特征建立膚色模型;根據(jù)膚色模型進(jìn)行膚色檢測(cè)和閾值分割;在對(duì)分割區(qū)域特征分析的基礎(chǔ)上,將篩選出的人臉候選區(qū)域與人臉模板相匹配;最后將匹配較好的區(qū)域在原圖像中用矩形框標(biāo)示出來。
1 膚色模型
人臉的膚色不依賴于面部的其他特征,對(duì)于人臉姿態(tài)和表情的變化不敏感,具有較好的穩(wěn)定性,而且明顯區(qū)別于大多數(shù)背景物體的顏色。大量實(shí)驗(yàn)證明,不同膚色的人臉對(duì)應(yīng)的色調(diào)是比較一致的,其區(qū)別主要在于灰度。人臉的膚色特征主要通過膚色模型來描述。膚色模型是在一定色彩空間描述膚色分布規(guī)律的數(shù)學(xué)模型。本文選用備受青睞的高斯模型。
1.1 色彩空間
一般說來,色調(diào)和飽和度相對(duì)亮度來說,是相互獨(dú)立的。在不同的光照條件下,雖然物體顏色的亮度會(huì)產(chǎn)生很大的差異,但是它的色度在很大范圍內(nèi)具有恒常性,基本保持不變。研究表明,人類的膚色在YCbCr色彩空間的分布相對(duì)比較集中(被稱為膚色的聚類特性),不同種族之間膚色的差異主要是由亮度引起,而與顏色屬性無關(guān)。利用此特性,將圖像像素分為膚色和非膚色像素兩類,這樣可以大大提高人臉檢測(cè)的效率和正確性。
在YCbCr色彩空間中,Y表示亮度,Cb和Cr是顏色差別信號(hào),代表色度。因此,本文的膚色模型只選用YCbCr色彩空間的Cb和Cr色度分量,并用這兩個(gè)分量建立色度分布圖。實(shí)驗(yàn)中,需要先將普遍采用RGB色彩空間描述的圖像轉(zhuǎn)換到Y(jié)CbCr色彩空間。
1.2 建立膚色樣本
建立膚色模型需要使用大量包含不同膚色、不同大小人臉的RGB圖像。本文從互聯(lián)網(wǎng)、人臉庫(kù)和日常的生活照中選用了100幅膚色各不相同的人臉圖像,然后從中裁剪出人臉皮膚區(qū)域的一小部分,作為膚色樣本。接著將其從RGB色彩空間轉(zhuǎn)換為YCrCb色彩空間。
經(jīng)過色彩空間轉(zhuǎn)換之后,人臉圖像不可避免地會(huì)出現(xiàn)噪聲。本文采用滑動(dòng)窗口為3×3的二維中值濾波器來去除椒鹽噪聲,并在速度和效果上都取得了很好的結(jié)果。
1.3 建立膚色模型
濾除噪聲后,先用二維高斯分布來描述這種Cb-Cr的色度分布,然后對(duì)膚色樣本進(jìn)行訓(xùn)練,以此得到一個(gè)分布中心,再根據(jù)所觀察的像素離該中心的遠(yuǎn)近來得到一個(gè)膚色的相似度。最后利用均值和方差計(jì)算得到高斯分布模型,這就是實(shí)驗(yàn)中的膚色模型。二維高斯分布的表達(dá)式為:
2 人臉檢測(cè)
2.1 光照預(yù)處理
由于受外界光照環(huán)境的影響,尤其是光源顏色,采集來的彩色圖像經(jīng)常會(huì)發(fā)生彩色偏移。本文使用Gray World彩色均衡方法來消除這種彩色偏移。該方法首先通過圖像的R,G,B三個(gè)分量中各自的平均值avgR,avgG,avgB確定出圖像的平均灰度值avgGray,然后調(diào)整每個(gè)像素的R,G,B值,使得調(diào)整后圖像的R,G,B三個(gè)分量中各自的平均值都趨于平均灰度值avgGray。實(shí)驗(yàn)結(jié)果表明,消除彩色偏移能有效提高算
法的檢測(cè)率和準(zhǔn)確率。
2.2 類膚色檢測(cè)
本文算法最為關(guān)鍵的一步便是人體皮膚區(qū)域的粗檢測(cè)。檢測(cè)方法是計(jì)算圖像像素與膚色模型的相似度,這個(gè)值描述了像素與膚色的相似程度。相似度計(jì)算公式為:
通過計(jì)算圖像中每個(gè)像素與膚色模型的相似度,生成一幅類膚色灰度圖像,如圖1所示。
2.3 閾值分割
由于人體皮膚區(qū)域的像素與膚色模型的相似程度較高,計(jì)算得到的相似度值就比較大,因此在類膚色灰度圖中,皮膚區(qū)域顯得比其他部分更亮。這樣一來,通過選取合適的閾值即可分割出膚色區(qū)域。
本文實(shí)驗(yàn)選擇的閾值以0.1為間隔從0.65逐漸減小到0.05。通過對(duì)選擇的相鄰兩個(gè)閾值的圖像相減,可以找到分割區(qū)域數(shù)量變化最小的閾值取值點(diǎn),這個(gè)閾值就是最佳闞值。根據(jù)這個(gè)閾值,就可以將類膚色灰度圖轉(zhuǎn)換為二值圖。
圖2為轉(zhuǎn)換后的二值圖。
2.4 區(qū)域特征分析
由于閾值分割得到的二值圖中包含多個(gè)類膚色區(qū)域,這就需要先對(duì)這些區(qū)域進(jìn)行標(biāo)記,以便逐個(gè)處理。為了不影響對(duì)人臉整體形狀的檢測(cè),采用形態(tài)學(xué)操作對(duì)標(biāo)記后的膚色區(qū)域進(jìn)行特征分析,以決定該區(qū)域是否包含一個(gè)人臉。這些特征主要包括孔洞、質(zhì)心坐標(biāo)、方向角、面積和高寬比。
由于人臉上包含有眼睛、眉毛、鼻子和一張嘴,因此在分割出來的人臉區(qū)域中至少包含一個(gè)孔洞,而且人臉的高寬比值通常接近1,這個(gè)特征參數(shù)就可以排除掉大部分的非人臉區(qū)域。實(shí)驗(yàn)中的高寬比值限定在0.6~1.2之間,當(dāng)檢測(cè)區(qū)域的高寬比值落在該區(qū)間時(shí),則認(rèn)為該區(qū)域是一個(gè)人臉候選區(qū)域。
3 模板匹配
模板匹配就是將預(yù)先建立的人臉模板與篩選出來的人臉候選區(qū)域進(jìn)行相關(guān)性匹配。匹配時(shí),首先根據(jù)候選區(qū)域的大小、質(zhì)心坐標(biāo)和方向角度調(diào)整人臉模板的尺寸、方向和位置,然后才進(jìn)行匹配。預(yù)先建立的人臉模板如圖3所示。首先用16個(gè)不同的人臉灰度圖像計(jì)算得到一張平均臉,然后從中分割出人臉的主要部分,作為實(shí)驗(yàn)中使用的人臉模板。
模板匹配常用的一種測(cè)度為模板與原圖像對(duì)應(yīng)區(qū)域的誤差平方和。確定這個(gè)值的一種方法便是使用歸一化互相關(guān)系數(shù)(以下簡(jiǎn)稱相關(guān)系數(shù))。
兩個(gè)圖像矩陣的相關(guān)性匹配通過計(jì)算式(3)得到:
經(jīng)過多次測(cè)試發(fā)現(xiàn),當(dāng)相關(guān)系數(shù)取值大約為0.6時(shí),兩個(gè)矩陣匹配較好。如果人臉模板矩陣和人臉候選區(qū)域矩陣的相關(guān)系數(shù)是0.6或者更高,則認(rèn)為該區(qū)域包含一個(gè)人臉。測(cè)試完所有的膚色區(qū)域后,在原圖中用矩形框標(biāo)示檢測(cè)到的每個(gè)人臉。檢測(cè)結(jié)果如圖4所示。
4 結(jié)語(yǔ)
實(shí)驗(yàn)中用包含有60個(gè)不同人臉(包括黑人、白人和黃色人種)的20幅圖像對(duì)算法進(jìn)行測(cè)試,其中相關(guān)系數(shù)和高寬比值都選擇最佳值。測(cè)試結(jié)果表明,本文算法對(duì)實(shí)際生活中人臉圖像的正確檢測(cè)率達(dá)到了84%,對(duì)姿態(tài)和表情同樣具有較高的魯棒性,基本上達(dá)到了預(yù)期的目標(biāo)。