許鵬飛,賈銀潔,朱夢潔,劉媛媛,宋 瑩
(1.淮安信息職業技術學院 計算機與通信工程學院,江蘇 淮安 223003;2.淮陰工學院 電子信息工程學院,江蘇 淮安 223003)
?
復雜背景下的人臉檢測算法研究與實現
許鵬飛1,賈銀潔2,朱夢潔2,劉媛媛1,宋 瑩1
(1.淮安信息職業技術學院 計算機與通信工程學院,江蘇 淮安 223003;2.淮陰工學院 電子信息工程學院,江蘇 淮安 223003)
摘要:人臉檢測是指能夠在一幅圖像中找到其中存在的人臉,并能夠確定其位置和大小等信息的過程。人臉是一個信息極豐富的模式集合,其是人類互相判別、認識、記憶的主要標志,人臉檢測在人臉圖像處理和計算機視覺領域占有極為重要的地位。針對復雜背景下的彩色圖像,對目前主流的幾種人臉檢測算法進行了介紹,在系統設計中提出了一種基于膚色和特征融合的人臉檢測算法。該算法是一種層次化、由粗到精的檢測方法,通過一步步減小檢測區域,從而實現多個人臉的檢測與定位。
關鍵詞:人臉檢測;色彩空間;膚色模型;圖像分割
0引言
根據大量資料顯示,對于人臉檢測技術的研究最初來源于人臉識別技術,而人臉識別技術的研究可以追溯到20世紀60~70年代[1]。在過去,對人臉檢測技術的研究只是人臉識別技術的一小部分,其主要目的是能夠在圖像中找出所有可能的人臉具體位置,將其和單一背景區分開,從而能夠提取出人臉圖像[2]。由于其主要研究的是人臉識別技術,所以對圖像中人臉所處的背景要求很高,一般是單一背景或者無背景,所以對人臉檢測技術的要求較低,這就導致當時的人臉檢測技術無法精確檢測出處于復雜背景下的人臉圖像。目前國內外針對復雜背景下人臉檢測的算法的研究有很多方向,比如基于膚色特征的方法[3]、基于器官分布特征的方法[4]、基于對稱性特征的方法、基于人工神經網絡的方法、基于模板匹配的方法[5]。進入20世紀90年代后期以后,許多基于商業性的人臉識別系統開始慢慢進入市場,人臉識別技術的發展也日趨成熟,從而對人臉檢測技術的要求也越來越高。人臉檢測技術已成為一個備受關注的課題,單一背景下的人臉檢測技術已經不能滿足現代人的需求,因此人臉檢測技術都是基于復雜背景的研究。
1系統設計
由于膚色是人臉的一項非常重要的特征信息,且其不依賴于具體的人臉面部器官、表情變化等影響,在彩色圖像中具有較高的穩定性[6],故本系統采用的人臉檢測算法是基于膚色模型的人臉檢測算法。本系統通過利用膚色在色彩空間中的聚類特性,設計了一個對膚色進行建模從而進行圖像分割得到人臉區域的人臉檢測算法[7]。如果想得到效果好的基于膚色的人臉檢測算法,就需要非常合理謹慎地選取合適的顏色空間,在該空間中對膚色進行建模,并對膚色進行提取,最后對由膚色建模提取出的人臉區域進行篩選并標記。
1.1色彩空間的選取
對于一個針對彩色圖像進行人臉檢測的算法來說,對色彩空間的選擇是非常重要的,這是由于復雜背景中的光照條件不穩定,要想將人臉區域與復雜背景分割開來,就需要建立非??煽康哪w色模型,也就是說,人臉檢測算法中的膚色模型的建立與其色彩空間的選擇是密切相關的[8]。一般來說,對人臉檢測算法的彩色空間的選擇標準是:
① 膚色能夠在選擇的顏色空間中有非常好的聚類特性;② 在該顏色空間建立的膚色模型能夠很好地將膚色區域與非膚色區域區分開來。
在RGB圖像中,其每個像素點都是由R、G、B三個分量以不同比例混合而成,所以無論R、G、B三個分量中的哪一個分量發生了變化,其最終結果都會導致該像素點發生不同程度的顏色改變。同一背景在晴朗天氣條件下拍攝的圖像色彩鮮艷,而在陰雨天氣條件下就會色彩平淡,這樣就會使相同背景的同一像素點處RGB分量值大不相同,也就是說基于RGB模型下的圖像受光照的影響非常大。如果采用RGB色彩空間對膚色進行建模,就會導致由于同一膚色在不同光照條件下而使得檢測的結果有所差別,如果光照條件十分惡劣,甚至會無法檢測出人臉區域,這樣只會使得基于此空間下的人臉檢測變得愈發得復雜,所以RGB色彩空間不是十分理想的選擇。為了能夠利用皮膚顏色在顏色空間中的聚類特性,其選擇的顏色空間就必須要能夠將顏色信息與亮度信息區分開來,這就需要對RGB圖像進行顏色空間上的轉換,將其轉換到能夠使膚色具有很好聚類特性的色彩空間里。目前主流的顏色空間中,HSV顏色空間與YCbCr顏色空間都是不錯的選擇。
HSV顏色空間不僅能夠將一幅圖像中的顏色信息與亮度信息區分開來,并且該顏色空間的顏色信息都能夠獨立表示。代表顏色信息的是單獨的H分量,代表亮度信息的是單獨的V分量。由此可看出,HSV色彩空間中的顏色信息和亮度信息是完全獨立分開的,所以其相對于RGB色彩空間來說,光照變化對HSV色彩空間的影響較小。由于H分量只表示一幅圖像中的顏色信息,所以若只選擇H分量作為該人臉皮膚顏色統計的參數,將可以減小光照變化對整個系統檢測效果的影響。在YCbCr色彩空間中,Cb分量和Cr分量分別代表藍色和紅色分量,有能夠將亮度和色度很好地分離的優點。除此之外,膚色在該顏色空間中能夠聚集在一個非常小的空間里,具有非常好的聚類特征??偟膩碚f,YCbCr色彩空間不僅可以很好地表達出膚色特征,還可以消除由于不同光照條件所帶來的亮度影響,其在很大程度上減少了在色彩空間中計算的復雜度。
綜上所述,HSV色彩空間與YCbCr色彩空間都是基于膚色的人臉檢測系統非常合適的色彩空間,都是非常不錯的選擇。但為了整個系統更加嚴謹,最后的人臉檢測效果能夠更好,本系統設計決定采用兩種色彩空間混合的方式對人臉膚色特征進行提取并分割出人臉膚色區域。
1.2膚色模型的建立
地球的人類種族有黑、白、黃色三類,人臉的膚色不同,每個種族的人臉皮膚顏色分別在一個狹窄的頻帶內,這就使得建立模型時需要區別對待。中國人屬于黃色人種,所以本文主要研究的是黃色人種的人臉檢測。由于黃種人皮膚顏色分布范圍只集中在某一小區域內,導致其在HSV顏色空間的H分量的取值上也集中在很小的一段范圍內,在YCbCr色彩空間中的Cb和Cr兩個分量中也集中在一定的范圍內。
建立膚色模型其實就是在顏色空間中建立了能夠精準描述膚色分布規律的數學模型,本設計采用了基于HSV色彩模型和YCbCr色彩模型的人臉皮膚彩色模型,通過對人臉膚色建模,從而將符合人臉的膚色區域標記下來,通過使用該膚色模型對輸入計算機的圖像進行人臉檢測[9]。建立該模型,首先要將在RGB色彩空間下的圖像轉換為HSV色彩空間和YCbCr色彩空間下的圖像,然后對人臉膚色進行色相統計,得到黃皮膚在顏色空間中分布的區域范圍,從而通過對屬于該范圍內的膚色區域與非膚色區域分別標記白色和黑色來區分,得到二值圖像。
1.3膚色的提取
對膚色進行提取之前,首先要將原處于RGB色彩空間下的圖像轉換到HSV色彩空間和YCbCr色彩空間下,然后對H分量以及CbCr分量進行提取,最后通過添加限制條件來得到的二值圖像只有黑與白兩種顏色。人臉膚色在H分量以及CbCr分量內都有一定的取值范圍,即可通過給定膚色模型的閾值進行判斷,即對圖像中的每一個像素點掃描,判斷它是否在H分量和CbCr分量的取值范圍之內,最終提取面部皮膚,得到屬于臉部區域的像素點,并區分人臉和非人臉區域。
在對膚色進行提取的過程中,特別需要注意的是人臉膚色在H分量以及CbCr分量上取值范圍的上下界限值。該值對人臉檢測最終的檢測結果影響較大,所以在處理該值時需要特別嚴謹,確保能夠保證整個系統良好的性能,具有較高的檢測率。大量實踐表明,發現在YCbCr色彩空間的統計分布的黃種人的皮膚滿足145≤Cb≤180,145≤Cr≤165,在HSV色彩空間的統計分布滿足0.01≤H≤0.15,本系統設計也將采用經過大量科學實踐的上下界限值來對膚色進行提取,最終獲得人臉區域被成功劃分出來的二值圖像。
1.4對人臉區域進行篩選并標記
提取皮膚顏色最后得到的二值圖像只提供了與膚色相近的區域,例如頸部、手臂的膚色區域以及其他類似物體等等,這就導致最后得到的區域包含了很多非人臉區域。這就需要對這些區域做進一步的處理以便去除這些干擾因素造成的假臉。
對圖像進行形態學處理是去除這些干擾的第一步,其處理手段主要有對圖像進行開運算、閉運算、腐蝕、膨脹以及填洞等操作。其中腐蝕和膨脹互為逆運算,腐蝕可以消除無意義的小物體,減少區域,而膨脹則是用來填補對象中的縫隙,能夠擴大區域。先腐蝕后膨脹的運算過程稱為開運算,開運算的主要作用是將十分狹小的物體消除、平滑較大區域邊界使其輪廓變得更加光滑。與其相反,先膨脹后腐蝕的運算過程稱為閉運算,其主要作用是能夠填充圖像中的細小空洞、連接相鄰近的物體以及平滑區域邊界。利用這些方法可以濾除類膚色物體以及由噪聲等原因引入的非人臉區域,減少候選區域的判斷,從而可以提高系統的檢測效率[10]。
經過形態學方法對圖像進行處理之后,圖像中大部分細小噪聲已被清除,但是很有可能還有一些無法利用形態學方法進行清除的較小或較大的非人臉區域仍留存在圖像中,這就需要對圖像進行進一步的處理和篩選。人臉的長寬比是在一定范圍之內的,可以利用這個特性進一步排除非人臉區域。首先對已經用形態學方法處理后的二值圖像進行順序掃描,標記出圖像中各種形狀的連通區域。然后計算每個連通區域的長軸和短軸,得出每個區域的外接矩形,計算出每個外接矩形的長寬之比,將不滿足人臉長寬比的區域進行舍棄,保留滿足條件的區域,并用矩形框在圖像中將其標出,標出的區域就是整個系統最終得到的人臉區域。
2系統實現
本系統的最終目的是能夠在復雜背景中檢測出人臉,有著較高的檢測率,保證該系統的高效性和準確性。實現人臉檢測系統的核心在于檢測算法的設計與實現,本系統主要使用的算法是基于面部膚色的檢測算法,主要步驟有獲取檢測圖像、膚色建模、圖像的形態學運算、獲得各個人臉區域并進行篩選和標記人臉,下面對其中重要的幾個步驟進行說明。
2.1膚色建模
獲得待檢測圖像后,將其從RGB色彩空間分別轉換到HSV色彩空間以及YCbCr色彩空間,再將H分量和CbCr分量提取出來。因為每個人的膚色有一些細微的差別,所以其在H分量和CbCr分量中有著一定的取值范圍,所以可以通過對圖片進行掃描并對每個像素點是否在膚色所在的H分量和CbCr分量取值范圍之內進行判斷,符合該取值范圍內的像素點即為皮膚區域,最后通過給皮膚區域以及非皮膚區域分別賦予不同的值,得到二值圖像,從而完成膚色建模這一過程,原圖和二值圖像如圖1所示。

