王 攀,李少波
(貴州大學 計算機科學與技術學院,貴州 貴陽 550025)
基于膚色和FBLBP算法的人臉檢測
王 攀,李少波
(貴州大學 計算機科學與技術學院,貴州 貴陽 550025)
近年來,人臉檢測作為一個熱門的研究領域,諸多有效的檢測方法層出不窮。在檢測結果和檢測速度方面較原來的檢測方法都有很大的提升。在眾多的檢測算法中,FBLBP(Flexible Block-based Local Binary Patterns)算法在檢測速度和準確度方面均有優異的表現。但在多人臉環境,單一的人臉檢測結果還不是很理想。在FBLBP算法的基礎上融合膚色檢測,即對圖像進行膚色預處理,將圖像中的膚色區域優先提取出來,然后使用改進后的FBLBP算法在膚色區域優先進行人臉檢測,從而使人臉檢測的速度和準確度有更大的提高。采用Matlab進行編程實驗,使用收集的圖片對FBLBP算法、融合膚色和改進后的FBLBP算法進行對比。實驗結果表明,融合膚色和改進的FBLBP算法的速度和準確性均有所提高。
人臉檢測;膚色分割;FBLBP算法;局部二進制;分類器
隨著智能和監控技術在各領域的廣泛應用,人臉檢測作為自動人臉識別的關鍵,受到越來越多的關注。通常所說的人臉檢測就是從給定的圖像或視頻中判定人臉的數目、位置和大小。人臉檢測的精確度對人臉識別效果有重要的影響[1]。提高人臉檢測的速度和精度,使得人臉檢測能更好地應用于現代生活中,成為眾多學者和專家研究的重要課題之一。
隨著研究的深入,相繼提出了許多算法。早期的這些算法都是基于統計學習的分類器且用于人臉的正面檢測,比如神經網絡算法[2]、篩選的稀疏網絡[3]、支持向量機[4]等。這些方法雖然取得了一定的成果,但也受到了系統速度的限制。后來,Viola和Jones提出了基于boosting算法的人臉檢測[5],該方法在速度和準確性方面表現優異,使它成為目前最流行的人臉檢測方法之一。基于膚色的人臉檢測相比其他的人臉檢測,速度較快,但誤差率也較高。FBLBP(Flexible Block-based Local Binary Patterns)[6]的人臉檢測在多人臉圖像的情況下,在存儲空間和檢測速度方面均有較好的檢測結果。文中融合膚色和FBLBP進行人臉檢測,進一步提高人臉檢測的速度。
對于圖像中的人臉區域,顏色的變化較小。利用此特征,可以對圖像中的人臉進行檢測。首先選擇合理的色彩空間,鑒于在檢測人臉的過程中,色度信息異常重要,可以將常用的RGB色彩空間轉換為其他的色彩空間。
1.1 色彩空間的轉換及膚色分割
圖像處理中常用的色彩空間有RGB、YCbCr、HSV和YIQ等[7]。文中使用YCbCr色彩空間。在YCbCr色彩空間中,Y分量表示亮度,Cb和Cr分量分別表示藍色和紅色的色度。從RGB空間到YCbCr空間的轉換公式為[8]:


