周利琴,谷 林
(西安工程大學 計算機科學學院,陜西 西安710048)
隨著互聯網技術的不斷升級,特別是移動互聯網的高速發展,電子商務進入了高速蓬勃的發展時期.為了更好地促進服裝產品的在線銷售,研究人員一直致力于虛擬試衣技術的研究.目前國內外針對三維虛擬試衣的研究取得了一定程度的發展[1-2],但其主要集中在人體軀干部的模擬及服裝試穿技術研究上,能夠同時體現客戶真實臉部特征的研究比較少.而人臉是人物的個性表現.未來的服裝虛擬試穿系統不僅要準確模擬出人體體型特征,而且還應能逼真地模擬出人的臉型、膚色、氣質等影響服裝穿著效果的臉部特征信息.要在虛擬試衣的模特上塑造個性化的人物頭部模型,使三維虛擬試衣更具真實性,識別出遠程用戶圖像中的人臉區域,并對人臉特征進行分析提取是首先要解決的問題.
人臉檢測技術在當今社會生活中扮演著相當重要的角色,如視頻監控、人機交互、人臉識別、人臉數據庫分類管理等業務,均用到了人臉檢測這個關鍵技術.人臉的檢測和識別技術是模式識別、計算機視覺和圖像理解系統的研究熱點之一,它綜合了圖像理解、計算機視覺、數據庫和人工智能等多方面多學科的知識,應用前景廣闊,受到了越來越廣泛的重視,并得到了迅速的發展,取得了很多有價值的研究成果[3-5].人臉檢測技術主要方法有以下幾種:基于幾何特征的方法[6]、基于彈性模型的方法[7]、基于神經網絡的方法[8]和基于統計模型的方法[9]等等.其中基于幾何特征的方法又包括基于膚色的方法[10-15]、基于紋理的方法[16]等.本文研究基于膚色這一特征來對膚色進行檢測.
根據計算機的色彩原理,對于同一種顏色,計算機可能有多種不同的表達方式,因此就形成了各種不同的色彩空間,例如,RGB、HSV、LAB及YCbCr等色彩空間.
RGB色彩空間是一種最典型也最常用的色彩空間,它由紅、綠、藍三基色疊加產生不同顏色.而YCbCr色彩空間是亮度和色度分離的一種色彩空間,主要應用于數字電視系統.它可以由RGB線性轉換而得,其中Y為顏色的亮度,Cb,Cr分別表示藍色色度分量和紅色色度分量.
由于不同人的膚色在色度上的差異遠小于亮度上的差異,因此本文選擇YCbCr色彩空間來確定膚色區域,以便將亮、色分離.
由RGB色彩空間轉換為YCbCr色彩空間的關系式為

從人體正面照片中定位出人臉區域,為以后提取臉部特征點打下很好的基礎,減少了定位的范圍,提高了定位特征點的準確性.定位人臉區域的過程如圖1所示,首先對人體正面照片進行色彩空間的轉換,建立高斯膚色模型;然后對該模型進行膚色檢測,區分開照片中的膚色區域和非膚色區域;最后,通過下巴檢測區分開人臉區域和脖頸區域.

圖1 定位人臉區域的過程示意圖Fig.1 Locate the face region process diagram
人臉膚色模型是一種在彩色空間內為有效處理人臉膚色信息而建立的模型.相對于處理灰度信息,人臉膚色具有對光照姿態變化不敏感、包含豐富的人臉信息等優點,被廣泛應用于膚色特征提取、人臉檢測、人臉識別等方向.其中基于YCbCr色彩空間的高斯膚色模型是應用最為廣泛的膚色模型之一.
建立基于YCbCr色彩空間的高斯膚色模型的主要依據是,不同的人臉膚色在YCbCr色彩空間中,若不考慮亮度分量Y的影響,色度分量Cb和Cr的分布幾乎是一致的,而且分布非常集中,符合二維高斯分布.高斯膚色模型的均值m、方差C和像素在YCbCr色彩空間的值x的公式為

基于膚色的檢測方法是根據膚色在色彩空間上的特殊分布來對圖像中的膚色區域進行檢測.膚色是人體裸露在外的最為顯著的特征之一,膚色是人臉部、頸部及手部與其他區域的區別之處,同時膚色對人體的姿勢或者表情等的變化不會產生過大的區別.
在YCbCr色彩空間中,不同亮度的人臉膚色存在著特殊的聚類關系,在忽略亮度分量Y的情況下,色度分量Cb和Cr分布在一個較小的區域范圍內,分布情況幾乎一致,并且服從高斯分布,CbCr區域的高斯膚色模型概率分布如圖2所示.因此本實驗中利用這一特點,首先建立高斯膚色模型,再對該模型進行相似度計算、二值化等處理,區分開膚色區域和非膚色區域.

圖2 CbCr區域的高斯膚色模型概率分布Fig.2 The probability distribution of gaussian skin color model in the CbCr region CbCr region
經過實驗統計,膚色在CbCr空間中符合的高斯模型G(m,C),其中均值m和方差C分別為

