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