戴嫣然,戴國慶,袁玉波,2
(1.華東理工大學信息科學與工程學院,上海 200237;2.上海大數(shù)據(jù)與互聯(lián)網(wǎng)受眾工程技術研究中心,上海 200072)
(?通信作者電子郵箱dyr136006@163.com)
如今,隨著信息社會的發(fā)展,圖像變得越來越重要,人臉又是圖像中的一個重要的分支,人臉信息在人臉跟蹤、人臉識別、視頻監(jiān)控等領域有著重要的應用。人臉檢測是人臉識別的第一步,人臉檢測的準確性直接影響到后面任務的可行性和效率,因此抽取正確的人臉信息是十分重要的。如何快速地提升人臉識別系統(tǒng)對不同人種的檢測性能,是一個實用的人臉識別算法應該考慮的問題[1]。在復雜的圖像中檢測人類皮膚已經(jīng)被證明是一個具有挑戰(zhàn)性的問題,因為由于許多因素,如光照、種族、老化、成像條件和復雜的背景,皮膚顏色在其外觀上可以有很大的變化。
顏色是簡單、直觀且有效的特征,顏色特征常常用于人臉檢測,不同顏色空間的選擇帶來的結果也有所差異[2]。Hsu等[3]提出了在YCrCb(Luminance,Red-difference Chrominance,Blue-difference Chrominance)顏色空間的人臉檢測,通過非線性變換,將像素投射到YCrCb空間,并用橢圓區(qū)域判斷是否為膚色像素。Shaik 等[4]使用兩種顏色空間進行皮膚檢測的對比研究,認為HSV(Hue,Saturation,Value)顏色空間在簡單背景和均勻背景下的檢出率較高,而YCbCr 顏色空間在復雜背景下的檢出率較高。Pujol等[5]提出基于模糊熵膚色分割的人臉檢測,在RGB(Red,Green,Blue)、YCbCr和HSV 三個顏色空間進行人臉學習和模糊系統(tǒng)建模,最后進行人臉的檢測。Bencheriet 等[6]使用膚色分割,結合局部二值模式(Local Binary Pattern,LBP)特征和高斯混合模型(Gaussian Mixed Model,GMM)模型,對人臉進行學習,然后抽取人臉。膚色特征的使用是十分重要的,是快速、有效定位人臉大致位置的方法。不同的膚色抽取策略對分割效果也不一樣,目前沒有明確的最佳顏色空間選擇方案,本文的研究目標是提出一種新的顏色空間融合方案,為膚色抽取提出新思路。
人臉的定位一直是人臉檢測的難點,基于內容的人臉檢測一般使用人臉特征如眼睛、嘴巴等,構造人臉模板進行匹配。模板的大小可以使用人眼間距和人臉的比例、人臉長寬比等生物特征進行確定。早期,Brunelli 等[7]用模板匹配的方式,計算鼻子的長寬、嘴的位置和下巴的形狀來進行人臉識別。Jin等[8]設定了臉部模板,由人臉框和人眼組成,然后在膚色分割后的候選區(qū)域內進行人臉檢測。胡祖奎等[9]提出了一種基于分層模板的人臉檢測方法,結合膚色信息和臉部分層的特征,構造人臉結構的參數(shù),檢測校園監(jiān)控中的人臉。Luo等[10]使用分類決策樹模型,對人臉進行初步定位,然后結合人臉膚色的概率分布,得到人臉膚色區(qū)域。Wang等[11]將膚色分為深色和淺色兩種分類,并添加深色通道輔助膚色提取,然后使用模板匹配和人眼定位,將人臉框出。
不同人種的膚色信息略有差異,在膚色檢測時的策略也不同,人種的膚色信息的主要差別是亮度。Tan 等[12]提出一種融合算法,結合了2D直方圖和高斯模型,分亞洲人、非洲人和歐美人三個人種,在對數(shù)顏色空間(Log Opponent chromaticity space,LO)中進行膚色分割。Klevan 等[13]提出了不同的顏色空間融合方法,并將人臉分成非洲人、亞洲人、歐美人和其他人種四個分類,最后用閾值濾波器將非膚色像素剔除,從而得到膚色像素。合理地對膚色進行分類和檢測是重要的,將膚色根據(jù)人種進行分割可以得到更加完整的膚色前景。
目前利用深度學習進行人臉檢測的方法已經(jīng)很多,Hao等[14]使用不同比例的網(wǎng)絡計算出圖像中人臉的尺度分布,然后按照該尺度歸一化圖像,再進行人臉檢測。Hu等[15]從尺度不變性、圖像分辨率、上下文推理三方面對小臉檢測算法進行改進,得到很好的效果。Li等[16]提出對偶的人臉檢測器,對特征進行增強,并改進錨點匹配策略,模型具有極高的魯棒性和穩(wěn)定性。目前的深度學習算法大多針對人臉檢測,較少有人臉內容抽取的方法,人臉抽取相關的數(shù)據(jù)集也不足,用深度學習實現(xiàn)人臉抽取較困難。本文提出遺傳算法,對人臉內容進行計算,判斷人臉區(qū)域,對內容進行抽取,不依賴大量的數(shù)據(jù)集,也可以完成人臉抽取。
在多人場景下,根據(jù)顏色信息進行膚色分割在多人臉或復雜背景下容易失效,不同人種的檢測率也不一樣,白色人種和黃色人種的檢測率最高。因此,為了解決不同人種的膚色分割問題和人臉抽取不完整的問題,本文提出基于膚色學習的人臉抽取方法,將膚色按照四種人種進行分割,分別是白色人種、黃色人種、棕色人種和黑色人種,并結合人臉生物特征,對人臉范圍進行判斷和框定,同時,利用遺傳機制的思想,將人臉從膚色前景中抽取得更加準確和完整。
本文提出一種基于膚色學習多人臉前景抽取方法,其技術框架如圖1,關鍵思想是對不同人種的膚色進行學習,根據(jù)學習得到的參數(shù)和閾值進行膚色前景分割,并利用遺傳機制的思想,結合膚色信息,將人臉區(qū)域進行生長,得到較為完整的人臉前景。