2.2.1 相似度計算 根據已建立的高斯膚色模型,計算各個像素的概率值并得到一個膚色概率圖,根據判斷的各個像素點的顏色和膚色的相似度的大小,來對膚色進行確認.計算相似度時的公式為

其中,Cr,Cb為YCbCr色彩空間中的色度分量;x為像素在YCbCr色彩空間的值;m,C分別為高斯膚色模型的均值和方差.
將各個像素點代入上式計算出每個P(Cr,Cb)的值,然后進行濾波即歸一化處理,用P(Cr,Cb)與該圖像中P(Cr,Cb)最大值的商作為該像素的相似度,由此可見每個像素點的相似度值在[0,1]范圍內.這個值越小表示這個像素點為膚色的可能性越小,反之則越大.
2.2.2 二值化去噪 圖像閾值分割是一種比較常用的圖像分割技術,它利用要提取的區域和圖像的背景在灰度上的差異,把圖像看成兩個具有不同灰度級的區域的組合,即目標區域和背景區域,因此選擇一個比較合適的閾值,來區分圖像中的像素的目標區域和背景區域,從而產生相應的二值圖像是關鍵的一步.
由于不同人種的膚色是有一定的差異的,而且不同的照片中人的膚色也是不同的,因此設置一個固定的閾值是不現實的.在確定閾值時,需要對每張不同的照片計算出的閾值,從而區分開膚色區域和非膚色區域.
實驗表明,并不是閾值越小檢測出的膚色區域就越精確.而是當閾值在一定范圍內,隨著閾值的減小,識別出的膚色區域將不會增加,此時膚色像素已經被全部檢測出來,若再降低閾值,則會將非膚色區域誤檢測為膚色區域.則隨著閾值的減少,膚色區域面積變化最小的為最優閾值.本文采取讓閾值從0.75開始每次減少0.1,直到減少為0.05,記錄每個閾值情況下的膚色像素數量,并比較該閾值情況下的膚色數量與上個閾值情況下的膚色數量的增加量,增加量最小的時候即為最優解,不同閾值下的識別結果如圖3所示.
經過一系列操作膚色區域可以確認出來,但是,如果想僅僅通過膚色區域定位操作就能標記出人臉區域是不夠的.這是因為根據上述方法我們可以區分開膚色區域和非膚色區域,但人體裸露在外的膚色區域不僅僅只有臉部,人體頸部及其以下皮膚也有所暴露.接下來的任務就是從上述得到的區域中區分開人臉部和脖頸部區域,進一步確認出人臉區域.
在人臉之中,不同人的五官的位置存在共性.一般來說,大致都符合“三庭五眼”中的比例關系,“三庭五眼”示意圖如圖4所示.所謂“三庭”是描述人臉的長度關系,是指從前額中央的發際線開始到下巴之間的距離,共分為3等分:從發際線到眉骨、從眉骨至鼻底、從鼻底至下巴各為一“庭”;“五眼”是描述人臉的寬度關系,兩眼之間、左右兩眼、兩眼的外眼角到左右兩側發際線共為“五眼”.
一般情況下都用矩形框來表示人臉區域所在,在照片中找出像素點為白色(膚色)最多的一列,此列即為人臉區域的高度線,再向左右掃描,確定人臉的左右界限,再根據左右界限來確定上界限.已經確定了上、左和右的界限,由于目前確定的人臉區域不只包含臉部區域,還包括脖頸區域,人臉識別示意圖如圖5所示.因此還要將臉部和脖頸區域區分開,確定人臉區域的下邊界.

圖3 不同閾值下的識別結果Fig.3 The identification results under different threshold

圖4 “三庭五眼”示意圖Fig.4 The sketches of“three court five eyes”

