萬 靜 袁 澤 張雪超
1(北京化工大學信息科學與技術(shù)學院 北京 100029)2(北京工商大學 北京 100036)
?
復雜背景下基于人臉的自適應膚色檢測
萬 靜1袁 澤1張雪超2
1(北京化工大學信息科學與技術(shù)學院 北京 100029)2(北京工商大學 北京 100036)
針對傳統(tǒng)膚色檢測在復雜背景下對類膚色像素的抗干擾能力弱,以及光照對膚色顏色特性影響的問題,提出一種自適應的膚色檢測方法。通過Adaboost結(jié)合Haar的人臉檢測,并利用改進后的二值化提取出包含光照信息的皮膚區(qū)域。然后利用改進后的直方圖反向投影法,結(jié)合膚色樣本在YCbCr空間中Y亮度分量訓練得到的最佳閾值,對整幅圖像進行膚色檢測。實驗結(jié)果表明,該方法在復雜背景下以及光照的影響均有良好的魯棒性,在準確率、召回率方面較傳統(tǒng)的膚色檢測方法有提高。
膚色檢測 局部二值化 自適應閾值 直方圖反向投影
膚色檢測作為圖像處理中一項重要的研究內(nèi)容,能作用在人臉檢測與識別、手勢識別、人機交互以及基于內(nèi)容的不良圖像過濾等眾多計算機視覺領域。通過膚色檢測可以有效排除背景干擾,縮小處理范圍,提高工作效率以及結(jié)果的準確度。
在對膚色檢測研究中,Duan等[1]提出一種基于YUV和YIQ顏色空間結(jié)合的參數(shù)法,固定顏色分量閾值對膚色像素進行檢測。Jure等[2]又進一步發(fā)現(xiàn)膚色像素點在其他顏色空間有著更優(yōu)秀的聚類性,將膚色像素點轉(zhuǎn)換到Y(jié)CbCr顏色空間后,其Cb和Cr分量在2D平面聚類成一個類似橢圓的形狀,于是對膚色像素點在Cb-Cr平面進行擬合,構(gòu)造出一個橢圓邊界模型,對膚色和非膚色進行區(qū)分。這種明確固定分界線的方法雖然計算方便,并且能有效地檢測出膚色像素,但是對于和膚色顏色相近的背景環(huán)境的區(qū)分效果十分不理想。
為了解決復雜背景干擾的問題,近年來,學習型的自適應膚色檢測方法[3-5]陸續(xù)被提出,利用臉部膚色像素點為學習樣本,分別采用建立高斯模型和加權(quán)平均Mahalanobis(馬氏)距離來判別其他像素點是否為膚色點。但是它們對臉部膚色像素提取方案并不理想,文獻[4]使用固定閾值的方法提取膚色像素點,文獻[5]使用Sobel邊緣檢測來檢測出膚色像素點,這兩種方法提取膚色像素時對陰影處理的魯棒性不好,導致信息不準確。在自適應學習過程中采用訓練高斯模型耗時比較高,無法進行實時性應用,并且對于提取出的人臉膚色像素點屬于小樣本訓練,并不太適合在大樣本環(huán)境下才能表現(xiàn)優(yōu)秀的高斯模型法。
針對上述問題,本文對自適應膚色檢測方法進行了改進。首先利用人臉檢測,采用改進后的自適應二值法提取人臉中的膚色像素,改進后的二值化充分考慮了陰影的影響,保證了提取信息的完整性。然后利用YCbCr顏色空間中Cb-Cr分量的直方圖反向投影算法并結(jié)合Y分量的范圍對分割出來的區(qū)域進行分類判斷。這樣做既考慮到了亮度信息,對光照、陰影有良好的魯棒性,可減小漏檢率;又能準確檢測出圖像中的膚色區(qū)域,有效改進類膚色背景干擾這一難題。
本文提出的自適應膚色檢測原理就是利用待測圖像本身可以確定的信息對已知膚色檢測算法和相關(guān)閾值加以更新,利用更新后的結(jié)果對原待檢圖像進行檢測,得到更為準確的檢測效果。本文算法的框架如圖1所示。
圖1 自適應膚色檢測算法框架
1.1 膚色像素提取
(1) 人臉檢測
準確地提取出膚色像素樣本點是整個算法的前提,為了適應不同環(huán)境的膚色檢測,本文針對每一張待測人物圖像提取可確認的膚色區(qū)域。
人臉檢測目的是分割出人物確認的膚色區(qū)域以及排除邊緣背景和頭發(fā)的干擾。首先采用adaboost+haar[6]的人臉檢測方法檢測出人臉的具體大小及方位。然后根據(jù)三庭五眼的人臉比例如圖2所示,以檢測到的人臉圓心O為區(qū)域中心,人臉圓的半徑r為邊長,劃出一塊正方形的人臉部分,這樣做能有效達到預期目的。
圖2 人臉檢測及截取示意圖
(2) 非膚色區(qū)域排除
對區(qū)域內(nèi)存在的非膚色像素進行排除,例如眉毛、眼睛以及鼻子陰影。為了保證提取到膚色像素樣本的準確性,本文將人臉區(qū)域分為三類:眼白和牙齒;眉毛、眼球和鼻子陰影;膚色區(qū)域。由經(jīng)驗可知,以上三類在顏色特性上屬于三個區(qū)間,所以分開進行比較排除。
首先對眼白和牙齒像素進行變換,白色在RGB空間的三個分量數(shù)值很接近并都趨近于255,而膚色的R(紅色)>G(綠色)>B(藍色),并且數(shù)值接近,所以可以設定一個限制條件來判別像素點P的預屬性:
F:|Value(R)-Value(G)|=T1
Value(G)-Value(B)=T2
T1 P∈膚色 其中Value(R)、Value(G)、Value(B)分別為像素在RGB空間三個通道的分量數(shù)值。 通過26張人臉圖像,對膚色部分進行人工標注得到229 736個膚色像素點。其中9張人臉圖像的牙齒、眼白較清晰,共提取546個非膚色像素點。按照上述統(tǒng)計規(guī)則進行比較區(qū)分,得到閾值t=5時兩者區(qū)分效果最好。 其次對眼球、眉毛以及鼻子處陰影部分進行排除。采用在HSV空間的V分量上進行處理,其表示的為色彩的明亮程度,范圍為0(黑色)~255(白色),并且使用一種改進后的自適應閾值區(qū)域二值化的方法來排除非膚色部分的干擾。傳統(tǒng)的自適應閾值二值化法為Otsu(最大類間方差法),但是傳統(tǒng)的算法對類間方差為單峰的圖像效果十分優(yōu)秀。如果有光影的影響,類間方差呈現(xiàn)雙峰或多峰,分割效果不理想如圖3所示,右半部分光亮度弱的直接二值化為非膚色,失去了大量有效信息。 圖3 傳統(tǒng)Otsu算法結(jié)果 為了解決這一問題,本文結(jié)合局部二值化的原理,在人臉圖像上以單個眼睛的大小為模板,也就是三分之一邊長為寬度,五分之一邊長為高度的窗口將人臉分為15個矩形塊。然后在每個矩形塊中進行Otsu算法求得最佳閾值t,以該最佳閾值對矩形塊進行二值化,具體算法如下: Step1 將圖像image按照寬的1/3,高的1/5分割成15部分: (1) 其中Simage表示輸入圖像,Si分割后每部分的圖像。 Step2 計算分割后圖像Si的灰度直方圖,并對直方圖進行歸一化: (2) 其中M為所有像素點在總數(shù),nj為灰度級為j的像素點數(shù),Pj為像素點灰度為j時的概率。 Step3 以灰度級t為閾值,可以將灰度級分為兩類:C1、C2,對于這兩類,每一類出現(xiàn)的概率w0、w1為: (3) Step4 根據(jù)每一類的概率,可以計算出每一類累積灰度值μ0、μ1為: (4) Step5 對于整個0~T(255)灰度級,可以求得累積灰度值μT為: (5) Step6 最終計算出類間方差σ為: σ=(μT×w0-μ0)2/(w0×w1) (6) 當類間方差σ最大時,表示兩類的差距最大,此時對應的閾值t為最佳分割閾值。 (3) 膚色像素提取效果 對圖3中的人臉圖像進行改進后的二值化后可以得到結(jié)果如圖4所示。 圖4 優(yōu)化后Otsu算法結(jié)果 對于右邊亮度較暗的部分有了明顯改善,但是圖中分割塊1、2、7、10、11之前為較平滑的膚色區(qū)域,經(jīng)過局部二值化后,對它們進行了一次錯誤分割,導致產(chǎn)生了一些信息的丟失。所以為了保證信息的完整性,還應該用局部二值化后的結(jié)果與全局二值化的結(jié)果進行幾何運算,找回丟失的信息,如圖5所示。 圖5 圖像幾何運算 1.2 自適應膚色判別 (1) 改進的直方圖反向投影算法 為了將膚色區(qū)域找出來并成功避開背景的干擾,本文以YCbCr顏色空間中的Cb-Cr分量為參考,進行直方圖反向投影算法。文獻[8]中的研究如圖6所示,膚色像素點在YCbCr顏色空間的聚類性十分優(yōu)秀,特別是在Cb-Cr平面上投影,而其Y(亮度)分量的幾乎貫穿整個Y(亮度)軸,所以在之前的膚色檢測研究中,大部分方法都是基于Cb-Cr兩個分量。但是從圖7(a)顯示膚色像素點在Cb-Cr平面的分布一定程度上還是受Y(亮度)分量的影響(亮度高和低的部分Cb-Cr分量的范圍相對較小),如果只考慮Cb-Cr分量會使誤檢率增加,如圖7(b)所示。如果使用Y-Cb-Cr全部顏色信息作為反向投影參數(shù),相當于在圖像中查找和樣本像素點像素值相同的點,會產(chǎn)生大量的漏檢,如圖7(c)所示。 圖6 文獻[8]膚色像素分布 圖7 檢測結(jié)果 所以本文在反向投影的基礎上添加Y分量的閾值標準,在一定范圍內(nèi)進行查找,這樣在不增大漏檢率的同時還可降低誤檢率。具體步驟如下: Step1 使用已提取的人臉膚色像素點共n個:Pi(Y,Cb,Cr) (i=1,2,…,n),建立Cb-Cr分量的樣本直方圖模型。 Step2 引入Y分量參數(shù),將直方圖每個bin中的m個像素點:Pbin-j(Y,Cb,Cr)(j=1,2,…,m)對應的Y分量求和并求得平均值Ebin-y: (7) 其中Pbin-j(Y)為直方圖每個bin中的像素點Pbin-j(Y,Cb,Cr)中Y分量值。 Step3 同對測試圖像的所有像素建立Cb-Cr分量的直方圖。 Step4 對測試圖像中的像素P(w,h)在其直方圖中所在bin的位置,查詢該像素在樣本直方圖模型中相同位置所對應的bin數(shù)值,并且將待測像素點的Y分量與其所在bin對應的Ebin-y進行比較,如果滿足:|Y-Ebin-y|<β,bin數(shù)值不變,否則置為0。 Step5 將查找得到的bin數(shù)值代替原圖像中的像素P(w,h)的值,也就是反向投影過程。 Step6 對測試圖像中的每一個像素都采用上述的反向投影步驟,最后得到的就是測試圖像根據(jù)膚色樣本投影出來的膚色概率結(jié)果圖。 (2) 改進算法的結(jié)果 根據(jù)改進后算法以圖7(a)為例可以得到檢測正確率T與閾值β的關(guān)系以及膚色檢測效果如圖8所示。圖中Y軸表示膚色、非膚色判別正確的總和比上待測圖像總的像素點,也就是正確檢測率TAccuracy: (8) 圖8 檢測正確率與閾值β的關(guān)系圖 可以看到隨著β的變化,正確率先增大后減小,符合上一段中提到的規(guī)律:β=0時表示Y分量和平均值Ebin-y相等,漏檢率較高;β=255時表示不考慮Y分量,誤檢率較高。所以取閾值β=55時,檢測效果最好,其膚色檢測效果如圖9所示。對于每幅待檢圖像,Y分量閾值并不相同,所以可采用多幅圖像進行擬合訓練找到最佳閾值。 圖9 改進后算法膚色檢測結(jié)果 2.1 實驗數(shù)據(jù)集 本文選擇Pratheepan[11]人物膚色數(shù)據(jù)集進行實驗。針對數(shù)據(jù)集中的32張人物圖像,首先選取12張作為參考,訓練出1.2節(jié)中的最佳Y分量閾值β;然后使用另外20張作為測試集,驗證訓練結(jié)果,并與傳統(tǒng)的參數(shù)法[1]、學習型的膚色檢測法(融合法)[11]以及亮度自適應法[5]的結(jié)果進行比較。 2.2 實驗步驟與分析 (1) Y分量閾值的訓練及驗證 用于訓練的12張樣本共包含2 459 261個像素點并且人工標注好膚色點和非膚色點。首先,使用1.1節(jié)中的方法檢測出每張圖像中的人臉并處理提取膚色像素樣本點。然后,使用1.2節(jié)中的方法,利用每張圖像提取出來的膚色像素點投影出整幅圖像中的像素點并與標注結(jié)果作比較,得出檢測正確率T與閾值β的關(guān)系圖,如圖10所示。從圖中可以看出β∈[55,105]時,檢測效果最優(yōu)。 圖10 樣本檢測正確率與閾值的關(guān)系 驗證訓練結(jié)果是使用測試集,方法和訓練步驟一致,只是判斷標準變?yōu)椋簻蚀_率TPrecision、召回率TRecall以及F值。20張測試樣本,共3 454 050個像素點,其中膚色像素點793 581個,測試在不同Y分量閾值下的檢測結(jié)果如圖11所示。 (9) (10) (11) 圖11 不同Y分量閾值下的測試結(jié)果 可以從結(jié)果中得到:當Y分量的閾值β=105時,判斷標準F值最大,也就是召回率和準確率協(xié)調(diào)平衡的最優(yōu)結(jié)果,而此結(jié)果和實驗第一步的訓練結(jié)果相吻合,β∈[55,105]。 (2) 對比實驗 使用20幅圖像作為測試集,分別使用參數(shù)法、融合法、亮度自適應進行實驗,并與本文方法結(jié)果進行比較,其中Y分量閾值β的訓練結(jié)果為[55,105]。所以測試過程中取β=80,檢測效果圖如12所示,各項參數(shù)結(jié)果如表1所示。 表1 測試集在不同方法下的測試結(jié)果 由圖12中的檢測效果對比可以看出,參數(shù)法對背景判斷最差,但是表1中其召回率最高說明其檢測出來的膚色像素點數(shù)量最多,適合大規(guī)模的檢測,對特定環(huán)境的檢測效果不好。而本文方法無論是背景環(huán)境還是光照影響的處理都有較好表現(xiàn),而且準確率、召回率對于融合法都有明顯的提高。在線亮度自適應法的召回率雖然優(yōu)于本文方法,但是本文的準確率確更高,最終的綜合判斷標準F值最高。 圖12 檢測結(jié)果比較 本文通過顏色分量結(jié)合亮度分量提出一種自適應的膚色檢測,檢測到人臉后并不是根據(jù)膚色特征提取樣本點,而是通過人臉分布以及改進后的局部自適應二值化方法,保證了正樣本提取的完整性。然后通過直方圖反向投影算法,能有效排除復雜背景下類膚色像素的干擾,在保證正檢率的同時還具有較低的誤檢率,并且在此過程中還考慮了亮度對膚色的影響,進一步提高了正確率。 [1] Duan Lijuan,Cui Guoqin.Adult Image Detection Method Base-on Skin Color Model and Support Vector Machine[C]//The 5th Asian Conference on Computer Vision,2002,1:23-25. [2] Jure Kovac,Peter Peer.Human Skin Colour Clustering for Face Detection[J].International Conference on Computer as a Tool,2003:144-148. [3] Simone Bianco,Raimondo Schettini.Adaptive Color Constancy Using Faces[J].IEEE Transactions on Pattern Analysis and Machine Intelligence,2014,36(8):1505-1518. [4] 方晶晶,李振波.人體膚色區(qū)域的自適應模型分割方法[J].計算機輔助設計與圖形學學報,2013,25(2):229-234. [5] Fang J J,Li Z.Human Skin Color Region Segmentation Based On Adaptive Model[J].Journal of Computer-Aided Design & Computer Graphics,2013,25(2):229-234. [6] 王任大,尹勇.基于在線學習的亮度自適應皮膚區(qū)域檢測方法[J].系統(tǒng)仿真學報,2014,26(9):2121-2125. [7] Wang R D,Yin Y.Luminance Adaptive Method for Skin Area Detection Based on Online Learning[J].Journal of System Simulation,2014,26(9):2121-2125. [8] 閆斌,梁嵐珍.改進的膚色提取法在人臉檢測中的應用[J].計算機仿真,2014,31(10):354-357. [9] Yan B,Liang L Z.Improved Color Model Used in Face Detection[J].Computer Simulation,2014,31(10):354-357. [10] Zhu Y.Face Detection Method Based on Multi-feature Fusion in YCbCr Color Space[C]//5thInternational Congress on Image and Signal Processing,Chongqing,China.USA:IEEE,2012:1249-1252. [11] Hsu R,Abdel-Mottaleb M,Jain A.Face Detection in Color Images[J].IEEE Transactions on Pattern Analysis and Machine Intelligence (S0162-8828),2002(5):696-706. [12] Chen Z X,Liu C Y.Fast face detection algorithm based on improved skin-color model[J].Arabian Journal for Science and Engineering,2013,38(3):629-635. [13] Kim C,Choi S I,Turk M.A new biased discriminate analysis using composite vectors for eye detection[J].IEEE Transactions on Systems Man and Cybernetics:Part B-Cybernetics,2012,42(4):1095-1106. [14] Tan W,Chan C,Yogarajah P.A Fusion Approach for Efficient Human Skin Detection[J].IEEE Transactions on Industrial Informatics,2012,8(1):138-147. FACE-BASED ADAPTIVE SKIN COLOUR DETECTION IN COMPLEX BACKGROUND Wan Jing1Yuan Ze1Zhang Xuechao2 1(CollegeofInformationScienceandTechnology,BeijingUniversityofChemicalTechnology,Beijing100029,China)2(BeijingTechnologyandBusinessUniversity,Beijing100036,China) Traditional skin colour detection has the problems of weak anti-interference capability for similar skin colour pixels in complex background and the influence of illumination on characteristics of skin colour. In light of these, we propose an adaptive skin colour detection approach. First, it extracts the skin area with illumination information by combining Adaboost with Haar face detection and making use of the improved binarisation algorithm. Then, it employs the improved histogram back projection method and combines the Y brightness components of skin colour sample in YCbCr space to find the optimal threshold through training, and makes skin colour detection on entire image. Experimental result shows that our approach is robust in complex background and under the influence of illumination. Compared with tradition skin colour detection approaches, our approach has the improvement in both precision and recall. Skin colour detection Local binarisation Adaptive threshold Histogram back projection 2015-03-10。中央高?;究蒲袠I(yè)務費項目(zz1311)。萬靜,副教授,主研領域:信息智能系統(tǒng)。袁澤,碩士生。張雪超,副教授。 TP391.4 A 10.3969/j.issn.1000-386x.2016.11.0352 實驗與結(jié)果分析
3 結(jié) 語