圖1 基于膚色學習的多人臉前景抽取方法流程Fig.1 Flow chart of multi-face foreground extraction method based on skin color learning
首先,建立基于膚色學習的膚色分割模型。本文將人種分為四種:白種人、黃種人、棕種人和黑種人,從各種圖像中抽取不同膚色人種的膚色塊,對膚色塊進行顏色空間的轉換和像素分布分析,可以得到膚色像素的分布情況,從而計算膚色閾值,構造膚色模型。
其次,對輸入多人臉圖像進行光線補償。真實場景照片會受到不同光線的影響,圖像中可能會存在光線不平衡的情況而造成色彩偏差,為了抵消這種整個圖像中存在的色彩偏差,進行光線補償。根據(jù)建立好的膚色模型,對光線補償后的圖像進行膚色前景分割。
然后,確定遺傳機制的初始種子塊和生長區(qū)域。利用自適應回歸窗模型[17],檢測人臉特征點,結合膚色模型抽取到的前景信息,選出在人臉前景中的特征點,作為初始種子塊,人臉的最大范圍作為遺傳機制的生長區(qū)域。
最后,構造遺傳機制的適應性函數(shù),在生長區(qū)域范圍內進行遺傳生長,經(jīng)過選擇、交叉、變異后,可以提取出更加完整的人臉區(qū)域。
對于給定的包含多人臉的圖像I,人臉前景分割的問題定義如下:
定義1對于給定的含有N(N≥3)個人臉彩色圖像I,表示如下:

其中:p(x,y)表示(x,y)處的像素值;Ω為整個圖像區(qū)域。
多人臉前景抽取的目標定義是尋找最優(yōu)的子集F*?I,使得F*里面非人臉的像素點盡可能少,模型表示如下:

其中C(pi)是計算器,記錄F*中非人臉像素點的數(shù)目,表達式如下:

該問題的關鍵在于如何判斷pi是人臉點。事實上,多人臉前景抽取模型可以等價定義為區(qū)域分割問題,即尋找Ω的N個子集Ωi(i=1,2,…,N),滿足:

人臉前景即為:

也稱Ωb為背景。
從上面模型可以看出,每一個人臉區(qū)域Ωi應該具備兩個重要的特征:首先要是皮膚點,其次要在人臉區(qū)域內。從技術層面看,第一任務是從圖像I里抽取膚色點,定義為膚色前景。
膚色前景定義如下:
定義2人臉彩色圖像I的膚色前景S定義為其子集S?I,使得S里面包含盡可能多的膚色點,模型表示如下:

其中s(pi)是計算器,記錄S中膚色點的像素數(shù)目,表達式如下:

從上面定義可以看出,膚色前景的關鍵在于如何判斷pi是膚色點,由于膚色是人種的主要特征,不同的人種,膚色有差異,因此這個問題的關鍵在于以下兩個問題:
問題1 地球上常見人種有幾類?
問題2 每一種人種膚色均值E(pr)是多少?
根據(jù)本文第1 章的敘述,問題1 的答案是四種;但是對于問題2,由于每一種族的個體差異也是比較大的,所以由于樣本選擇不同其均值必有差異,通過對國際上現(xiàn)有人臉圖像進行分析,本文選擇了著名的SFA 數(shù)據(jù)庫作為膚色的參考數(shù)據(jù)庫。四種人種膚色樣本圖片塊如圖2所示。

圖2 四種人種膚色樣本圖片塊Fig.2 Sampled image blocks of four racial skin color
判斷種族的模型定義如下:

其中E(pr)表示第r種人種膚色的像素期望值。
膚色的像素期望值E(pr)的計算模型如下:

其中c(Nr)表示第r種人種標準樣本膚色塊的像素點數(shù)量。
標準膚色塊方差σr定義如下:

由此,第r種人種的膚色點判定區(qū)間定義為:

人臉的種子區(qū)域定義如下:
定義3人臉種子區(qū)域C定義為各個人臉種子區(qū)域Ci的并集。
人臉膚色前景S與人臉特征點所圍區(qū)域G*的交集,使得C中的點均為人臉上的點,模型表示如下:

其中N為人臉彩色圖像I的人臉個數(shù)。
人臉特征點使用基于自適應回歸窗模型的特征點定位方法,抽取初步定位的68個人臉特征點,記為:

其中,Ki為模型抽取到的單個人臉的68 個特征點,1~18 號點為人臉輪廓點,記為Ki*。

將人臉輪廓點Ki*與膚色前景S作交集,在膚色前景S中的點,就作為種子點

最后將各個種子點作凸集合,得到種子區(qū)域Ci。因此,人臉特征點所圍區(qū)域Ci可以定義為:

根據(jù)前面得到的候選人臉前景C,人臉再生的目標是在給定的有效范圍內,對不完整的人臉進行像素級的判斷,利用遺傳機制,生長出完整的人臉區(qū)域。

其中r(pi)是計算器,記錄Ωi中人臉區(qū)域的像素數(shù)目。Ei是第i張候選人臉的生長有效范圍,確定模型如下:

其中(xi,yi)是候選人臉區(qū)域的中心點,計算式如下:

a、b是橢圓區(qū)域的短半軸和長半軸,計算式如下:

人臉再生的有效范圍如圖3 所示。在式(17)中,Ωi的生成采用遺傳機制,基本像素生成原理參照文獻[18]。

圖3 人臉特征點示意圖Fig.3 Schematic diagram of face features
本文實驗從網(wǎng)絡及現(xiàn)有數(shù)據(jù)庫中,隨機選擇多人臉圖像,構建包括100 張多人臉圖像的數(shù)據(jù)集,人臉圖像分別來自網(wǎng)絡高清圖像、Pratheepan Dataset[19]和 BaoDataBase。Pratheepan Dataset 圖像是從谷歌隨機下載的用來進行人體皮膚檢測方法的研究,這些圖像是在不同的光照下,并通過不同的色彩增強方法處理得到的。BaoDataBase 由274 張不同場景下的單一人臉和多人臉圖像組成。
第一類圖像來自網(wǎng)絡高清圖片,包括不同場景的合照,選取的場景包括室內和室外和合影,共50 張,示意圖如圖4所示。