(1)
通過式(1),圖像中的亮度和色度信息被分開,由此減少了亮度對膚色區域的影響。
在YCbCr色彩空間中,人臉膚色區域中的Cb和Cr分量都在一個相對穩定的范圍內:90 圖1 圖像處理結果 1.2 確定膚色區域的預處理過程 作為人臉檢測過程中的初始部分,良好的預處理能提高人臉檢測的速度和準確度。由圖1(b)中可以看出,和人臉顏色相同的膚色區域,如手臂、脖頸,還有與膚色顏色相似的衣物也被當成了膚色區域被檢測出來,并且還存在諸多的噪聲點。 針對上述情況,采用數學形態學中的腐蝕、膨脹等操作對處理后的圖像再做進一步的處理,結果如圖2所示。 由于人臉為近橢圓形,可以采用可調節大小的圓形區域對圖像進行形態學的預處理。處理的步驟如下: (1)對膚色分割后的圖像的連通區域進行標記,記每個連通區域的中心為Pi,其中i=1,2,…,N。 (2)粗略估算出連通區域的大小。 圖2 對圖1(b)圖像的進一步處理 (3)計算連通區域面積的平均值,記為A。 通過上述步驟,可以對連通區域進行標記(由連通區域的中心Pi得出),并估算要檢測區域的半徑r。將這些數據記錄下來,為人臉區域的檢測做準備。 FBLBP[6]算法是由華為多媒體實驗室的三位研究員及古巴的一位學者共同提出的,它不使用MBLBP(Multi Block Local Binary Patterns)[10]和MSOF(Multi-scale Structured Ordinal Features)[11]中的固定式結構,而是在訓練步驟中,通過計算比較,來設定內部塊之間的距離和位置。在沒有控制的環境中,FBLBP有更好的靈活性,所占用的存儲空間更少,能獲得更好的人臉檢測結果。若將膚色檢測和人臉檢測相結合,在人臉區域優先考慮和判斷,使得人臉檢測的速度和準確度在原來的基礎上得以提高。 局部二進制(Local Binary Patterns,LBP[12])最早是作為一種有效的紋理描述算子提出的,由于其對圖像的局部紋理特征的卓越描繪能力而得到了廣泛應用。然而,也正是由于這種特征的局部化特點,使它易受噪聲的影響不夠健壯,缺乏對圖像的粗粒度把握(LBP編碼的獲得見圖3)。因此MBLBP被提出以彌補傳統LBP的不足。在MBLBP的計算中,傳統的LBP算子像素值之間的比較被像素塊之間的平均灰度的比較替代(MBLBP算子的獲得見圖4)。 圖3 基本LBP算子 圖4中,每個黑色方格代表一個像素,每個大的方格代表一個像素塊,其值是由3*3共9個像素的灰度 圖4 MBLBP算子 取平均得到。 FBLBP的計算方法和MBLBP相似。FBLBP塊之間的距離不像MBLBP之間那樣均勻。計算步驟可參考文獻[6]。 算法1:Gentleboost分類器的訓練。 1)初始化wj=1/N,j=1,2,…,N,F(·)=0。 2)Form=1,2,…,M (2)更新F(S)=F(S)+fm(S); (3)wj=wje-yifm(Si)并進行標準化。 更多的實現細節參見文獻[6],此處不再贅述。對于篩選后的結果,選擇一塊作為中心塊,另一塊作為相鄰塊,進行候選塊的搜索。對相鄰塊的選擇,增加一個判斷條件,使得相鄰塊的計算量減少,以提高人臉檢測速度。具體算法如下: 算法2:候選塊的搜索。 輸入:訓練樣本的權重wi,i=1,2,…,N。 1)計算T的值,并進行自動設置。 (1)對圖像進行連通區域的檢測,存儲每個連通區域的面積及中心位置Pi; (2)根據連通區域的面積計算出平均值及原型結構的半徑r。 2)初始化FBLBPk=?。 3)通過極小值來查找最好的關鍵塊和第一個相鄰塊: FBLBPk=FBLBPk∪xn 4)按照設定的塊的大小來檢測更多的塊: While(I { err_old=err; If(err>err_old) break; else FBLBPk=FBLBPk∪xn end } end 5)輸出FBLBPk。 對FBLBP和融合了膚色和FBLBP的人臉檢測結果進行比較。使用在Internet及數碼相機拍攝的100張圖片,包括398張人臉,結果如表1所示。對于速度方面的檢測,采用同樣的測試樣本,測試環境為Pentium(R)Dual-CoreCPU2.20GHz,2GB內存、Win7操作系統,采用Matlab編程實現。 表1 兩種方法的檢測率的比較 從表1中可以看出,在預處理過程中采用融合人臉和FBLBP的人臉檢測率[14]略高于采用FBLBP的方法。對于檢測時間,融合膚色和FBLBP的人臉檢測低于FBLBP,特別是當圖片數量不斷增加時,這種優勢將更加明顯。部分人臉的檢測結果如圖5所示。 圖5 部分人臉的檢測結果 文中將膚色分割和FBLBP相結合進行人臉檢測。首先進行色彩空間的轉換,選出連通的膚色區域,然后對這些區域優先使用FBLBP方法進行人臉檢測。實驗結果表明,在保證準確度的同時,使得人臉檢測的速度得到進一步的提高,但對于人臉較多的圖片,該算法還可以進一步改進,以提高準確性。 [1]ZhangLijing,LiangYingli.Afastmethodoffacedetectioninvideoimages[C]//2ndinternationalconferenceonadvancedcomputercontrol.[s.l.]:[s.n.],2010:490-494. [2]RowleyHA,BalujaS,KanadeT.Neuralnetwork-basedfacedetection[C]//IEEEconferenceoncomputervisionandpatternrecognition.[s.l.]:IEEE,1996:203-208. [3]YangMH,DanR,AhujaN.Asnow-basedfacedetector[J].AdvancesinNeuralInformationProcessingSystems, 1999,17(3):862-868. [4]OsunaE,FreundR,GirosiF.Trainingsupportvectormachi-nes:anapplicationtofacedetection[C]//IEEEconferenceoncomputervisionandpatternrecognition.[s.l.]:IEEE,1997:130-136. [5]ViolaP,JonesMJ.Robustreal-timefacedetection[J].InternationalJournalofComputerVision,2004,57(2):137-154. [6]ChaiZhenhua,ZhangYu,DuZhijun,etal.Learningflexibleblockbasedlocalbinarypatternsforunconstrainedfacedetection[C]//IEEEinternationalconferenceonmultimediaandexpo.[s.l.]:IEEE,2014:1-6. [7] 苑瑋琦,韓春霞.復雜背景下的多人臉檢測方法[J].計算機應用,2010,30(3):635-638. [8]GonzalezRC,WoodsRE,EddinsSL.數字圖像處理[M].阮秋琦,譯.Matlab版.北京:電子工業出版社,2008. [9] 林 慶,羅 敏.基于顏色和幾何關系的人臉檢測方法[J].計算機工程與設計,2008,29(13):3396-3398. [10]ZhangLun,ChuRufeng,XiangShiming,etal.Facedetectionbasedonmulti-blockLBPrepresentation[C]//Internationalconferenceonbiometrics.[s.l.]:[s.n.],2009. [11]LiaoShengcai,LeiZhen,LiSZ,etal.Structuredordinalfeaturesforappearance-basedobjectrepresentation[C]//3rdinternationalconferenceonanalysisandmodelingoffacesandgestures.[s.l.]:[s.n.],2007:183-192. [12]OjalaT,PietikainenM,MaenpaaT.Multiresolutiongray-scaleandrotationinvarianttextureclassificationwithlocalbinarypatterns[J].IEEETransactionsonPatternAnalysisandMachineIntelligence,2002,24(7):971-987. [13]FriedmanJ,HastieT,TibshiraniR.Additivelogisticregression:astatisticalviewofboosting[J].AnnalsofStatistics,1998,28:337-407. [14] 梁路宏,艾海舟,徐光祐,等.人臉檢測研究綜述[J].計算機學報,2002,25(5):449-458. Face Detection Based on Skin Color and FBLBP Algorithm WANG Pan,LI Shao-bo (College of Computer Science and Technology,Guizhou University,Guiyang 550025,China) As a hot area of research,a number of effective face detection methods have emerged in recent years.Compared with the state of art methods,the new face detection methods perform better in the speed and accuracy.Among these methods,FBLBP (Flexible Block-based Local Binary Patterns) algorithm has excellent performance.Only to use single method,in the multi-face environment,cannot reach the desired effect.The skin color detection and FBLBP algorithm is combined.Skin color preprocess is carried out to extract the skin color area and then the improved FBLBP algorithm is used to detect the face in the area extracted,so that the speed and accuracy of face detection has greater improvement.For experimental verification,the Matlab programming is adopted to compare the FBLBP and improved FBLBP.As a result,the improved one has better performance in speed and accuracy. face detection;skin color segmentation;FBLBP algorithm;local binary patterns;classifier 2015-08-03 2015-11-19 時間:2017-01-04 國家自然科學基金面上項目(51475097) 王 攀(1990-),男,碩士研究生,研究方向為機器視覺、圖像處理。 http://www.cnki.net/kcms/detail/61.1450.TP.20170104.1017.012.html TP301.6 A 1673-629X(2017)01-0044-04 10.3969/j.issn.1673-629X.2017.01.010

2 圖像的FBLBP的編碼處理


3 基于膚色和FBLBP的人臉檢測



4 實驗結果及分析


5 結束語