圖5 人臉識別示意圖Fig.5 The sketches of face
根據人體的先驗知識,知道人體臉部與頸部的分界區域是下巴,所以應該識別出下巴所在的區域.本文輸入的是人體正面證件照,人臉的正面照一般都在下巴區域會有陰影形成,它的亮度明顯比其上下的正常區域要低很多.結合人臉所滿足的三庭五眼關系中,人體下巴在“第三庭”“第三眼”,根據這一先驗知識我們可以從膚色區域的下方的第一行的“第二眼”和“第四眼”之間開始逐行向上查找下巴陰影部分,取當前像素上方的像素與當前像素的亮度分量Y的差,若這兩點像素的亮度差大于某個閾值(本實驗中閾值取40),則當前像素可能為陰影部分,即該點上方的像素可能為下巴邊緣.取該點上方像素所在的行為人臉下邊界,即為下巴區域.最后,可以通過人臉寬度和高度的比值,對找出的下巴區域進行驗證,一般人臉區域的寬度與高度之比在0.8左右,在此實驗中,將其設置在0.6~1.0之間.當檢查到陰影部分時,可由這一條件進行驗證,若滿足比值在0.6到1.0之間,則是找出了下巴區域,若不滿足,則需重新檢測出下巴區域.
(1)本文利用膚色在YCbCr色彩空間中的特殊聚類關系建立高斯膚色模型有效的區分開膚色區域和非膚色區域.
(2)利用膚色特征區分開膚色區域和非膚色區域,這時的膚色區域包括臉部和脖頸區域,再對其進行下巴檢測,得到最終更加精準的人體臉部區域.
[1] 陸永良,李汝勤,胡金蓮.虛擬服裝的發展歷史和現狀[J].紡織學報,2005,26(1):132-134.LU Yongliang,LI Ruqin,HU Jinlian.History and current situation for virtual clothing development[J].Journal of Textilt Research,2005,26(1):132-134.
[2] 王洪泊,黃翔,曾廣平,等.智能三維虛擬試衣模特仿真系統設計[J].計算機應用研究,2009,26(4):1405-1408.WANG Hongbo,HUANG Xiang,ZENG Guangping,et al.Design of intelligent 3Dvirtual clothing model simulation system[J].Application Research of Computers,2009,26(4):1405-1408.
[3] 張洪明,趙德斌,高文.基于膚色模型、神經網絡和人臉結構模型的平面旋轉人臉檢測[J].計算機學報,2002,25(11):1250-1255.ZHANG Hongming,ZHAO Debin,GAO Wen.Face detection under rotation in image plane using skin color model,neural network and feature-based face model[J].Chinese Journal of Computers,2002,25(11):1250-1255.
[4] 趙麗紅,劉紀紅,徐心和.人臉檢測方法綜述[J].計算機應用研究,2004,25(9):1-4.ZHAO Lihong,LIU Jihong,XU Xinhe.A survey of human face detection[J].Application Research of Computers,2004(9):1-4.
[5] 梁路宏,艾海舟,徐光祐,等.人臉檢測研究綜述[J].計算機學報,2002,25(5):449-458.LIANG Luhong,AI Haizhou,XU Guangyou,et al.A survey of human face detection[J].Chinese Journal of Computers,2002,25(5):449-458.
[6] 黃禹馨,黃山,張洪斌.基于膚色和器官定位的實時人臉檢測[J].計算機工程與科學,2014,36(5):936-940.HUNG Yuxin,HUANG Shan,ZHANG Hongbin.Real-time face detection based on complexion and organs location[J].Computer Engineering and Science,2014,36(5):936-940.
[7] 張彩甜.人臉識別技術研究[J].電腦知識與技術,2009,20(5):5513-5514.ZHANG Caitian.Research on face recognition technology[J].Computer Knowledge and Technology,2009,20(5):5513-5514.
[8] 張婭莉,王燕,BP神經網絡人臉檢測研究[J].洛陽大學學報,2006,21(4):82-84.ZHANG Yali,WANG Yan.BP neural network of humen face examination testing[J].Journal of Luoyang University,2006,21(4):82-84.
[9] 黃珍,曹曉麗.在人臉檢測中對Adaboost算法的應用研究[J].赤峰學院學報:自然科學版,2014(5):17-19.HUANG Zhen,CAO Xiaoli.Applied research of Adaboost on face detection[J].Journal of Chifeng University:Natural Science Edition,2014(5):17-19.
[10] 李全彬,王小明,劉錦高,等.復雜光照下的人臉膚色檢測方法[J].計算機應用,2010,20(6):1594-1596.LI Quanbin,WANG Xiaoming,LIU Jingao,et al.Face skin color detection in complicated illumination conditions[J].Journal of Computer Application,2010,20(6):1594-1596.
[11] 劉潔,張汗靈.一種新的基于膚色模型的人臉檢測算法[J].計算機工程與應用,2006,42(11):70-72;134.LIU Jie,ZHANG Hanling.A novel face detection method based on skin model[J].Application Research of Computers,2006,42(11):70-72;134.
[12] 顧偉,劉文杰,朱忠浩,等.一種基于膚色模板和模板匹配的人臉檢測算法[J].微型電腦應用,2014,30(7):13-16.GU Wei,LIU Wenjie,ZHU Zhonghao,et al.A face detection method based on skin-color model and template matching[J].Microcomputer Applications,2014,30(7):13-16.
[13] YANG J,LU W,WAIBEL A.Skin-color modeling and adaptation[C]//Hongkong:Lecture Notes in Computer Science,1997:687-694.
[14] JONES M J,REHG J M.Statistical color models with application to skin detection[J].International Journal of Computer Vision,2002,46(1):81-96.
[15] SABER E TEKALP A.Front-view face detection and facial feature extraction using color,shape and symmetry based cost function[J].Pattern Recognition Letters,1998(3):669-680.
[16] 李曉華,沈蘭蓀.基于多級梯度能量描述的壓縮域人臉檢測[J].電子與信息學報,2005,27(2):1909-1915.LI Xiaohua.SHEN Lansun.Face detection in compre4ssed domain based on multi-level gradient energy presentation[J].Journal of Electronics &Information Technology,2005,27(2):1909-1915.