圖4 第一類圖片F(xiàn)ig.4 Images of first class
第二類圖像來自Pratheepan Dataset,包括不同家庭的合照,共25張,示意圖如圖5所示。

圖5 第二類圖片F(xiàn)ig.5 Images of second class
第三類圖像來自BaoDataBase,共25 張,示意圖如圖6所示。

圖6 第三類圖片F(xiàn)ig.6 Images of third class
本實驗的運行環(huán)境為:Windows10 64位操作系統(tǒng),硬件配置是Intel Core i5-7200U 的CPU,2.50 GHz 的主頻和8 GB 的RAM,在Python3.6.5的環(huán)境中編程實現(xiàn)。
本文采用準確率(Precision,P)、召回率(Recall,R)和Fβ三個評價指標,其計算式如下:

其中:TP表示實際為正、預測成正的個數(shù);FP表示實際為負、預測成正的個數(shù);FN實際為正、預測成負的個數(shù)。
Fβ能夠很好地評估分割結果的整體性能,計算式如下:

因為人臉前景提取中準確率的重要程度高于召回率,因此這里取β為1,即F1。
準確率越高表示算法返回的相關結果比不相關的結果越多,召回率越高表示算法返回的相關結果越多。Fβ是準確率和召回率的加權調和平均數(shù)。Fβ越高表示一個方法在不犧牲精度的情況下越能達到高的查全值。
針對人臉前景區(qū)域,選擇文獻[20]的基于高斯變差的自動前景提取(autoMatic Foreground extraction based on Difference Of Gaussian,F(xiàn)MDOG)方法、文獻[18]的基于遺傳機制和高斯變差的前景目標提取(FOreground extraction with Genetic mechanism and difference of Guassian,GFO)方法、文獻[17]的人臉關鍵點檢測方法和文獻[21]的人臉分割方法與本文方法進行收取結果對比。文獻[20]方法使用圖像分割算子,結合高斯變差提取關鍵點,構建自動前景目標提取模型。文獻[18]方法使用改進的圖像分割算子(Normalized cut,Ncut),結合遺傳算法,自動抽取前景。文獻[21]方法使用維諾圖和2D(Dimensional)直方圖算法進行人臉分割。三類圖片的實驗結果如圖7~9所示。

圖7 不同方法對第一類圖片的人臉分割結果Fig.7 Face segmentation results of first-class images by different methods

圖8 不同方法對第二類圖片的人臉分割結果Fig.8 Face segmentation results of second-class images by different methods

圖9 不同方法對第三類圖片的人臉分割結果Fig.9 Face segmentation results of third-class images by different methods
文獻[20]方法可以提取大部分目標前景,但是前景存在目標缺損或者冗余等問題。文獻[18]方法是對文獻[20]方法的改進,它可以很好地解決文獻[20]方法存在的問題,可以提取到更加精確的目標前景,但是對于人臉前景的提取仍不完整。文獻[17]方法主要提取特征區(qū)域,提取到的部分肯定為人臉區(qū)域,但是會丟失人臉邊緣和輪廓信息,缺乏完整性,也無法提取整個臉部區(qū)域。文獻[21]方法對于單人臉的簡單場景效果較好,但是對于室外的場景,會引入非人臉的像素點。本文所提的方法可以有效剔除非人臉的膚色區(qū)域,并且將整個人臉區(qū)域,包括額頭等區(qū)域都提取完整,是更加有效的人臉前景抽取方法。
五種方法的準確率、召回率、F1值對比如圖10~圖12所示。
由圖10 可以看出,本文所提方法的準確率明顯高于文獻[20]方法和文獻[21]方法,略低于文獻[17]方法。文獻[20]方法會存在很多非人臉的區(qū)域如脖子、手臂等,結果過于冗余,造成誤檢率的升高,因此平均準確率為85.6%。文獻[18]方法可以更準確提取到前景,減少冗余,因此為人臉的概率很大,因此誤檢率較少,平均準確率也提升到95.7%。文獻[17]方法側重于人臉特征點的提取,抽取區(qū)域基本都是人臉區(qū)域,因此誤檢率較少,但是仍有很多人臉區(qū)域無法捕捉到。文獻[21]方法基于維諾圖和直方圖的分割,會引入與膚色像素相近的像素。本文方法可以檢測完整的人臉區(qū)域,抽取到完成的人臉前景,平均準確率提升至98.4%;但是當頭發(fā)與背景的顏色和人臉很接近時,會造成誤檢率的上升。

