專利名稱:復雜背景下彩色圖像人臉檢測的方法
技術領域:
本發明涉及的是一種圖像檢測技術領域的方法,特別是一種復雜背景下彩色圖像人臉檢測的方法。
背景技術:
人臉檢測不僅是自動人臉識別系統的第一步,在監控系統、人機接口、圖像檢索中也有重要應用。由于人臉是非剛性物體,同時有姿態、旋轉、尺度、光照、遮擋等問題的存在,致使人臉檢測仍是一個非常困難的問題。近些年提出的人臉檢測算法大致可以分為四類①基于知識的方法,這類算法只對簡單背景下的正面人臉檢測有較好的效果;②模板匹配方法,該類算法不能有效地處理人臉尺度、姿態和形狀等方面的變化;③基于外觀形狀的方法;④基于特征的方法(Feature-BasedMethods)。
基于特征的方法主要使用人臉特征,膚色或紋理等信息,在特定的環境下非常有效且檢測速度較高,對人臉姿態、表情、旋轉都不敏感,但是對光照和背景等有較高的要求。經對現有技術文獻的檢索發現Hsu等在“彩色人臉檢測”(HsuRein-Lien,Mohamed,Jain Anil K..Face detection in color images [J]. IEEETrans on Pattern Analysis and Machine Intelligence,2002,24(5)696-706.)一文中用基于特征的方法對彩色圖像人臉進行了檢測,在背景不是很復雜,即在背景中有較少跟皮膚顏色相近或跟人臉幾何特征相近的物體情況下得到了比較好的檢測結果。但是對于有多個側面人臉、有接近膚色的背景等問題存在時,檢測率不高,且時間復雜度高。
發明內容
本發明的目的在于克服現有技術中的不足,提供一種復雜背景下彩色圖像人臉檢測的方法。使其針對復雜背景的、通過減輕光照等影響同時使用膚色信息和人臉特征來進行多側面人臉檢測的新方法先檢測出人臉輪廓,然后只在人臉輪廓內驗證眼睛和嘴部特征是否存在,從而節省了運算時間提高了檢測速度;采用Canny算子來迅速有效地進行區域分割,并提出快速有效的膚色區域合并方法;對Hsu等所提出的光照補償算法做了適當地改進,效果良好。本發明對光照、尺度、姿態、旋轉和表情等方面的變化具有較強的適應性和較高的檢測率。
本發明是通過以下技術方案實現的,本發明先使用整體膚色、形狀特征檢測出人臉候選區域,然后使用局部眼睛,嘴特征進行人臉特征的驗證,從而檢測出人臉。具體過程為首先對圖像進行光照補償,部分消除光照對檢測的影響;然后對經過膚色模型處理后的二值圖像進行分割與合并,結合先驗知識提取出人臉候選區域;最后通過驗證人臉輪廓,眼睛和嘴等人臉特征來判斷人臉候選區域是否包含人臉。從而使該人臉檢測方法對光照、尺度、姿態、旋轉和表情等方面的變化具有較強的適應性和較高的檢測率。
本發明的方法具體按如下步驟進行①、光照補償在復雜環境中很難將膚色與非膚色區域分割開,光照補償可以解決這個問題。本發明先對輸入圖像進行Gamma矯正,然后再定義參考白和參考黑來對圖像進行灰度拉伸,從而盡量壓縮膚色模型的取值范圍,使膚色區域檢測得更精確。
本發明定義的Gamma矯正為new_pixel_value=old_pixel_value1/CG---(1)]]>式中,CG為Gamma常數。
本發明采用的灰度拉伸思想是把圖像中黑色像素點和接近于黑色的像素點都標定為黑色,即RGB值為(0,0,0);把圖像中白色像素點和接近于白色的像素點都標定為白色,即RGB值為(255,255,255);然后將非黑色和非白色的像素點的R,G,B三個分量分別拉伸到(0,255)整個區間。在進行灰度拉伸時,要同時對R,G,B三個分量進行操作。其中,像素點接近于白色的定義為其在YCbCr色彩空間中亮度分量(Y)的值要在[225,235)內,即屬于5%最大的數值;一個像素點接近于黑色的定義類似。
在沒進行光照補償而直接進行膚色辨別時,將有大量非膚色像素點被誤檢為膚色點,而經過光照補償后的圖像進行膚色辨別時能更準確地表示膚色區域。與Hsu等Rein-Lien Hsu,Mohamed and Anil K.Jain.Face Detection in Color Images.IEEE Trans.on Pattern Analys is and Machine Intelligence,2002,24(5)696-706.光照補償算法不同的是,此算法相當于同時定義了參考白和參考黑,因而光照補償后的圖像更有助于膚色區域的判別。
②、根據膚色模型確定膚色區域本說明使用HsuRein-Lien Hsu,Mohamed and Anil K.Jain.Face Detectionin Color Images.IEEE Trans.on Pattern Analysis and Machine Intelligence,2002,24(5)696-706.等提出的膚色模型進行膚色區域的判定,即在YCbCr色彩空間建立了一個橢圓的膚色模型,如果一個像素的Cb,Cr值經過式(3)運算后落到如式(2)所表示的橢圓內,就判定該像素點為膚色點。
(x-ecx)2a2+(y-ecy)2b2=1---(2)]]>xy=cosθsinθ-sinθcosθCb′-cxCr′-cy---(3)]]>③、膚色區域的分割對輸入圖像的亮度分量(Y分量)使用Canny算法進行邊緣檢測,并將結果疊加到膚色二值圖像上。對疊加后圖像進行形態學開運算,去除圖像中很多孤立的像素點或很小的膚色區域,從而得到膚色區域分割圖。
④、膚色區域的合并由于面部經常有遮擋物和經過區域分割后,面部膚色區域經常被分裂成若干個子膚色區域,因此有必要進行區域合并。
先計算任意2個區域之間的距離Dij=Dc,ij-Ri-Rj(4)
Rk=Rkc+Rke2]]>(k=i,j)Rkc=(Sk/π)1/2]]>Rke=12(σkx2+σky2+(σkx2-σky2)2+4σkxy2)]]>式中Dc,ij為第i個和第j個區域重心之間的歐氏距離;Rk為第k個區域的有效半徑;Sk為第k個膚色區域的面積;σkx2,σkx2,σkxy為第k個膚色區域的二階中心矩。Rke為膚色區域協方差矩陣較大的特征根。
若該距離(Dij)小于一個閾值,則將這2個區域合并。
⑤、產生待檢測人臉區域將膚色區域進行分割與合并后,將產生大量的待檢測人臉區域。可以通過一些簡單的形狀特征和先驗知識排除大部分這些非人臉區域,從而形成人臉候選區域。
本發明使用的形狀特征有①包含膚色區域的矩形框面積;②包含膚色區域的矩形框長寬比;③膚色區域面積與矩形框面積之比;④矩形框中心與膚色區域重心之間的距離;⑤膚色區域中具有較高方差的像素個數與膚色區域面積之比(這是由于面部特征的存在,比如眼睛,眉毛等,人臉區域在YCbCr空間Y分量上的方差較其它區域的要大一些)。
⑥、檢測人臉輪廓人臉檢測過程中人臉的輪廓、眼睛和嘴是最明顯的三個特征,因此可以使用這些信息來排除大部分候選區域,從而定位出真正的人臉。
本發明先對某一膚色區域進行形態學閉運算,然后使用Suzuki等Suzuki S.,Abe K..Topological structural analysis of digital binary images by borderfollowing.Computer Vision,Graphics,and Image Processing(CVGIP),1985,30(1)32-46.的邊緣輪廓算法提取區域最外層邊緣,進行凸凹性檢測,并條件填充凹進去的區域,最后使用橢圓結構元素來檢測人臉輪廓。
條件填充的思想為1)被最外圍輪廓包圍的空洞應該被填充;2)凹進去區域的深度與區域的寬度之比要大于一定閾值。
填充后的圖像其膚色區域在內部是連續的,結合人臉是橢圓的先驗信息,本發明使用橢圓的結構元素來探測連通區域的形狀。結構元素半徑定義為Rmin=18gmin(w,h)Rmax=12g(Rc+Re)---(5)]]>Rc=(S/π)Re=12(σx2+σy2-(σx2-σy2)2+4σxy2)]]>式中w,h對應于包含膚色區域矩形框的寬與長;S為膚色區域面積;Rc為膚色區域協方差矩陣小的特征根。可使用從大到小的結構元素來檢測人臉輪廓,算法如下(1)使用半徑為Ri的結構元素對填充后的二值圖像Ii進行腐蝕操作,得圖像Ti;(2)如果圖像Ti為空,則表示完成并退出;(3)否則,對圖像Ti進行膨脹操作得圖像Ii′,保存結果Ii′;(4)降低結構元素的半徑為Ri+1,并作圖像Ii與Ii′的差為圖像Ii+1;(5)如果Ri+1>Rmin,則跳到(1)繼續運算,否則運算結束并退出。
經該算法處理后可以得到若干個大小不一且不相互包含的橢圓區域,即人臉的輪廓。
由于本發明先找出人臉輪廓區域,并只在可能的輪廓區域中驗證人臉特征的存在性,因而速度更快更有效。
⑦、人臉驗證在上述步驟中檢測到的人臉輪廓內如果可以找到眼睛和嘴,就可以認定該人臉輪廓內存在一個人臉。本發明先使用Gargesha等Gargesha M.,Panchanathan S..A hybrid technique for facial feature point detection.Fifth IEEE ProcSouthwest Symposium on Image Analysis and Interpretation,April2002134-138.提出的眼圖和嘴圖算法來檢測出眼睛和嘴部特征,并對所有特征賦權值,挑出權值最大的一組眼睛和嘴特征來構成該人臉輪廓內的面部特征。若有一組眼睛和嘴存在于該橢圓區中,并且幾何結構合理,就認為人臉存在于該橢圓區域,并可根據橢圓定位出人臉的位置和大小。
⑧、輸出檢測結果重復第6至第7步,直到第5步產生的所有待檢測人臉區域都驗證完畢,輸出最終人臉檢測結果。
本發明具有明顯的有益的效果,可以檢測出同一幅圖片中不同尺度下的多個人臉,對光照、尺度、姿態、旋轉和表情等方面的變化不敏感,并且由于使用人臉輪廓識別的方法,更能精確地定位出人臉位置,也能檢測出偏轉角度較大的人臉。對1015副變光照和復雜背景的情況下拍攝的包含偏轉的彩色人臉圖像,其檢測率達到89.7%。
圖1為光照補償與二值化示意2為亮度分割示意3為區域合并的結果示意4人臉候選區域示意5檢測人臉輪廓示意6人臉驗證流程示意7人臉檢測結果示意8人臉檢測結果圖8計算Ws示意圖檢測結果示意圖
具體實施例方式
本實施例采用的圖像數據庫中的1015個樣本,圖片分辨率為800×640,這些圖片都是在變光照和復雜背景的情況下拍攝的。并且,數據庫中包含大量人臉旋轉角度較大的圖片,也包含尺度、姿態和表情等方面的變化。整個檢測率達到89.7%。整個實現過程如下1.光照補償先對輸入圖像進行Gamma矯正,再灰度拉伸本實施例定義的Gamma矯正為new_pixel_value=old_pixel_value1/CG---(1)]]>本實施例中,Gamma常數CG取為2.22。
本例子采用的灰度拉伸思想是把圖像中黑色或接近于黑色的像素點都標定為黑色,即RGB值為(0,0,0);類似地標定出白色像素點;然后將非黑色和非白色的像素點的R,G,B三個分量分別拉伸到(0,255)整個區間。像素點接近于白色的定義為其在YCbCr色彩空間中亮度分量(Y)的值要在[225,235)內,即屬于5%最大的數值;一個像素點接近于黑色的定義類似。
光照補償后的圖像如圖1(b)。實驗表明,經過光照補償后的圖像進行膚色辨別比直接進行膚色辨別更有效,如圖1(c)(d)所示。
2.根據膚色模型確定膚色區域在YCbCr空間中,如果一個像素的Cb,Cr分量經過式(3)運算后落到如式(2)所表示的橢圓膚色模型內,就判定該像素點為膚色點。
(x-ecx)2a2+(y-ecy)2b2=1---(2)]]>xy=cosθsinθ-sinθcosθCb′-cxCr′-cy---(3)]]>3.膚色區域的分割圖1(c)的膚色區域只是對YCbCr空間的Cb和Cr分量進行處理,因此造成了人臉區域和周圍部分非人臉區域連接在一起,這就需要進行膚色區域分割。
采用Canny算法檢測邊緣,并把對輸入圖像亮度分量的分割結果疊加到圖1(c)所示的膚色二值圖像上。對疊加后圖像進行形態學開運算,可以去除圖像中很多孤立的像素點或很小的膚色區域,從而得到膚色區域分割圖,如圖2。
4.膚色區域的合并先按照式(4)計算任意2個區域之間的距離,若該距離小于一個閾值,則將這2個區域合并。
Dij=Dc,ij-Ri-Rj(4)Rk=Rkc+Rke2]]>(k=i,j)Rkc=(Sk/π)1/2]]>Rke=12(σkx2+σky2+(σkx2-σky2)2+4σkxy2)]]>式中Dc,ij為第i個和第j個區域重心之間的歐氏距離;Rk為第k個區域的有效半徑;Sk為第k個膚色區域的面積;σkx2,σkx2,σkxy為第k個膚色區域的二階中心矩。Rke為膚色區域協方差矩陣較大的特征根。經過區域合并后的圖像如圖3所示,可以發現其中有很多非人臉區域,這就需要一些措施來去除這些區域。
5.產生待檢測人臉區域使用形狀特征①包含膚色區域的矩形框面積;②包含膚色區域的矩形框長寬比;③膚色區域面積與矩形框面積之比;④矩形框中心與膚色區域重心之間的距離;⑤膚色區域中具有較高方差的像素個數與膚色區域面積之比。去除誤檢區域后得到的圖像,如圖4所示。
6.檢測人臉輪廓圖5(b)所示的膚色二值圖像是在圖4的基礎上提取一個完整的膚色連通區域,其對應的亮度圖像為圖5(a)。由第3步知,圖5(b)是綜合應用圖像的色彩和亮度信息得到的,恰當處理后就可以找出人臉邊緣輪廓。
根據發明步驟,先對圖5(b)進行形態學閉運算,然后對圖5(c)使用Suzuki等的邊緣輪廓算法提取區域最外層邊緣,進行凸凹性檢測,并條件填充凹進去的區域。填充后的圖像如圖5(d)所示。其膚色區域在內部是連續的。
結合人臉是橢圓的先驗信息,使用橢圓的結構元素來探測連通區域的形狀,得到若干個大小不一且不相互包含的橢圓區域,即人臉的輪廓,如圖5(e)所示。
可以發現定位出的人臉矩形要比整個膚色區域的矩形要小很多,因而更精確。
7.人臉驗證在圖5(e)所示的人臉輪廓內如果可以找到眼睛和嘴,就認定該人臉輪廓內存在一個人臉。這里使用Gargesha等Gargesha M.,Panchanathan S..A hybridtechnique for facial feature point detection.Fifth IEEE Proc SouthwestSymposium on Image Analysis and Interpretation,April 2002134-138.提出的眼圖(eye map)和嘴圖算法來判斷是否包含眼睛和嘴部特征。并使用“塔式下采樣”降低一定維數從而找出主導特征點,然后再進行“塔式上采樣”并結合閾值處理,找出眼睛和嘴部特征點,如圖6(a)(b)所示。
結合圖5(e),可以得出特征驗證結果,如圖6(c)所示,整幅圖像的人臉檢測結果見圖7。由圖6(c)可見眼睛和嘴等人臉特征定位并不是很精確,但這并不影響人臉檢測的結果。
本例子采用對所有特征賦權值的方法,挑出權值最大的一組眼睛和嘴特征來構成該人臉輪廓內的面部特征。假設同一個人臉輪廓內有i=1,2,...,m個眼睛特征,j=1,2,...,n個嘴部特征,則(1)根據圖8(a)計算每個特征對應的權Ws=exp(-(R-2σ)2/8σ2) (6)式中R為圖8(b)中點Pe與Pc之間的歐氏距離;點Pc為矩形的中心;點Pe為特征點;σ為點Pc與點Pb之間歐氏距離的 點Pb為點Pc與點Pe之間線段延長線與矩形邊框的交點;(2)j=1;(3)根據式(7)計算每2個眼睛特征點,與第j個嘴特征點Pi1,Pi2,Pj組合時的權值,Wt=Ws,Pi1gWs,Pi2gWs,Pjg(1-|De,Pi1pj-De,Pi2Pjmax(De,Pi1pj,De,Pi2Pj))---(7)]]>式中Ws,Pi1,Ws,Pi2,Ws,Pj分別為點Pi1,Pi2,Pj的Ws權值;De,Pi1pj,De,Pi2Pj分別為點Pi1,Pi2,與點Pj之間的歐式距離;(4)如果j≤n,則轉到(3);(5)找出在所有眼睛和嘴特征點組合中權值最大的一組,保存并退出。
8.輸出檢測結果重復第6至第7步,直到第5步產生的所有待檢測人臉區域都驗證完畢,輸出最終人臉檢測結果,如圖9所示。
權利要求
1.一種復雜背景下彩色圖像人臉檢測的方法,其特征在于,先使用整體膚色、形狀特征檢測出人臉候選區域,然后使用局部眼睛,嘴特征進行人臉特征的驗證,從而檢測出人臉首先對圖像進行光照補償,部分消除光照對檢測的影響;然后對經過膚色模型處理后的二值圖像進行分割與合并,結合先驗知識提取出人臉候選區域;最后通過驗證人臉輪廓,眼睛和嘴等人臉特征來判斷人臉候選區域是否包含人臉,從而完成人臉檢測。
2.根據權利要求1所述的復雜背景下彩色圖像人臉檢測的方法,其特征是,具體包括如下步驟①、光照補償在復雜環境中很難將膚色與非膚色區域分割開,先對輸入圖像進行Gamma矯正,然后再定義參考白和參考黑來對圖像進行灰度拉伸,從而壓縮膚色模型的取值范圍,使膚色區域檢測得更精確;②、根據膚色模型確定膚色區域使用Hsu提出的膚色模型進行膚色區域的判定,即在YCbCr色彩空間建立了一個橢圓的膚色模型,如果一個像素的Cb,Cr值經過式(b)運算后落到如式(a)所表示的橢圓內,就判定該像素點為膚色點(x-ecx)2a2+(y-ecy)2b2=1---(a)]]>xy=cosθsinθ-sinθcosθCb′-cxCr′-cy---(b);]]>③、膚色區域的分割對輸入圖像的Y亮度分量使用Canny算法進行邊緣檢測,并將結果疊加到膚色二值圖像上,對疊加后圖像進行形態學開運算,去除圖像中很多孤立的像素點或很小的膚色區域,從而得到膚色區域分割圖;④、膚色區域的合并由于面部經常有遮擋物和經過區域分割后,面部膚色區域經常被分裂成若干個子膚色區域,因此有必要進行區域合并;⑤、產生待檢測人臉區域將膚色區域進行分割與合并后,將產生大量的待檢測人臉區域;⑥、檢測人臉輪廓人臉檢測過程中人臉的輪廓、眼睛和嘴的三個特征,使用這些信息來排除大部分候選區域,從而定位出真正的人臉;⑦、人臉驗證在上述步驟中檢測到的人臉輪廓內如找到眼睛和嘴,就認定該人臉輪廓內存在一個人臉,先使用Gargesha提出的眼圖和嘴圖算法來檢測出眼睛和嘴部特征,并對所有特征賦權值,挑出權值最大的一組眼睛和嘴特征來構成該人臉輪廓內的面部特征,若有一組眼睛和嘴存在于該橢圓區中,并且幾何結構合理,就認為人臉存在于該橢圓區域,并可根據橢圓定位出人臉的位置和大小;⑧、輸出檢測結果重復第6至第7步,直到第5步產生的所有待檢測人臉區域都驗證完畢,輸出最終人臉檢測結果。
3.根據權利要求2所述的復雜背景下彩色圖像人臉檢測的方法,其特征是,所述的灰度拉伸,是指把圖像中黑色像素點和接近于黑色的像素點都標定為黑色,即RGB值為(0,0,0);把圖像中白色像素點和接近于白色的像素點都標定為白色,即RGB值為(255,255,255);然后將非黑色和非白色的像素點的R,G,B三個分量分別拉伸到(0,255)整個區間,在進行灰度拉伸時,要同時對R,G,B三個分量進行操作,其中,像素點接近于白色的定義為其在YCbCr色彩空間中亮度分量(Y)的值要在[225,235)內,即屬于5%最大的數值;一個像素點接近于黑色的定義類似。
4.根據權利要求2所述的復雜背景下彩色圖像人臉檢測的方法,其特征是,所述的Gamma矯正為new_pixel_value=old_pixel_value1/CG,]]>式中,CG為Gamma常數。
5.根據權利要求2所述的復雜背景下彩色圖像人臉檢測的方法,其特征是,所述的區域合并,先計算任意2個區域之間的距離Dij=Dc,ij-Ri-RjRk=Rkc+Rke2]]>(k=i,j)Rkc=(Sk/π)1/2]]>Rke=12(σkx2+σky2+(σkx2-σky2)2+4σkxy2)]]>式中Dc,ij為第i個和第j個區域重心之間的歐氏距離;Rk為第k個區域的有效半徑;Sk為第k個膚色區域的面積;σkx2,σkx2,σkxy為第k個膚色區域的二階中心矩,Rke為膚色區域協方差矩陣較大的特征根,若該距離(Dij)小于一個閾值,則將這2個區域合并。
6.根據權利要求2所述的復雜背景下彩色圖像人臉檢測的方法,其特征是,所述的人臉候選區域,使用的形狀特征有①包含膚色區域的矩形框面積;②包含膚色區域的矩形框長寬比;③膚色區域面積與矩形框面積之比;④矩形框中心與膚色區域重心之間的距離;⑤膚色區域中具有較高方差的像素個數與膚色區域面積之比。
7.根據權利要求2所述的復雜背景下彩色圖像人臉檢測的方法,其特征是,所述的檢測人臉輪廓,先對某一膚色區域進行形態學閉運算,然后使用Suzuki的邊緣輪廓算法提取區域最外層邊緣,進行凸凹性檢測,并條件填充凹進去的區域,最后使用橢圓結構元素來檢測人臉輪廓。
8.根據權利要求2所述的復雜背景下彩色圖像人臉檢測的方法,其特征是,所述的條件填充,是指1)被最外圍輪廓包圍的空洞應該被填充;2)凹進去區域的深度與區域的寬度之比要大于閾值。填充后的圖像其膚色區域在內部是連續的,結合人臉是橢圓的信息,使用橢圓的結構元素來探測連通區域的形狀,結構元素半徑定義為Rmin=18gmin(w,h)Rmax=12g(Rc+Re)]]>Rc=(S/π)1/2Re=12(σx2+σy2-(σx2-σy2)2+4σxy2)]]>式中w,h對應于包含膚色區域矩形框的寬與長;S為膚色區域面積;Re為膚色區域協方差矩陣小的特征根。
全文摘要
本發明涉及的是一種圖像檢測技術領域的方法,特別是一種復雜背景下彩色圖像人臉檢測的方法。先使用整體膚色、形狀特征檢測出人臉候選區域,然后使用局部眼睛,嘴特征進行人臉特征的驗證,從而檢測出人臉首先對圖像進行光照補償,部分消除光照對檢測的影響;然后對經過膚色模型處理后的二值圖像進行分割與合并,結合先驗知識提取出人臉候選區域;最后通過驗證人臉輪廓,眼睛和嘴等人臉特征來判斷人臉候選區域是否包含人臉,從而完成人臉檢測。本發明能更精確地定位出人臉位置,也能檢測出偏轉角度較大的人臉。對1015副變光照和復雜背景的情況下拍攝的包含偏轉的彩色人臉圖像,其檢測率達到89.7%。
文檔編號G06K9/00GK1932847SQ200610117048
公開日2007年3月21日 申請日期2006年10月12日 優先權日2006年10月12日
發明者姚莉秀, 田鐳, 李馮 申請人:上海交通大學