潘廣全,王 偉
(1.山東中煙工業有限責任公司青州卷煙廠,青州,262500;2.山東正晨科技股份有限公司企業技術中心,濟南,250101)
一個完整的人臉自動識別系統包括人臉檢測定位和人臉識別兩個主要的技術環節,其中人臉的檢測定位是人臉識別的前提和關鍵。近年來由于在安全控制、視覺檢測、身份驗證和新一代人機界面等領域的應用,人臉檢測得到了廣泛的研究,并提出了很多解決方案。大體可分為3 類:基于知識規則的方法、基于可視特征的方法和基于模板的方法。基于知識規則的方法是使用源于研究者關于人臉的先驗知識規則對人臉檢測。基于可視特征方法是利用人臉的分布、顏色、紋理等可見特征來作為人臉的檢測特征。模板匹配方法是通過計算模板和圖像之間的相關性來實現人臉的檢測。
在視覺圖像處理與建模中,RGB 色彩空間經常被使用,然而RGB 色彩空間容易受光線強度的影響,各個參數分量之間的耦合性強,進行圖像建模比較困難,但YCbCr 色彩空間不易受光線強度的影響,膚色分布區域能很好的得到控制,有很好的聚類特性 ,可將RGB 色彩空間轉換到YCbCr 色彩空間進行膚色的提取,兩個色彩空間可以通過如下公式進行轉換:

從200 幅人臉照片中手工裁剪下350 個皮膚圖像樣本,圖像主要來源于互聯網,圖像中人物的年齡、性別各不相同,圖像的明暗度、尺寸大小以及分辨率等均不相同。膚色樣本從RGB 空間轉換到YCbCr 空間進行建模,通過計算可得到膚色面積上的像素點色度值(Cb,Cr),統計分析在CbCr 空間中得到的色度值,可得到膚色像素在CbCr 區域中的分布圖1。
由圖1 可以看出,在CbCr 空間中膚色像素聚集在一定的區域內,該區域大體取值情況如下:Cb

圖1 膚色聚類性分布圖
為[80,130],Cr 為[120,180],這說明膚色在該空間區域內具有較好的聚類性。該樣本膚色的分布可以用高斯模型
來進行數據擬合描述。膚色像素的Cb、Cr 值為高斯模型的輸入,膚色像素的概率值為輸出。其計算公式如下:

式中:m 為x 的均值,C 為協方差矩陣。通過對350 個膚色樣本進行統計得到均值m 以及協方差矩陣C,公式如(3)(4):

在膚色建模完成之后,進行膚色分割,下面是待檢圖片膚色分割算法的過程(如圖2 所示):
(1)首先將待檢圖片由RGB 空間轉換到YCbCr 空間。由建立的高斯膚色模型,計算 (Cr,Cb)值所對應的膚色概率值,由膚色概率值得到膚色似然圖(如圖3 所示)。
(2)選取適當的閾值將灰度圖像二值化,分割出圖像里面為膚色的區域。二值化中閾值的選取很重要,對于不同種族的膚色, 沒有一個固定的閾值可適用于所有圖像。自適應閾值被認為是一種可能對多數圖像分割都適用的處理技術,這里采用自適應閾值分割法進行的,應用最大類間方差法進行膚色分割處理。最大類間方差法就是以灰度為閾值,將直方圖分成兩類,計算兩類的方差值,分成的兩類的方差最大時,對應的灰度值就是閾值分割圖像灰度值。膚色分割后的二值化圖像如圖4 所示。

圖2 原圖

圖3 膚色似然圖

圖4 膚色分割圖
集合論包含腐蝕、膨脹、開運算和閉運算,腐蝕使圖像邊界收縮,消除小的物體,膨脹使圖像邊界外擴,可填補其中的空洞,開運算可在纖細點處分離圖像,平滑圖像邊界,閉運算可填充圖像細小空洞,還可以連接鄰近物體平滑邊界。
開運算的定義為:

閉運算的定義為:

公式中A 是待檢圖像二值化運算后的圖像,B 是進行腐蝕與膨脹運算的結構元素(值為1 或0)。
在本實驗中,使用3x3 的、2x2的結構元素分別對二值圖像進行開運算和閉運算。效果圖如圖5 所示。