圖1 模塊功能實現效果圖
H分量可以通過將RGB色彩空間的圖像I由RGB2HSV(I)函數將其轉換到HSV色彩空間后直接提取。CbCr分量則需要利用以下2個公式得到:
(1)
(2)
得到H分量和CbCr分量后對圖像上的每個像素點進行色相統計,計算出黃皮膚所在的顏色區域,其所在H分量和CbCr分量的范圍上文已給出,只需將屬于該范圍的皮膚區域賦值1,標記為白色,將不屬于該范圍的非皮膚區域賦值0,標記為黑色,就可以得到上圖所示的二值圖像。
2.2圖像的形態學運算
從上面給出的二值圖像可以看出,除了3張人臉皮膚區域被正確標出之外,還有很多細小非人臉區域也被標出,這里就需要對該二值圖像做進一步的形態學處理,本系統主要采用的形態學方法是對圖像進行開運算,去除較小的連通區域。由于人臉是3D立體的,其輪廓在二維圖像中有時會比正面的臉部皮膚暗一些,為了不使最后標記人臉時丟掉人臉最外圍的輪廓,本系統在對皮膚區域進行開運算之后,還使用了imdilate函數對圖像進行了擴張,即膨脹作用,使人臉周圍的區域連通,對圖像進行開運算以及膨脹后的效果圖如圖2所示。

