王東
(廣東嶺南職業(yè)技術(shù)學(xué)院,廣東廣州510663)
人臉識別技術(shù)是計算機信息處理中最熱門的技術(shù),它結(jié)合了圖像技術(shù)、計算機圖形學(xué)、模型識別等多個領(lǐng)域。人臉識別技術(shù)分4個方面:(1)皮膚檢測,在圖像中尋找出人臉區(qū)域,也可以說是將圖像中的背景和人的膚色進行分離;(2)人臉規(guī)范化,即校正人臉在尺度、光照和旋轉(zhuǎn)等方面的變化;(3)特征提取,從人臉圖像中映射提取一組能反映人臉特征的數(shù)值表示樣本;(4)特征匹配,將待識別人臉與數(shù)據(jù)庫中的已知人臉比較,得出相關(guān)信息。由于背景的復(fù)雜性、光照條件多變以及人臉表情豐富等原因,所以在人臉識別過程中必須要尋求一些能夠有效預(yù)防干擾的方法。
本文將自動化皮膚檢測作為研究的主要課題,并作為人臉識別的第一步,該項研究在諸如安全監(jiān)控、安檢系統(tǒng)、智能人機接口等領(lǐng)域具有廣泛的應(yīng)用價值。
在基于皮膚顏色的面部檢測中,有兩種主要的方法:
第一種方法是基于像素的模型,它通過處理人類皮膚顏色的所有部分的像素進行檢測。在這種方法中,每一個像素是被單獨處理的,并且它的最終狀態(tài)是判定是否為皮膚顏色,然后,基于面部結(jié)構(gòu)或其它的選項進而確定出圖像中的哪些像素點屬于面部;
第二種方法是基于圖像區(qū)域的狀態(tài),在這種方法中,面部圖像是首先隔離一張圖像中的某些區(qū)域,然后確定隔離區(qū)域是否屬于面部區(qū)域。
通常識別人臉圖像都是在計算機里完成的,所以這些圖像都是屬于二維RGB形式的圖像。所謂的RGB圖像是通過紅色(R)、綠色(G)和藍色(B)來實現(xiàn)彩色圖像的。它本身是采用DIE三維色彩空間,RGB的色彩數(shù)值是0-255,一共256級。0為色彩最弱的部分,呈現(xiàn)的顏色是黑色;而255表示色彩最強的部分,呈現(xiàn)的顏色是白色。它常被使用在計算機顯示設(shè)備中,所以它對光線的亮暗度是比較敏感的。在用RGB時最簡單的方法是將彩色圖像轉(zhuǎn)換成灰色圖像并取這三種顏色的分量的平均值。
JPEG圖像壓縮格式采用的是YUV空間,YUV空間是RGB空間的線性變換。轉(zhuǎn)換公式如下:
以Y分量作為圖像像素的灰度。將彩色像素轉(zhuǎn)換為灰度像素的公式為:
遍歷彩色圖像的每一個像素矢量,設(shè)矢量的紅、綠、藍三色分量值為R、G、B,則輸出的灰度圖像的對應(yīng)像素的值為0.299R+0.587G+0.114B。
現(xiàn)在有很多的顏色模型對圖像處理都有著很重要的作用,而且種類很多。當今廣泛使用的顏色定義和模型有:YUV,RGB,HIS,HSV,Normal RGB和YCrCb。在文中我們采用了HSV(Hue-Saturation-Value)顏色空間作為皮膚檢測的主要方法。它就是改變色濃和色深來獲得某種不同的顏色,也就是說,改變白色和黑色的比例,它是采用直觀的方法來描述圖像。
相對RGB,HSV更能表示出感知顏色的聯(lián)系,并在計算中保持簡單性。H(Hue)是色相,表示色彩的基本屬性,比如紅色、黃色等;S(Saturation)是飽和度,表示色彩的純度,S越高色彩純度越高;反之,S越小色彩純度越低,圖像灰度化更加明顯,S的取值范圍是1%-100%;V(Value)是明度(也叫做亮度),其取值范圍是0%-100%。HSV色彩空間把顏色通過圓柱坐標系加以描述,如圖2所示。圖中所示圓柱中心軸的取值為底部黑色,而頂部為白色,中間為灰色。它常用于計算機圖形應(yīng)用中,在運用圖3時必須選擇一個顏色做為特定圖形元素,在本文實驗中選取的顏色是黑色。
圖2 HSV的圖形描述
它也可以用另一種可視方法的圓錐體來表示。紅,藍,綠三種顏色夾角120度,就是RGB模式下的3個顏色分量,在這里H表示圓錐中心的角度,S表示圓錐的橫截面的圓心到這個點的距離,V表示圓錐橫截面的圓心到頂點的距離,這種方法能更精確地描述H值。要注意的是H是一個角度,這三個向量相加同樣可以得到這個六棱錐空間中的任意一點。所以RGB與HSV可以相互轉(zhuǎn)換。
圖3 HSV模型的圓錐表示適合于在一個單一物體中展示整個HSV色彩空間
因為人類的膚色種類有很多,而在RGB圖像里不同的光線也使膚色的范圍擴大了,比如在陰天里,畫面出來的顏色是灰沉的,而在有陽光的圖像,是鮮艷的,色彩是飽和的。所以,人的膚色也隨之變換,如果用RGB圖像作為皮膚顏色建模的話,將無法適應(yīng)外界光線的變化來區(qū)別皮膚的區(qū)域,所以采用HSV來建模,即采用H分量作為人臉皮膚顏色統(tǒng)計參數(shù),可以降低各種條件對建模的影響。在色相H分量中,皮膚顏色集中在某一小區(qū)域范圍內(nèi)。在HSV中,H分量表示了圖像的色彩信息,對光線強弱的影響是緩慢的。正因為這一特點,使用HSV模型能使圖像中的人的皮膚區(qū)域劃分得更完美。
用HSV色彩空間來建立個人皮膚彩色模型,再通過模型的概率化得到顏色表中最大的數(shù)值,這樣就可以直觀地進行歸一化處理。通過這樣的方法就能從任意的彩色圖像中進行膚色測試,將圖像背景與膚色部分分離開來。圖4說明了算法的步驟。它是用MATLAB工具去實現(xiàn)的。
圖4 HSV皮膚檢測流程
首先把RGB圖像轉(zhuǎn)換成HSV色彩空間,它是根據(jù)人對色彩的感知來實現(xiàn)的。HSV的算法是通過H的閾值進行膚色區(qū)域分割、相對重要性濾波、自適應(yīng)區(qū)域歸并等操作。這里皮膚的H色調(diào)可分布在0到50之間,S的取值為0.23到0.28(針對亞洲人的皮膚),下圖5所示為實驗原圖像。
實驗原圖為355×550×24bit的jpg圖像。
圖5 原圖
經(jīng)過多個實驗后,建議H的取值范圍為6到38之間,由圖像RGB轉(zhuǎn)成HSV的MATLAB程序運算如下:
圖6表示的是從RGB到HSV的轉(zhuǎn)變,通過MATLAB運算看到一幅HSV三個通道顏色R(紅),G(綠),B(藍)。
圖7表示的圖像是已轉(zhuǎn)換的二值圖,并改變它的閾值得到所有有關(guān)皮膚顏色的像素值為255(這一范圍通過H來建立),非皮膚的像素值使用0表示。圖7中的人和背景還是沒有被完全分離開來,可能背景的顏色不是屬于暗色,所以分割出來的目標不那么精確,在此必須應(yīng)用顏色一致性,以將真實的皮膚區(qū)域完全分離出來。所以H值的取值是很重要的。
圖6 HSV圖像
圖7 中間的效果
在圖7中有很多的不屬于皮膚的地方(檢測噪音),因為彩色圖像中的V值通常是不會為0的,使得H值域部分無法分辨,所以要用H值來檢測膚色區(qū)域。為了改變這個問題,需要采用5×5的皮膚區(qū)域濾波器,首先我們把皮膚的區(qū)域擴展到濾波器里面,使皮膚的范圍更精確,然后把非皮膚部分通過H閾值劃分范圍并填充為黑色,最后皮膚部分變成白色,結(jié)果如圖8所示。
使用了濾波器后進行區(qū)域的歸一化處理后,H=25得到了比較準確的皮膚區(qū)域。
圖8 成功的效果圖
本文提出的基于色度值的顏色識別方法能夠有效地提高顏色識別的精度,本文選取了一張帶有人像的照片用于試驗,將圖像中人的膚色作為識別目標顏色。首先確定了目標顏色(人的膚色)在HSV色彩空間中色度值的取值范圍,通過對色度值進行分割并過濾了膚色像素。用自適應(yīng)的方式使算法的復(fù)雜性變小,提高檢測效率。通過在HSV空間進行顏色識別,實驗總結(jié)歸納了圖像中識別目標顏色區(qū)域的方法。本研究在膚色分割中還有很大的改進余地,可進一步提高算法的正確率和速度。
[1] V.A.oliveira,A.conci.Skin Detection using HSV color space[BO/SL]:http://www.matmidia.mat.puc-rio.br/sibgrapi2009/media/posters/59928.pdf.
[2] Alberto Albiol http://ieeexplore.ieee.org/xpl/freeabs_all.jsp?arnumber=958968.
[3] A.Abadpour and S.Kasaei.Pixel-Based Skin Detection for Pornography Filtering[J].Iranian Journal of Electrical&Electronic Engineering,Vol.1,No.3,2005.
[4] 田巍,莊鎮(zhèn)泉.基于HSV色彩空間的自適應(yīng)皮膚檢測[J].計算機工程與應(yīng)用,2004.