本發(fā)明涉及人臉檢測技術(shù)領(lǐng)域,特別是一種基于雙層級聯(lián)的面部特征檢測方法。
背景技術(shù):
人臉面部特征是指人臉檢測中定位的面部關(guān)鍵點(diǎn),是人臉圖像分析的前提與關(guān)鍵。盡管目前有諸多人類自動面部分析技術(shù)(比如人臉識別與驗(yàn)證、人臉追蹤、面部表情分析、人臉重建和人臉檢索等技術(shù)),但由于存在面部的多姿態(tài)、光照、遮擋等因素,快速、精確地對自然狀態(tài)的面部特征檢測仍然是一大難題。
當(dāng)前面部特征檢測方法主要分為三類:基于boosting方法;基于深度卷積神經(jīng)網(wǎng)絡(luò)的方法;基于可變型模型(DPM)的方法。DPM是一種整體與局部特征結(jié)合,并對局部形狀結(jié)構(gòu)進(jìn)行限制的高精度方法,其將人的頭部特征用眼睛、鼻子、耳朵和嘴巴等局部區(qū)域的紋理特征和相對位置進(jìn)行表示,然后匹配,但由于現(xiàn)實(shí)數(shù)據(jù)基本沒有提供人頭部局部區(qū)域的位置,方法難以提取精確特征進(jìn)行訓(xùn)練,因此精度不夠理想。之后雖然對其進(jìn)行了改進(jìn),但改進(jìn)后的DPM需要對目標(biāo)的不同姿態(tài)角度建立相應(yīng)的模型,再提取這些模板的方向梯度直方圖(HOG)特征,采用半監(jiān)督方法,隱藏變量SVM學(xué)習(xí)得到分類器,影響檢測速度,尤其是在多尺度檢測過程中,提取每個檢測窗口根模版和部件模版的HoG特征并進(jìn)行匹配,方法雖提高了檢測精度,但相應(yīng)的也導(dǎo)致了檢測速度的下降。
在面部特征檢測方面,結(jié)合DPM思想,出現(xiàn)將人臉檢測、人臉特征點(diǎn)定位和人臉姿態(tài)估計(jì)整合一起人臉檢測方法,方法舍棄DPM根模板,對不同人臉姿態(tài)建立模型,通過人臉對齊限制人臉形狀,將特征點(diǎn)周圍矩形區(qū)域作為部件模板,提取HoG特征,采用全監(jiān)督方式,線性SVM學(xué)習(xí),在少量數(shù)據(jù)集取得良好效果。Chen等實(shí)驗(yàn)證明人臉對齊確實(shí)能提高人臉檢測的精度,采用人臉檢測與人臉對齊聯(lián)合訓(xùn)練的方式,將boosting方法和DPM思想結(jié)合一起訓(xùn)練得到高性能分類器,但由于訓(xùn)練需要充分自然狀態(tài)下具有面部特征點(diǎn)正樣本數(shù)據(jù),需要篩選樣本工作(Chen D,Ren S,Wei Y,et al.Joint Cascade Face Detection and Alignment[M]//Computer Vision–ECCV 2014.2014:109-122.)。總的來說,采用SVM訓(xùn)練得到的人臉檢測器檢測速度不夠理想,需要建立多模型提高檢測精度,而Boosting與DPM思想結(jié)合需要充足的有特征點(diǎn)的人臉樣本。
技術(shù)實(shí)現(xiàn)要素:
本發(fā)明的目的在于提供一種基于雙層級聯(lián)的面部特征檢測方法,無需對面部的多種姿態(tài)建立相應(yīng)的模型,從而提高檢測速率。
實(shí)現(xiàn)本發(fā)明目的的技術(shù)解決方案為:
一種基于雙層級聯(lián)的面部特征檢測方法,包括如下步驟:
第一步,設(shè)計(jì)一種稀疏特征,計(jì)算輸入圖像的稀疏特征,采用線性SVM學(xué)習(xí)特征,進(jìn)行粗略分類,檢測含有面部特征的候選區(qū)域;
第二步,在第一步檢測出的候選區(qū)域中,使用已有的人臉數(shù)據(jù)集學(xué)習(xí)人臉對齊算法,形成人臉特征點(diǎn)回歸器,進(jìn)行特征點(diǎn)定位,回歸不同人臉形狀,提供面部眼睛、鼻子和嘴巴的位置,得到每個候選區(qū)域內(nèi)相應(yīng)的面部特征點(diǎn);
第三步,采用尺度不變特征進(jìn)行局部特征提取,直接使用第二步得到的人臉特征點(diǎn)替換SIFT特征點(diǎn),提取每個特征點(diǎn)周圍區(qū)域128維描述子向量,利用線性SVM學(xué)習(xí)特征,對候選區(qū)域進(jìn)行篩選;
第四步,采用線性SVM不斷學(xué)習(xí)特征,逐層訓(xùn)練分類器的方式,首先獨(dú)立訓(xùn)練第一層級分類器,每次的結(jié)果再作為樣本反饋給SVM進(jìn)行學(xué)習(xí),然后訓(xùn)練人臉特征點(diǎn)回歸器,在此基礎(chǔ)上最后訓(xùn)練第二層級分類器,添加難例訓(xùn)練實(shí)現(xiàn)人臉定位與收斂,最終確定面部特征區(qū)域。
進(jìn)一步地,第一步所述計(jì)算輸入圖像的稀疏特征,方法如下:
(1.1)輸入一張樣本圖像,歸一化圖像大小為16×16;
(1.2)計(jì)算圖像每個像素的梯度幅值,梯度角度,角度通道位置:
其中M為梯度幅值,Ix,Iy分別為像素在x、y方向上的梯度;
θ=arctanIx/Iy∈[0,180)
其中θ為梯度角度;
bin≈θ/20
其中bin為角度通道位置;
(1.3)將0~180角度平均分成9個通道,每個通道的初始權(quán)重為0,計(jì)算每個像素角度通道位置,通道權(quán)重為幅值,剩余8個通道權(quán)重置為0,使得梯度空間每個像素投影成長度為9的單維向量;
(1.4)按照像素位置,從左到右,從上到下將256個像素的投影向量串聯(lián)成一個向量,最后進(jìn)行范式歸一化,得到樣本特征向量。
進(jìn)一步地,第四步所述的采用線性SVM不斷學(xué)習(xí)特征方法如下:
假設(shè)樣本集合
{(X,Y)|(xi,yi),i=1,...,l}
其中xi∈Rn,y∈{-1,+1},l是樣本總數(shù),設(shè)置樣本yiwTxi>0為分類正確,結(jié)果大于1,使用L2范式正則化防止過擬合,結(jié)果樣本評分分?jǐn)?shù)表達(dá)式:
si=wTxi
優(yōu)化目標(biāo)函數(shù):
ξ(w;xi,yi)=max(1-yiwTxi)2
其中,si是第i個樣本分?jǐn)?shù),C是懲罰因子,w是需要求解的權(quán)重向量,ξ是損失函數(shù),采用對偶坐標(biāo)下降法求解損失函數(shù)的最小值,每次的結(jié)果再作為樣本反饋給SVM進(jìn)行學(xué)習(xí)。
進(jìn)一步地,第四步所述添加難例訓(xùn)練實(shí)現(xiàn)人臉定位與收斂,具體方法如下:
第一層訓(xùn)練中,第k次訓(xùn)練,k>1,k∈N,將所有正樣本于k-1次的訓(xùn)練結(jié)果權(quán)重求內(nèi)積,得分小于0的正樣本不參與訓(xùn)練;負(fù)樣本從不包含面部特征的圖中隨機(jī)截取窗口,計(jì)算得分大于0即可;第二層訓(xùn)練中,第k次訓(xùn)練,k>1,k∈N,將k-1次訓(xùn)練用的正樣本與k-1訓(xùn)練的結(jié)果權(quán)重求內(nèi)積,將得分小于0的正樣本直接剔除,不再參與之后訓(xùn)練,然后余下正樣本保存給下一次訓(xùn)練使用;負(fù)樣本是得分大于0的非人臉窗口圖片。
本發(fā)明與現(xiàn)有技術(shù)相比,其顯著優(yōu)點(diǎn)為:(1)第一層級候選窗口的確定,每次的結(jié)果再作為樣本反饋給SVM進(jìn)行學(xué)習(xí),提高檢測速度;(2)使用人臉對齊方法,從而無需對面部的多種姿態(tài)建立相應(yīng)的模型;(3)結(jié)合高精度的SIFT特征提取方法,有效地降低了誤檢率。
附圖說明
圖1是本發(fā)明基于雙層級聯(lián)SVM的面部特征檢測方法的流程圖。
圖2是圖像梯度空間圖像和稀疏特征的提取示意圖,其中(a)是輸入圖,(b)是輸入圖像的多尺度梯度幅度圖,(c)是輸入圖像中一個像素提取的向量結(jié)果圖。
圖3是人臉特征點(diǎn)分布圖。
具體實(shí)施方式
本發(fā)明基于雙層級聯(lián)的面部特征檢測方法,包括如下步驟:
第一步,設(shè)計(jì)一種稀疏特征,計(jì)算輸入圖像的稀疏特征,采用線性SVM學(xué)習(xí)特征,進(jìn)行粗略分類,檢測含有面部特征的候選區(qū)域;
所述計(jì)算輸入圖像的稀疏特征,方法如下:
(1.1)輸入一張樣本圖像,歸一化圖像大小為16×16;
(1.2)計(jì)算圖像每個像素的梯度幅值,梯度角度,角度通道位置:
其中M為梯度幅值,Ix,Iy分別為像素在x、y方向上的梯度;
θ=arctanIx/Iy∈[0,180)
其中θ為梯度角度;
bin≈θ/20
其中bin為角度通道位置;
(1.3)將0~180角度平均分成9個通道,每個通道的初始權(quán)重為0,計(jì)算每個像素角度通道位置,通道權(quán)重為幅值,剩余8個通道權(quán)重置為0,使得梯度空間每個像素投影成長度為9的單維向量;
(1.4)按照像素位置,從左到右,從上到下將256個像素的投影向量串聯(lián)成一個向量,最后進(jìn)行范式歸一化,得到樣本特征向量。
第二步,在第一步檢測出的候選區(qū)域中,使用已有的人臉數(shù)據(jù)集學(xué)習(xí)人臉對齊算法,形成人臉特征點(diǎn)回歸器,進(jìn)行特征點(diǎn)定位,回歸不同人臉形狀,提供面部眼睛、鼻子和嘴巴的位置,得到每個候選區(qū)域內(nèi)相應(yīng)的面部特征點(diǎn);
第三步,采用尺度不變特征進(jìn)行局部特征提取,直接使用第二步得到的人臉特征點(diǎn)替換SIFT特征點(diǎn),提取每個特征點(diǎn)周圍區(qū)域128維描述子向量,利用線性SVM學(xué)習(xí)特征,對候選區(qū)域進(jìn)行篩選;
第四步,采用線性SVM不斷學(xué)習(xí)特征,逐層訓(xùn)練分類器的方式,首先獨(dú)立訓(xùn)練第一層級分類器,每次的結(jié)果再作為樣本反饋給SVM進(jìn)行學(xué)習(xí),然后訓(xùn)練人臉特征點(diǎn)回歸器,在此基礎(chǔ)上最后訓(xùn)練第二層級分類器,添加難例訓(xùn)練實(shí)現(xiàn)人臉定位與收斂,最終確定面部特征區(qū)域;
所述的采用線性SVM不斷學(xué)習(xí)特征方法如下:
假設(shè)樣本集合
{(X,Y)|(xi,yi),i=1,...,l}
其中xi∈Rn,y∈{-1,+1},l是樣本總數(shù),設(shè)置樣本yiwTxi>0為分類正確,結(jié)果大于1,使用L2范式正則化防止過擬合,結(jié)果樣本評分分?jǐn)?shù)表達(dá)式:
si=wTxi
優(yōu)化目標(biāo)函數(shù):
ξ(w;xi,yi)=max(1-yiwTxi)2
其中,si是第i個樣本分?jǐn)?shù),C是懲罰因子,w是需要求解的權(quán)重向量,ξ是損失函數(shù),采用對偶坐標(biāo)下降法求解損失函數(shù)的最小值,每次的結(jié)果再作為樣本反饋給SVM進(jìn)行學(xué)習(xí)。
所述添加難例訓(xùn)練實(shí)現(xiàn)人臉定位與收斂,具體方法如下:
第一層訓(xùn)練中,第k次訓(xùn)練,k>1,k∈N,將所有正樣本于k-1次的訓(xùn)練結(jié)果權(quán)重求內(nèi)積,得分小于0的正樣本不參與訓(xùn)練;負(fù)樣本從不包含面部特征的圖中隨機(jī)截取窗口,計(jì)算得分大于0即可;第二層訓(xùn)練中,第k次訓(xùn)練,k>1,k∈N,將k-1次訓(xùn)練用的正樣本與k-1訓(xùn)練的結(jié)果權(quán)重求內(nèi)積,將得分小于0的正樣本直接剔除,不再參與之后訓(xùn)練,然后余下正樣本保存給下一次訓(xùn)練使用;負(fù)樣本是得分大于0的非人臉窗口圖片。
下面結(jié)合附圖及具體實(shí)施例對本發(fā)明作進(jìn)一步詳細(xì)描述。
實(shí)施例1
結(jié)合圖1,本發(fā)明基于雙層級聯(lián)的面部特征檢測方法,步驟如下:
第一層級,對輸入圖像,提取其稀疏特征,快速的獲得人臉候選區(qū)域:
假設(shè)歸一化圖像X中某個像素x,y方向梯度為Ix,Iy。像素的梯度幅值,梯度角度,角度通道位置計(jì)算公式為:
θ=arctanIx/Iy∈[0,180)
bin≈θ/20
其中表示M梯度幅值;θ表示梯度角度,值范圍在[0,180);bin是角度通道位置。特征計(jì)算步驟如下:
(1)讀入圖像,結(jié)合圖2(a)歸一化圖像大小為16×16;
(2)計(jì)算圖像每個像素的Ix,Iy,按上述公式計(jì)算像素的梯度幅值與角度;
(3)結(jié)合圖2(b)梯度空間每個像素投影成長度為9的單維向量,0—180角度均分成9個通道,每個通道初始權(quán)重為0,按照上述公式計(jì)算每個像素通道,通道權(quán)重為幅值,剩余8個通道權(quán)重直接置為0;
(4)結(jié)合圖2(c)按照像素位置從左到右、從上到下將256個像素的投影向量串聯(lián)成一個向量。
第二層級,本層級中,方法學(xué)習(xí)人臉局部魯棒性特征剔除誤檢窗口。人臉對齊方法回歸不同人臉形狀,提供人臉眼睛、鼻子和嘴巴的位置,使方法無需對不同姿態(tài)建立模型。同時,方法可獨(dú)立使用已有的人臉對齊數(shù)據(jù)集學(xué)習(xí)人臉對齊回歸器,提高框架的靈活性。特征提取方法采用SIFT特征,圖像歸一化大小后,以特征點(diǎn)為中心計(jì)算直徑為6范圍內(nèi)的特征。
方法不再檢測尺度不變形特征點(diǎn)和提取特征點(diǎn)主方向,直接使用人臉特征點(diǎn)替換,然后提取每個特征點(diǎn)周圍區(qū)域128維描述算子向量,串聯(lián)成單維向量。結(jié)合圖3,將人臉的12特征點(diǎn)作為SIFT特征點(diǎn)。
采用線性SVM學(xué)習(xí)特征,假設(shè)樣本集合
{(X,Y)|(xi,yi),i=1,...,l}
其中xi∈Rn,y∈{-1,+1},l是樣本總數(shù),設(shè)置樣本yiwTxi>0為分類正確,并盡可能的大于1,使用L2范式防止過擬合,結(jié)果樣本評分分?jǐn)?shù)表達(dá)式為:
si=wTxi
優(yōu)化目標(biāo)函數(shù):
ξ(w;xi,yi)=max(1-yiwTxi)2
其中,si是第i個樣本分?jǐn)?shù),C是懲罰因子,w是需要求解的權(quán)重向量,ξ是損失函數(shù),采用對偶坐標(biāo)下降法求解損失函數(shù)的最小值,每次的結(jié)果再作為樣本反饋給SVM進(jìn)行學(xué)習(xí)。
利用難例訓(xùn)練有效促進(jìn)人臉精確定位,快速收斂。本專利設(shè)計(jì)了有效的難例處理方式。第一層訓(xùn)練中,第k(k>1,k∈N)次訓(xùn)練,將所有正樣本于k-1次的訓(xùn)練結(jié)果權(quán)重求內(nèi)積,得分小于0的正樣本不參與訓(xùn)練。負(fù)樣本從不包含面部特征的圖中隨機(jī)截取窗口,計(jì)算得分大于0即可;第二層訓(xùn)練中,第k(k>1,k∈N)次訓(xùn)練,將將k-1次訓(xùn)練用的正樣本與k-1訓(xùn)練的結(jié)果權(quán)重求內(nèi)積,將得分小于0的正樣本直接剔除,不再參與之后訓(xùn)練,然后余下正樣本保存給下一次訓(xùn)練使用。負(fù)樣本是得分大于0的非人臉窗口圖片。