圖2 形態學方法處理效果圖
從上述效果圖可以看出,細小噪聲已完全被濾除,形態學方法可以很好地去掉假區域,保留人臉區域,該方法對整個人臉檢測系統的完成起到了非常重要的作用。此圖像中類膚色物較少,此時已可以對其進行人臉標記,其檢測結果圖如圖3所示。
但如果該圖像中存在類膚色物體,如肩膀、手等,其面積稍大,無法用開運算濾除,就會給最后的檢測效果帶來極大的誤差,這些類膚色物體會被誤當成人臉而被檢測出,其誤檢測圖如圖4所示。
該圖像除了臉被正常檢測出來之外,手臂也被誤當做人臉檢測出來,所以可以看出一個好的人臉檢測系統只單單利用膚色特征和形態學方法是不夠的,其檢測準確性并不高,所以還需要對人臉區域進行進一步地篩選,以便能夠更加準確地得到圖片中的人臉。

圖3 人臉檢測效果圖

圖4 人臉檢測效果圖
2.3篩選人臉區域
人臉除了膚色特征這一個非常穩定的特征之外,其臉部長寬比和面積大小也相對較穩定,本系統通過對已得到的膚色區域進行長寬比以及面積大小的比對進行對膚色區域的進一步篩選,最終得到一個良好的檢測效果,原來被誤當做人臉檢測出來的手臂已經成功被濾除,只有人臉被正確地檢測出來,可見人臉長寬比及面積大小特征對人臉檢測系統是非常重要的人臉特征。根據大量實踐,人臉的長寬比大概在0.4~1.8之間,本系統也是采用了這一數值,最后的檢測結果也證明了該數據具有一定的科學依據。
本系統首先是使用了bwlabel函數得到一個與該圖片大小相同的矩陣L,在該矩陣L中,包含了該圖片中得到的每個連通區域的類別標簽,它們的值為1、2、3、n(連通區域的個數),并且選用的是八連通尋找區域。然后使用了regionprops來計算矩陣L中每一個代表膚色區域的最小矩形的坐標,其返還值是一個長度為max(L(:))的結構數組,再用struct2cell函數把結構體數組轉換為元胞數組,最后用cell2mat函數將由多個矩陣構成的元胞數組轉換成一個矩陣,該矩陣里包含了代表每一個膚色區域的連通區域,只需要判斷各個連通區域的長寬比及面積是否符合人臉長寬比及面積特征,即可篩選出人臉區域,得到最終的檢測結果。
3結束語
本文對復雜背景下的人臉檢測算法進行了充分的研究,并以人臉檢測算法為核心技術,設計了人臉檢測系統,針對膚色的聚類特性,采用了基于膚色的人臉檢測算法,實現了對二維圖像的人臉檢測。系統基本實現了人臉檢測系統基本應具備的功能,到達了預想的效果,具有很好的魯棒性,檢測效果良好。除此之外,本系統采用了HSV色彩空間和YCbCr色彩空間來進行膚色建模,解決了因光照變化帶來的影響,使人臉檢測不再受光照影響,為整個系統減少了不小的挑戰與難度。僅僅基于膚色會使最后的系統檢測人臉率不是特別理想,所以本文中還提到了利用人臉長寬比及面部大小特征來進一步的篩選出人臉區域,大大提高了最后人臉檢測系統的檢測效率。但本系統還是不能達到百分百的檢測率,人臉檢測技術是非常復雜的一門技術,其未來的發展趨勢應該仍舊是綜合多種分類方法以及統計學習方法相結合的,人臉檢測技術永遠都需要研究者長期而又耐心地進行大量實驗去探究。
參考文獻
[1]劉寶寶.復雜背景下的人臉檢測研究[D].合肥:安徽工業大學,2011:8-9.
[2]LV Shao-dong,SONG Yong-duan,XU Mei,et al.Face Detection under Complex Background and Illumination[J].Journal of Electronic Science and Technology,2015(1):78-82.
[3]王利娟.基于膚色信息的快速人臉檢測算法研究[D].成都:四川大學,2004:11-12.
[4]郭聳.人臉檢測若干關鍵技術研究[D].哈爾濱:哈爾濱工程大學,2011:16-17.
[5]馬艷.基于顏色與模板匹配的人臉檢測方法[D].大連:大連理工大學,2006:23-24.
[6]吳要領.基于YCrCb色彩空間的人臉檢測算法的設計與實現[D].成都:電子科技大學,2013:20-21.
[7]李偉.基于膚色分割的人臉檢測算法研究[D].成都:電子科技大學,2006:27-28.
[8]Pouya G,Zahra N,Hassan A.Labeling Algorithm for Face Detection Using Skin and Hair Characteristics[J].Journal of Electronic Science and Technology,2012(2):135-141.
[9]鄧加瓊.復雜背景下的彩色人臉檢測算法與實現[D].成都:電子科技大學,2005:25-26.
[10]毛順兵.復雜背景彩色圖像的人臉檢測算法研究[D].重慶:西南師范大學,2002:29-30.
Research and Implementation of Face Detection Algorithm under Complex Background
XU Peng-fei1,JIA Yin-jie2,ZHU Meng-jie2,LIU Yuan-yuan1,SONG Ying1
(1.College of Computer and Communication Engineering,Huaian College of Information Technology,Huai’an Jiangsu 223003,China;2.College of Electronic and Information Engineering,Huaiyin Institution of Technology,Huai’an Jiangsu 223003,China)
Abstract:The face detection is a process that can find the faces in a picture,and determine the information such as location and size.Human face is a collection of information with extremely rich patterns,and it is the prime symbol for the human distinguishing from each other,understanding and memoring.The face detection in the field of human face image processing and computer vision occupies very important position.In view of color images based on complex background,this paper introduces several mainstream face detection algorithms.In the system design,a face detection algorithm based on skin color and feature fusion is proposed.This algorithm is a hierarchical and coarse to precise detection method,and it can reduce the detection area step by step,so as to realize the detection and localization of multiple faces.
Key words:face detection; color space; skin color model; image segmentation
中圖分類號:TP391
文獻標志碼:A
文章編號:1003-3114(2016)03-105-5
作者簡介:許鵬飛(1980—),男,碩士,IEEE會員,華為Academy Instructor,工程師,講師,主要研究方向:多媒體信號處理。賈銀潔(1981—),女,碩士,講師,主要研究方向:多媒體信號處理。
收稿日期:2015-12-16
doi:10.3969/j.issn.1003-3114.2016.03.28
引用格式:許鵬飛,賈銀潔,朱夢潔,等.復雜背景下的人臉檢測算法研究與實現[J].無線電通信技術,2016,42(3):105-109.