圖5 形態學的處理
含有小噪聲與小毛刺的圖像經形態學處理后,大部分噪聲與毛刺被去除,可能有小部分非膚色區域存在。為了消除除非人臉區域,根據人臉的特征,使用先驗知識對二值化圖像進行分析,確定膚色區域的個數,在本實驗中,采用八連通標記,連接相同的成份為同一標號,否則為其分配不同的標號。人臉可采用如下三種人臉先驗知識進行篩選。
(1)確定區域內孔洞數目
經大量實驗證明,人臉皮膚區域由于眼睛、嘴巴、眉毛等非膚色區域的存在,使二值圖像中存在多個孔洞。采用歐拉數方法計算每一塊膚色區域中的孔洞數。歐拉數是連通成分數減去孔洞數,即
(2)區域的長寬比例
大部分情況下,人臉有一定傾斜,利用坐標定位判斷不在合理。我們可以對該區域邊界的所有點的坐標值進行統計分析并提取構成,分別記錄x 軸和y 軸上最小分量、最大分量的坐標值為人臉的長寬參數,令B、S 分別等于其較大者和較小者,求B 與S 的比值 就是所求的區域長寬比。經經科研機大量的人臉圖像統計分析可知,人臉來長寬之比約為1。圖像中可能有側臉,或著有的頸部和人臉相互連接,為防止正確的分割區域產生誤判,將長寬比率放寬以排除很明顯就不是人臉的區域。取 為人臉長寬比,對大于和小于這種比例關系的,直接去除該區域。可去除掉某些手、手臂等身體部分,以及類似膚色的區域。
(3)區域的面積
人的面部為橢圓形,在長度與寬度上存在一定的比例,但是在特殊的情況下,膚色區域也出現這種情況,例如人手攥成拳頭時,就呈橢圓形,這可以通過區域的面積進行排除,區域的長度與寬度確定好了之后,區域的面積為其像素點的個數,公式表達如下:

通過空間建模,膚色分割、形態學處理,在一定程度上排除了噪聲影響,使用人臉模板匹配的方法檢測得到的多個人臉區域,最終確定是不是人臉。出于檢測速度的考慮,只使用一個模板。本實驗中所用的人臉模板如下圖6 所示。此模板是通過200 幅男性和女性的正面臉確定的。它的操作過程如下:首先在200 幅圖像中手工截取人臉區域作為人臉樣本,由手工標定人眼的位置,以保證人眼在圖像中位置是固定的。然后對每一個人臉樣本作大小和灰度的標準化。對所得到的200 幅標準化圖像求平均值作為臉部模板。

圖6 模板臉

圖7 模板匹配與人臉定位圖
本實驗利用MATLAB 進行仿真,運行結果如圖8 所示,本文所提出的算法可適合各種人群,各種場合,準確率比較高,同樣適合于人臉有一定角度旋轉的情況。

圖8 實驗結果
本文提出了一種基于膚色和模板匹配相結合進行人臉檢測方法。MATLAB 仿真實驗證明,在復雜背景下人臉檢測的準確度較好,速度較快,對圖像中存在多個人臉和有眼鏡遮擋的人臉檢測也同樣有效。但是,該方法還存在著一些問題。對于待檢測的圖像中存在傾斜角度較大的臉臉部區域例如側臉,漏檢率較高。該算法在這些方面還有待改進。
[1] 段錦. 人臉自動機器識別[M],北京:科學出版社,2009:18-21
[2] 劉喜榮.田啟川.基于膚色模型和模板匹配的人臉檢測方法研究,太原科技大學學報[J],2010,31(5);373-377.
[3] HSU R-L,ABDEL-MOTTALEB M,JAIN A K. Face detection in color images[J].IEEE Transactions on Patten Analysis and Machine Intelligence,2002,24(5):696 - 707.
[4] 馬艷.基于顏色與模板匹配的人臉檢測方法[D].大連:大連理工大學,2006
[5] 全星慧.張磊.基于膚色模型與眼睛定位的人臉檢測方法[J],科學技術與工程,,2010,10(31);7822-7824
[6] 柳映輝.任德華.陳少杰.基于高斯膚色模型和圖像分割的人臉檢測, 天津科技大學學報[J],2010,25(5):64-67
[7] 趙麗紅.孫曉琳.王宇飛.徐心和.基于膚色的人臉檢測,工程圖學學報[J] ,2005(3);84-88
[8] 高成.Matlab 圖像處理與應用[M],北京:國防工業出版社,2007:185-215