本發(fā)明涉及計算機視覺的人臉檢測技術(shù)領(lǐng)域,尤其涉及一種利用聚合通道特征進行多視角人臉檢測的方法。
背景技術(shù):
人臉是一個常見而復(fù)雜的視覺模式,所反映的視覺信息在人與人的交流與交往中有著重要的作用和意義。人臉檢測是人臉識別系統(tǒng)中的關(guān)鍵的第一步,也是計算機視覺和模式識別研究領(lǐng)域的熱點。近年來,隨著計算機視覺、模式識別和人工智能等技術(shù)的發(fā)展,以及智能交通、智能監(jiān)控和安全領(lǐng)域的迫切需求,行人檢測技術(shù)受到越來越多的關(guān)注,但是遮擋、重疊的行人難以檢測,所以需要人臉檢測來更有效的、更精確的代替行人檢測。因此,人臉檢測在視頻監(jiān)控、出入口控制、人流量監(jiān)測以及人機交互等領(lǐng)域有著廣泛的應(yīng)用前景。
過去的幾年中,最有效的人臉檢測方法是Viola和Jones提出的利用Haar-like特征與Adaboost分類器結(jié)合,Haar特征是各種不同大小的矩形框通過積分圖快速計算得到。VJ檢測具有很好的實時性,但是還無法滿足在檢測速度、形態(tài)各異的多視角人臉檢測精度上的要求。
HOG與SVM結(jié)合的檢測算法中的HOG是梯度直方圖特征,根據(jù)各個像素點的梯度方向組成細胞,并進行直方圖歸一化,再由多個細胞組成block塊進行歸一化,最終求得HOG特征,但是HOG特征單一,容易造成誤檢和漏檢,無法滿足多視角人臉檢測的精度。
最近幾年,ICF與Adaboost結(jié)合的算法是對之前算法的有效補充和改進,ICF即積分通道特征,是在HOG特征基礎(chǔ)上,采用Haar特征的方式在梯度直方圖上隨機取其矩形框特征,并且加入了LUV顏色通道和梯度幅值通道,但是這種通過隨機產(chǎn)生大小不同、位置不同的矩形區(qū)域的積分值的方法還是太繁瑣,無法滿足檢測速度的要求。
后來,Piotr Dollar又提出了ACF與Adaboost結(jié)合的算法,ACF就是聚合通道特征,與ICF特征很相似,也是包括LUV顏色通道、梯度幅值通道、HOG通道,由于LUV空間在表征目標表面顏色特征時,能提高目標模型對顏色變化的魯棒性,對外界光照變化影響很小,梯度幅值具有大量的邊緣強度信息,HOG富含目標特征信息最為全面,側(cè)重于目標形狀和輪廓信息,對光照和人臉形變影響較小,所以對視角各異的人臉具有很好的檢測效果。與ICF相比較,ACF計算大小固定、位置固定區(qū)域內(nèi)單個像素的特征,并融合在一起,不再進行積分圖計算,所以會加快檢測速度。
技術(shù)實現(xiàn)要素:
本發(fā)明的目的在于克服現(xiàn)有技術(shù)對多視角人臉檢測的精度不高、速度不快等不足,提供一種利用聚合通道特征進行多視角人臉檢測的方法,通過把Piotr Dollar提出的10個ACF通道改進為8個通道,即把其中的LUV顏色三通道改為單一的灰度通道,改進的新的ACF特征在人臉檢測速度上會有很大提升,檢測速度快且準確。
本發(fā)明的目的通過下述技術(shù)方案實現(xiàn):
一種利用聚合通道特征進行多視角人臉檢測的方法,其方法步驟如下:
A、獲取檢測人臉圖像,在人臉圖像上構(gòu)造出圖像金字塔;
B、從圖像金字塔中提取各層的聚合通道特征;計算第1、9、17層的真實尺寸,然后根據(jù)這些尺寸估計他們之間的其他圖像尺寸,這樣會加快計算速度,快速形成特征金字塔;具體如下:
B1、將步驟A中人臉圖像的原RGB圖像轉(zhuǎn)換為灰度圖像,這是一個顏色通道特征提??;
B2、計算步驟B1每個像素的梯度幅度值,這是一個梯度幅度特征提取;
B3、計算每個像素在6個梯度方向上的梯度方向直方圖,這是6個方向直方圖特征提?。?/p>
B4、把每個像素點的1個灰度特征、1個梯度幅度特征和6個梯度方向直方圖特征聚合到一起形成一個含有8個通道特征的聚合通道特征;步驟B中的特征金字塔就是通過計算圖像金字塔中的每個圖像的聚合通道特征而形成的;
C、利用滑動窗口按照一定的步長在圖像金字塔上滑動,獲取一系列滑動窗口大小的檢測塊;所述步驟C中的滑動檢測窗口在特征通道金字塔上按照設(shè)定好的步長,從左到右、從上到下不斷滑動,滑動窗口設(shè)置為24X24,步長小于24;
D、使用訓(xùn)練好的級聯(lián)分類器將步驟C中得到的檢測塊分別分類,分類結(jié)果為人臉和非人臉的檢測塊;期訓(xùn)練過程如下:
首先,獲取訓(xùn)練樣本集,樣本集包括正樣本集和負樣本集,所述的正樣本集使用10000個包含人臉且像素大小大于24X24的圖像區(qū)域,并且對每個正樣本圖像中的人臉區(qū)域標注出坐標和寬高,所述的負樣本集是有不包含人臉的10000張圖片組成;
然后,訓(xùn)練第一階段,獲取正負樣本訓(xùn)練的窗口,根據(jù)標注數(shù)據(jù)提取正樣本窗口,根據(jù)每個負樣本圖片里取25個窗口,分別對提取到的正負窗口進行聚合通道特征提取,用二叉決策樹進行特征判斷,訓(xùn)練出包含64個弱分類器的一個強分類器;
最后,訓(xùn)練第二階段,使用第一階段訓(xùn)練好的分類器對負樣本集進行檢測,檢測到為正的窗口作為負樣本,與正樣本繼續(xù)用二叉決策樹進行特征判斷,訓(xùn)練出包含256個弱分類器的一個強分類器;第三、四階段同理,直到某一層弱分類器分出的loss小于閾值,訓(xùn)練結(jié)束,最后得到一個包含4096個弱分類器的一個多級強分類器;
E、分類為人臉的檢測塊標記為人臉候選窗口,并記錄每個候選窗口的得分;
F、根據(jù)縮放比例,恢復(fù)到原始圖像的窗口大小;所述步驟F的縮放比例是圖像金字塔中各幅圖像與原始圖像之間的比例,檢測到的窗口大小都為24X24,因此需要按照比例恢復(fù)到原圖像上形成許多重疊的矩形框;
H、利用非極大值抑制法去除重疊的人臉候選窗口,得到最終人臉檢測窗口,并且顯示窗口的大小、坐標和得分。
為了更好地實現(xiàn)本發(fā)明,所述步驟H的非極大值抑制法步驟如下:
首先,將初始檢測窗口按分數(shù)從高到低排列;
然后,將第一個初始檢測窗口作為當前抑制窗口;
最后,將所有檢測分數(shù)比當前抑制窗口低的初始窗口作為被抑制窗口,計算當前抑制窗口面積s1、被抑制窗口面積s2及其兩者的重合面積a,如果比值大于0.55,則剔除得分較小的被抑制窗口,最終得到人臉檢測窗口。
本發(fā)明為了解決現(xiàn)有技術(shù)對多視角人臉檢測的精度不高、速度不快等不足,所采用的技術(shù)方案是,一種利用聚合通道特征進行多視角人臉檢測的方法,所述新方法主要是對10個ACF通道里的LUV顏色三通道改進為一個灰度單通道,形成8通道特征,這樣就會更快速地進行特征提取,對提取的特征進行一個4級的Adaboost級聯(lián)分類器的訓(xùn)練,形成一個包含4096個弱分類器的級聯(lián)強分類器,利用級聯(lián)分類器以及快速特征金字塔方法進行圖像檢測,最終快速、準確地檢測出人臉,所述方法包括以下步驟,整個流程見圖1。
本發(fā)明較現(xiàn)有技術(shù)相比,具有以下優(yōu)點及有益效果:
本發(fā)明通過把Piotr Dollar提出的10個ACF通道改進為8個通道,即把其中的LUV顏色三通道改為單一的灰度通道,改進的新的ACF特征在人臉檢測速度上會有很大提升。
附圖說明
圖1為本發(fā)明的流程示意圖。
具體實施方式
下面結(jié)合實施例對本發(fā)明作進一步地詳細說明:
實施例
如圖1所示,一種利用聚合通道特征進行多視角人臉檢測的方法,其方法步驟如下:
A、獲取檢測人臉圖像,在人臉圖像上構(gòu)造出圖像金字塔;
B、從圖像金字塔中提取各層的聚合通道特征;計算第1、9、17層的真實尺寸,然后根據(jù)這些尺寸估計他們之間的其他圖像尺寸,這樣會加快計算速度,快速形成特征金字塔;具體如下:
B1、將步驟A中人臉圖像的原RGB圖像轉(zhuǎn)換為灰度圖像,這是一個顏色通道特征提?。?/p>
B2、計算步驟B1每個像素的梯度幅度值,這是一個梯度幅度特征提??;
B3、計算每個像素在6個梯度方向上的梯度方向直方圖,這是6個方向直方圖特征提??;
B4、把每個像素點的1個灰度特征、1個梯度幅度特征和6個梯度方向直方圖特征聚合到一起形成一個含有8個通道特征的聚合通道特征;步驟B中的特征金字塔就是通過計算圖像金字塔中的每個圖像的聚合通道特征而形成的;
C、利用滑動窗口按照一定的步長在圖像金字塔上滑動,獲取一系列滑動窗口大小的檢測塊;所述步驟C中的滑動檢測窗口在特征通道金字塔上按照設(shè)定好的步長,從左到右、從上到下不斷滑動,滑動窗口設(shè)置為24X24,步長小于24;
D、使用訓(xùn)練好的級聯(lián)分類器將步驟C中得到的檢測塊分別分類,分類結(jié)果為人臉和非人臉的檢測塊;期訓(xùn)練過程如下:
首先,獲取訓(xùn)練樣本集,樣本集包括正樣本集和負樣本集,所述的正樣本集使用10000個包含人臉且像素大小大于24X24的圖像區(qū)域,并且對每個正樣本圖像中的人臉區(qū)域標注出坐標和寬高,所述的負樣本集是有不包含人臉的10000張圖片組成;
然后,訓(xùn)練第一階段,獲取正負樣本訓(xùn)練的窗口,根據(jù)標注數(shù)據(jù)提取正樣本窗口,根據(jù)每個負樣本圖片里取25個窗口,分別對提取到的正負窗口進行聚合通道特征提取,用二叉決策樹進行特征判斷,訓(xùn)練出包含64個弱分類器的一個強分類器;
最后,訓(xùn)練第二階段,使用第一階段訓(xùn)練好的分類器對負樣本集進行檢測,檢測到為正的窗口作為負樣本,與正樣本繼續(xù)用二叉決策樹進行特征判斷,訓(xùn)練出包含256個弱分類器的一個強分類器;第三、四階段同理,直到某一層弱分類器分出的loss小于閾值,訓(xùn)練結(jié)束,最后得到一個包含4096個弱分類器的一個多級強分類器;
E、分類為人臉的檢測塊標記為人臉候選窗口,并記錄每個候選窗口的得分;
F、根據(jù)縮放比例,恢復(fù)到原始圖像的窗口大??;所述步驟F的縮放比例是圖像金字塔中各幅圖像與原始圖像之間的比例,檢測到的窗口大小都為24X24,因此需要按照比例恢復(fù)到原圖像上形成許多重疊的矩形框;
H、利用非極大值抑制法去除重疊的人臉候選窗口,得到最終人臉檢測窗口,并且顯示窗口的大小、坐標和得分。
本發(fā)明步驟H的非極大值抑制法步驟如下:
首先,將初始檢測窗口按分數(shù)從高到低排列;
然后,將第一個初始檢測窗口作為當前抑制窗口;
最后,將所有檢測分數(shù)比當前抑制窗口低的初始窗口作為被抑制窗口,計算當前抑制窗口面積s1、被抑制窗口面積s2及其兩者的重合面積a,如果比值大于0.55,則剔除得分較小的被抑制窗口,最終得到人臉檢測窗口。
本發(fā)明為了解決現(xiàn)有技術(shù)對多視角人臉檢測的精度不高、速度不快等不足,所采用的技術(shù)方案是,一種利用聚合通道特征進行多視角人臉檢測的方法,所述新方法主要是對10個ACF通道里的LUV顏色三通道改進為一個灰度單通道,形成8通道特征,這樣就會更快速地進行特征提取,對提取的特征進行一個4級的Adaboost級聯(lián)分類器的訓(xùn)練,形成一個包含4096個弱分類器的級聯(lián)強分類器,利用級聯(lián)分類器以及快速特征金字塔方法進行圖像檢測,最終快速、準確地檢測出人臉,所述方法包括以下步驟,整個流程見圖1。
步驟1:訓(xùn)練分類器。
步驟1.1:準備訓(xùn)練樣本、初始化訓(xùn)練參數(shù),對10000張形態(tài)各異的人臉圖像進行標注,每個人臉對應(yīng)相應(yīng)的標注數(shù)據(jù),包括人臉窗口坐標及大小,負樣本是由10000張非人臉圖像組成。訓(xùn)練使用的四層強分類器級聯(lián)得到,此四層分類器分別包括64,256,1024,4096個弱分類器,每個弱分類器是由一個二叉決策樹組成,決策樹深度越大節(jié)點越多,分類能力越強,本發(fā)明決策樹深度設(shè)置為5。通過全部四層強分類器的檢測目標為候選目標,且最后一層的強分類器作為最終模型分類器。
步驟1.2:特征提取,訓(xùn)練第一階段,計算正樣本集人臉窗口的特征向量,調(diào)用采樣函數(shù)從負樣本圖片集中隨機裁剪生成負樣本,每幅負樣本圖片剪出負樣本窗口25幅,總數(shù)25000,然后計算這25000個負樣本窗口特征向量。
首先,將樣本圖像轉(zhuǎn)化為灰度圖像,
Gray=(R*0.299+G*0.587+B*0.114) (1)
然后,計算灰度圖像的梯度方向以及梯度幅值,梯度計算有多種方法,比如最常用的Sobel算子和在這里采用的是最簡單的算子[-1 0 1]和進行濾波,得到的效果更好。
最后,梯度方向離散化,選擇6個方向并利用梯度幅值給各個方向通道進行投票。梯度直方圖即HOG,在求得梯度幅值和梯度方向圖后,利用梯度方向圖將每個4×4細胞的像素點的梯度根據(jù)最近鄰域線性插值分配到6個方向上,然后在每一個方向上一句是否采用三線性插值將所有梯度累加到6個梯度方向上,并在2×2的塊上精心歸一化,一次來得到6個梯度方向直方圖。
正樣本的特征向量記為X1,每個窗口的特征個數(shù)為負樣本特征向量記為X2,每個負樣本窗口的特征個數(shù)跟正樣本特征數(shù)一樣,也是1152個。
步驟1.3:Adaboost訓(xùn)練分類器,把步驟1.2里提取的正負樣本的特征X1、X2通過多個決策樹的判斷訓(xùn)練出一個弱分類器,開始時,每個樣本對應(yīng)的權(quán)重是相同的,針對每個特征j訓(xùn)練一個分類器hj,分類器的錯誤率εj定義為:
其中wi為各樣本的權(quán)重,xi為第i個樣本,yi為xi對應(yīng)的正負樣本標號。選擇使得分類器ht(表示第t個弱分類器)具有最小錯誤率εt的特征,根據(jù)選擇的特征對分類正確的樣本更新權(quán)重。
其中最后對權(quán)重進行歸一化。
wt,i表示歸一化后的權(quán)重。至此,一棵決策樹訓(xùn)練完畢,再重復(fù)訓(xùn)練多個決策樹,進行級聯(lián)得到一個Adaboost分類器。在訓(xùn)練第2、3、4級分類器時,負樣本通過上一個分類器錯誤分類的樣本投入到樣本集中,然后從此負樣本集中采樣獲得,最終訓(xùn)練得到一個含有4096棵決策樹的Adaboost強分類器模型。
步驟2:人臉檢測。
步驟2.1:計算圖像特征金字塔,計算圖像精密采樣特征金字塔耗費時間過長,本發(fā)明中根據(jù)圖像特征金字塔的層間冪指定律,用稀疏采樣特征金字塔的鄰近層,近似估計計算精密采樣特征金字塔的方法,這是一種快速特征金字塔計算方法,使用這種方法就不需要先將輸入圖像縮放到所有尺度層,再計算每一層的特征,只需要在每一組內(nèi)計算一個尺度層的特征,再使用這些層的特征估計中間層的特征。
Cs≈R(Cs',s/s')(s/s')-λ (5)
式(5)為特征估計的計算公式。其中,Cs為待估計的特征層,其縮放因子為s。s'為事先計算好的層與s距離最近的層的縮放因子。R(Cs',s/s')表示將Cs的尺寸縮放為原來的s/s'倍。λ是取決于具體特征的常系數(shù),需要事先通過訓(xùn)練樣本估計,本發(fā)明中的得到的灰度、梯度幅值、梯度方向直方圖的特征系數(shù)分別為0、0.1448,、0.1448。使用快速特征金字塔后可以顯著提高計算特征的速度。
步驟2.2:滑動窗口在圖像特征金字塔上按照步長滑動獲取一系列檢測塊,滑動檢測窗口在特征通道金字塔上按照設(shè)定好的步長,從左到右、從上到下不斷滑動,滑動窗口設(shè)置為24X24,步長小于24。
步驟2.3:利用訓(xùn)練好的分類器判斷步驟2.2里得到的檢測塊是否人臉,分類為人臉的檢測塊標記為人臉候選窗口,并記錄每個候選窗口的得分,分類得分由以下公式計算:
其中,αp是第p個軟級聯(lián)分類器Hp的權(quán)值,Hp[1]是第p個軟級聯(lián)分類器Hp將軟級聯(lián)分類器Hp的輸出值按照設(shè)定的閾值輸出0或1;Hp[2]是第p個軟級聯(lián)分類器的輸出值。所有軟級聯(lián)分類器構(gòu)成檢測器H(x),當檢測器H(x)的第一個輸出為‘1’時,檢測器選擇的當前窗口作為人臉候選窗口,當檢測器H(x)的第一個輸出為‘0’時,則放棄當前窗口;檢測器H(x)的第二個輸出作為當前窗口的分類得分,作為去除重疊人臉候選窗口的依據(jù)。
步驟2.4:使用非極大值抑制法去除重疊窗口,得到最終人臉窗口,其步驟如下:
步驟2.4.1:將初始檢測窗口按分數(shù)從高到低排列;
步驟2.4.2:將第一個初始檢測窗口作為當前抑制窗口;
步驟2.4.3:將所有檢測分數(shù)比當前抑制窗口低的初始窗口作為被抑制窗口,計算當前抑制窗口面積s1、被抑制窗口面積s2及其兩者的重合面積a,如果比值大于0.55,則剔除得分較小的被抑制窗口,最終得到人臉檢測窗口。
本發(fā)明通過把LUV三顏色通道改進為灰度的單通道特征,然后與梯度幅值、梯度方向直方圖等信息融合到一起形成新的聚合通道特征,這種新方法不僅在原方法上保持對多視角、不同環(huán)境、不同光照、不同分辨率下人臉檢測的準確性、穩(wěn)定性和魯棒性,更是提高了檢測的速度(PC上對640*480圖像檢測時間由60ms/frame下降到50ms/frame)。
以上所述僅為本發(fā)明的較佳實施例而已,并不用以限制本發(fā)明,凡在本發(fā)明的精神和原則之內(nèi)所作的任何修改、等同替換和改進等,均應(yīng)包含在本發(fā)明的保護范圍之內(nèi)。