圖10 不同方法的準確率對比Fig.10 Precision comparison of different methods
由圖11 可以看出,本文所提方法的召回率穩(wěn)定優(yōu)于其他四種方法。文獻[20]方法的結果涵蓋與皮膚顏色相近的像素,因此漏檢率較低,平均召回率為81%。文獻[18]方法的結果作為人臉種子塊,要確保種子點都在膚色人臉橢圓范圍內,因此比人臉小很多,造成了漏檢率的升高,平均召回率也相較文獻[20]方法要低很多,為57.8%。文獻[17]方法抽取人臉主要特征區(qū)域,會漏檢非特征區(qū)域,導致人臉前景抽取不完整。文獻[21]方法使用距離變化選擇感興趣的區(qū)域,因此人臉區(qū)域能有效檢出,平均召回率為95.5%。本文所提方法能有效抽取人臉,遺傳機制可以補全人臉區(qū)域,減少漏檢的像素數(shù),但如果人臉在極端光線下,抽取結果較差,導致漏檢率升高,平均召回率為89.5%,低于文獻[21]方法。

圖11 不同方法的召回率對比Fig.11 Recall comparison of different methods
由圖12 可以看出,作為準確率和召回率的調和,F(xiàn)1值可以通過使用準確率和召回率來提供對測試表現(xiàn)更現(xiàn)實的度量。可以看出,本文所提方法的F1值均大于其他四種方法,達到87.3%,表明本文方法的總體結果優(yōu)于其他四種方法,具有更強的可靠性和魯棒性。文獻[17]方法能有效抽取人臉特征,在抽取人臉區(qū)域時也具有較好的效果,雖然漏檢率高,但是抽取的區(qū)域均為人臉區(qū)域,降低了誤檢率,因此F1值為78.2%。文獻[20]方法和文獻[21]方法的誤檢率高,文獻[18]方法的漏檢率高,因此這三個方法F1值的均值在42.2%~70.9%。

圖12 不同方法的F1值對比Fig.12 F1 value comparison of different methods
對100張人臉圖像的修復耗時箱型圖如圖13所示。本文方法在人臉抽取耗時上略多于其他方法。對于所有人臉圖像進行實驗,文獻[20]方法的平均耗時為27.5 s,文獻[18]方法的平均耗時為34.6 s,文獻[17]方法的平均耗時為4.4 s,文獻[21]方法的平均耗時為11.1 s,本文方法的平均耗時為48.4 s。算法耗時與圖片像素有關,文獻[18]方法與本文方法使用遺傳算法,在精確抽取的同時會增加時間消耗。文獻[17]方法使用學習好的模型,人臉抽取的速度較快。

圖13 不同方法的耗時箱型圖對比Fig.13 Comparison of time-consuming box plots of different methods
在多人臉場景下,現(xiàn)有基于內容的人臉抽取并不是很完善,無法抽取完整的人臉區(qū)域,因此本文提出了基于膚色學習的人臉抽取技術。首先,按照四個人種的膚色進行膚色學習,四個人種分別為白色人種、黃色人種、棕色人種和黑色人種,根據(jù)學習到的膚色模型進行膚色分割,可以分割到更加完整的膚色區(qū)域;然后,利用遺傳機制的思想,結合人臉特征點的先驗信息,對人臉區(qū)域進行遺傳生長,從而將人臉區(qū)域抽取得更加完整。本文方法雖然具有較高的復雜度,但其準確率和召回率相較其他方法有明顯提升。
未來的工作中,可研究改進遺傳種子和遺傳區(qū)域的選取,基于深度學習進行人臉范圍確定,并選取種子點,提高遺傳算法的精確度。