景 陽(yáng),劉 琳,黃鴻志,曾昭龍
(1.中國(guó)人民公安大學(xué),北京102623;2.南京理工大學(xué)光電工程411教研室,江蘇南京210094)
行人檢測(cè)是模式識(shí)別領(lǐng)域的一個(gè)熱門話題,它在視頻監(jiān)控、人群安全預(yù)測(cè)與管理[1]、高級(jí)人機(jī)交互等領(lǐng)域有很好的應(yīng)用價(jià)值。關(guān)于這一問(wèn)題,學(xué)者們提出了很多方案。徐發(fā)牛等人[2]采用利用最小結(jié)構(gòu)誤差匹配結(jié)合角度誤差計(jì)算,將整個(gè)人體看成是一個(gè)關(guān)節(jié)性物體來(lái)進(jìn)行識(shí)別,并將匹配策略進(jìn)行了優(yōu)化,實(shí)現(xiàn)了對(duì)人體的識(shí)別,這種基于關(guān)系匹配的方式容易受到外部環(huán)境的干擾,造成識(shí)別精度較低。Shaopeng Tang[3]用光流法計(jì)算出人體各部位的速度梯度,以此為依據(jù)作為人體特征進(jìn)行識(shí)別。光流法精確度較高,當(dāng)人體出現(xiàn)混疊時(shí),多個(gè)人體之間的四肢相互干擾影響識(shí)別效果。目前,方向梯度直方圖(HOG)與支持向量機(jī)(SVM)分類器相結(jié)合的識(shí)別方式由于性能較高,已經(jīng)成為人體識(shí)別領(lǐng)域的主要手段。HOG描述子由法國(guó)國(guó)家計(jì)算機(jī)技術(shù)和控制研究所的研究員Navneet Dalal和Bill Triggs首次提出[4],并且在人體識(shí)別領(lǐng)域效果顯著。Dalal方法處理對(duì)象是靜態(tài)圖像,在計(jì)算特征時(shí),HOG描述子維數(shù)隨目標(biāo)尺寸增大而迅速增多,訓(xùn)練高維SVM需要的樣本數(shù)量也相當(dāng)龐大,運(yùn)算量很大。針對(duì)以上問(wèn)題,本文主要通過(guò)降低HOG描述子的維數(shù)進(jìn)行了改進(jìn)。一方面,在行人檢測(cè)中,合理利用了運(yùn)動(dòng)目標(biāo)提取技術(shù),減小待處理的目標(biāo)區(qū)域,進(jìn)而降低計(jì)算量。Wang[4]利用混合高斯建模技術(shù)剔除掉大部分圖像背景,減少了偵測(cè)掃描區(qū)域,提升了檢測(cè)速度;另一方面,通過(guò)人體自身特性進(jìn)行改進(jìn)。人體頭肩部分不容易受到遮擋等外界干擾,往往只存在不同角度上的差異,結(jié)構(gòu)比較穩(wěn)定,可以用來(lái)代替整個(gè)人體進(jìn)行識(shí)別。Min Li[5]等人在 Navneet Dalal思想的基礎(chǔ)上,采用Harr特征和HOG特征相結(jié)合的方式,提取了人體的頭肩模型,大大簡(jiǎn)化了計(jì)算量。
傳統(tǒng)的人體檢測(cè)方法主要通過(guò)提取大量人體樣本的HOG特征來(lái)訓(xùn)練SVM分類器,實(shí)現(xiàn)人體檢測(cè)。HOG的維數(shù)與樣本大小有關(guān),樣本圖像越大,維數(shù)越多。針對(duì)整個(gè)人體計(jì)算其HOG特征,計(jì)算量很大,對(duì)內(nèi)存容量也有高的要求。同時(shí),人體運(yùn)動(dòng)是一個(gè)相對(duì)復(fù)雜的過(guò)程,四肢的運(yùn)動(dòng)形式尤其復(fù)雜,為了獲得一個(gè)識(shí)別率高的SVM分類器,必然需要大量的多種運(yùn)動(dòng)形式的人體樣本參與訓(xùn)練,這就進(jìn)一步增加了運(yùn)算量,且由于四肢的運(yùn)動(dòng)多樣性,SVM的分類效果也有所局限。考慮到人體頭肩部分的運(yùn)動(dòng)相對(duì)簡(jiǎn)單,并且具有一定的穩(wěn)定性,可以用人體頭肩模型來(lái)代替整個(gè)人體,這樣做的優(yōu)點(diǎn)有兩方面:一方面,計(jì)算頭肩模型的HOG特征要明顯小于整個(gè)人體的HOG特征,這就降低了計(jì)算量,減輕內(nèi)存負(fù)擔(dān);另一方面,無(wú)論是行人還是騎自行車的人,頭肩部分的運(yùn)動(dòng)除了角度上的差異,運(yùn)動(dòng)方式比較單一,增強(qiáng)了人體識(shí)別的可靠性和穩(wěn)定性。基于以上兩點(diǎn),采用頭肩模型代替人體進(jìn)行識(shí)別是一個(gè)很好的選擇。
本文提出了基于頭肩模型的快速人體檢測(cè)方法:首先在INRIA行人數(shù)據(jù)庫(kù)中提取大量的人體頭肩模型樣本,計(jì)算正負(fù)樣本的HOG特征并訓(xùn)練SVM分類器;然后對(duì)待檢測(cè)的監(jiān)控視頻,先采用混合高斯模型[6]進(jìn)行運(yùn)動(dòng)目標(biāo)提取預(yù)處理,結(jié)合Sobel邊緣檢測(cè)算子[7],提取目標(biāo)輪廓,并計(jì)算頭肩模型的范圍;第三,計(jì)算頭肩模型的HOG特征,并分類;第四,對(duì)分類為非人體的樣本按照Dalal方法進(jìn)行二次處理。在實(shí)驗(yàn)部分,采用本文方法與多文獻(xiàn)方法進(jìn)行了性能比較,結(jié)果表明本文算法在人體識(shí)別率和識(shí)別速率上都有所改善。
結(jié)合文獻(xiàn)[4]中涉及的混合高斯目標(biāo)提取技術(shù)來(lái)減小目標(biāo)識(shí)別范圍。混合高斯模型是一種常用目標(biāo)提取技術(shù),它是Chris Stauffer[6]等人提出的。該算法的核心是通過(guò)自適應(yīng)調(diào)整多個(gè)高斯模型實(shí)現(xiàn)前景和背景的分離。混合高斯模型如式(1)所示
式中:Xt表示時(shí)刻t像素 {x0,y0}的值;μi,t和 Σi,t分別是時(shí)刻t第i個(gè)高斯分布的均值和協(xié)方差矩陣;ωi,t是時(shí)刻t第i個(gè)高斯分布的權(quán)重;η定義為高斯密度函數(shù);K個(gè)高斯模型通過(guò)不斷地更新參數(shù),完成前景和背景的檢測(cè)。參數(shù)更新公式如下
某一像素與背景模型相匹配則認(rèn)為該像素是背景像素,否則,則認(rèn)為是前景像素,從而實(shí)現(xiàn)前景的提取。通過(guò)混合高斯模型可以獲得運(yùn)動(dòng)目標(biāo)的圖像以及其目標(biāo)二值圖像,為后續(xù)處理做準(zhǔn)備。
頭肩模型包括高度和寬度兩個(gè)參數(shù),高度表示為人體頭頂?shù)叫厍簧喜?,寬度為人體肩膀?qū)挾?。頭肩模型的高度和寬度可以通過(guò)人體正常比例進(jìn)行估計(jì)獲得,因此,首先需要確定人體的形態(tài)?;旌细咚鼓P吞峁┝诉\(yùn)動(dòng)人體的二值圖像,但是混合高斯產(chǎn)生的二值圖像往往不夠完整,而是由很多不連續(xù)的塊組成,與實(shí)際的人體形態(tài)有很大的差異。經(jīng)過(guò)腐蝕膨脹等處理后,盡管可以將不連續(xù)的塊組合在一起,但是獲得的人體邊界是畸變的,與實(shí)際的人體邊界有很大差異。為此,可以采用邊緣檢測(cè)的方式對(duì)這種畸變加以約束。
常用的邊緣檢測(cè)算子有Sobel,Canny,Prewitt邊緣檢測(cè)算子、Laplace邊緣檢測(cè)算子等[8]。在一個(gè)拍攝距離較遠(yuǎn)的監(jiān)控視頻中,混合高斯提取的運(yùn)動(dòng)人體目標(biāo)往往比較模糊,并且噪聲比較大,因此,針對(duì)這種目標(biāo)進(jìn)行邊緣檢測(cè)時(shí),應(yīng)該盡可能地降低噪聲的干擾,Sobel邊緣檢測(cè)算子對(duì)噪聲具有平滑作用,可以較好地減少背景等干擾對(duì)人體邊緣提取的影響。在人體邊緣提取過(guò)程中,首先對(duì)人體目標(biāo)進(jìn)行Sobel邊緣檢測(cè),此時(shí)獲得的目標(biāo)輪廓往往容易受到背景輪廓的影響,因此需要對(duì)輪廓進(jìn)行修正。混合高斯模型提取的目標(biāo)中不存在背景像素,因此可以對(duì)Sobel提取的輪廓進(jìn)行修正。若輪廓像素同時(shí)為人體二值圖的像素,則認(rèn)為該像素屬于人體輪廓,否則認(rèn)為該像素為背景輪廓,需要被剔除。頭肩模型提取過(guò)程如圖1所示,通過(guò)這種方式獲得一個(gè)完整準(zhǔn)確的人體輪廓。
對(duì)輪廓進(jìn)行填充,重新獲得人體二值圖像。計(jì)算其水平投影直方圖,獲取人體各處的寬度曲線。寬度曲線的第一個(gè)極小值表示為脖子的位置,即圖2中的A點(diǎn)。從人體頂點(diǎn)O到A點(diǎn)的范圍內(nèi),獲取寬度曲線的最大值作為頭部的寬度。根據(jù)人體正常比例關(guān)系,即可獲得人體頭肩模型的高度。從人體頂點(diǎn)O到頭肩模型高度范圍內(nèi)的寬度曲線最大值,即為頭肩模型的寬度。從目標(biāo)圖像中截取高度和寬度對(duì)應(yīng)的矩形范圍,即可獲得人體頭肩模型。
Navneet Dalal和Bill Triggs首次提出了HOG的概念,HOG描述子用來(lái)計(jì)算局部圖像梯度的方向信息的統(tǒng)計(jì)值,可以用來(lái)描述局部目標(biāo)的表象和形狀。計(jì)算HOG描述子是一個(gè)將區(qū)域特征相互疊加的過(guò)程,目標(biāo)區(qū)域通過(guò)細(xì)胞單元?jiǎng)澐譃楦鱾€(gè)小區(qū)域,然后各個(gè)小區(qū)域組合成一個(gè)塊單元,HOG特征即各個(gè)區(qū)域特征的組合,如圖3所示。
圖3 HOG計(jì)算過(guò)程
首先采用Gamma校正法對(duì)輸入圖像進(jìn)行顏色空間的標(biāo)準(zhǔn)化,然后根據(jù)式(5)和式(6)計(jì)算圖像中各個(gè)像素的水平梯度Gx和垂直梯度Gy
式中:f(x,y)是圖像灰度曲線。根據(jù)式(7)和式(8)計(jì)算梯度的大小和方向
將圖像劃分為像素?cái)?shù)為n×n的細(xì)胞單元,根據(jù)角度的不同,統(tǒng)計(jì)細(xì)胞內(nèi)的梯度方向直方圖。角度通常限定在0°~180°,均勻分為9個(gè)通道區(qū)域,每個(gè)細(xì)胞獲得一個(gè)9維的特征向量。Dalal實(shí)驗(yàn)驗(yàn)證了梯度模板越簡(jiǎn)單,分類結(jié)果越好,并且采用[-1,0,1]為模板計(jì)算每個(gè)cell的梯度效果最好。
相鄰的M×N個(gè)細(xì)胞單元組合為一個(gè)塊區(qū)域,M×N個(gè)細(xì)胞單元的特征向量串聯(lián)成塊區(qū)域的一個(gè)M×N×9的特征向量,對(duì)區(qū)域內(nèi)的每個(gè)細(xì)胞的梯度結(jié)果進(jìn)行統(tǒng)一規(guī)劃,可以使特征向量對(duì)光照、陰影和邊緣變化具有魯棒性。
在一個(gè)M×N的搜索窗口中,塊區(qū)域的移動(dòng)步長(zhǎng)為一個(gè)cell的大小,則搜多窗口的內(nèi)有((M-Nn)/n+1)2個(gè)塊區(qū)域,搜索窗口的特征向量維數(shù)有((M-Nn)/n+1)2×N2×9,這就是一個(gè)搜索窗口的HOG描述子。
從INRIA中截取人體頭肩模型,并統(tǒng)一大小為64×64,同樣截取負(fù)樣本并統(tǒng)一大小。M.Kachouane[9]從提高識(shí)別速率的角度做了系列實(shí)驗(yàn),驗(yàn)證了當(dāng)細(xì)胞大小為8×8時(shí),在獲得好的識(shí)別率的同時(shí),處理速度最快。設(shè)定細(xì)胞大小為8×8,塊大小16×16,搜索窗口為64×64,則每個(gè)樣本獲得一個(gè)1 764維特征向量。對(duì)2 000個(gè)正樣本和3 000個(gè)負(fù)樣本的特征向量進(jìn)行訓(xùn)練,獲得SVM模型分類器。
對(duì)通過(guò)上述處理獲得的頭肩模型統(tǒng)一大小為64×64,設(shè)定細(xì)胞大小為8×8,塊大小16×16,搜索窗口為64×64,計(jì)算HOG特征向量并通過(guò)訓(xùn)練好的SVM分類器進(jìn)行分類。當(dāng)人體之間存在遮擋和混疊時(shí),混合高斯模型提取的目標(biāo)包含多個(gè)人體,按照本文所述的頭肩模型提取方法提取的頭肩模型可能不準(zhǔn)確,使得分類發(fā)生錯(cuò)判。這種情況下,需要對(duì)分類為非人體的樣本做進(jìn)一步處理。即采用Dalal的方法,對(duì)混合高斯模型提取出的整個(gè)運(yùn)動(dòng)目標(biāo)重新進(jìn)行識(shí)別,從而確保識(shí)別率。
本次實(shí)驗(yàn)以MATLAB為平臺(tái),針對(duì)分辨率為660×492,幀數(shù)為703的視頻分別采用Dalal算法、文獻(xiàn)[4]算法和本文算法進(jìn)行處理。實(shí)驗(yàn)手段主要依據(jù)Dalal算法,設(shè)置窗口滑動(dòng)間隔為8個(gè)像素,掃描尺度為0.6~1.2,尺度變化間隔為1.2倍。文獻(xiàn)[4]在Dalal算法的基礎(chǔ)上,引進(jìn)混合高斯模型,減少了背景部分的運(yùn)算。3種方法在識(shí)別率和識(shí)別速率上進(jìn)行了比較,實(shí)驗(yàn)結(jié)果見(jiàn)表1。
表1 3種方法之間的性能比較表
從表1可以看出,在識(shí)別率上,混合高斯目標(biāo)提取技術(shù)的應(yīng)用避免了Dalal算法對(duì)某些背景區(qū)域的誤識(shí)別,但同時(shí)受到本身靈敏度的限制,可能造成對(duì)靜止人體的漏檢,造成識(shí)別率的降低,但總體上,最佳識(shí)別率與Dalal算法相比有所提高。本文算法由于選取了穩(wěn)定的頭肩模型作為識(shí)別目標(biāo),避免了肢體等復(fù)雜運(yùn)動(dòng)的干擾,最佳識(shí)別率略有提高。從處理時(shí)間上,由于本方法結(jié)合了混合高斯目標(biāo)提取,避免了傳統(tǒng)Dalal方法在背景區(qū)域上重復(fù)計(jì)算,同時(shí),頭肩模型的尺寸較小,其特征向量的維數(shù)相對(duì)較少,減少了計(jì)算量,每幀的平均處理速度有很大程度的提高。
圖4為人體檢測(cè)效果圖,陰影區(qū)域表示識(shí)別為人體,長(zhǎng)方框表示識(shí)別為非人體,其中右圖中由于兩個(gè)人體距離比較近,混合高斯模型無(wú)法精確分割兩個(gè)人體,使得頭肩模型提取錯(cuò)誤而引起誤判,經(jīng)過(guò)Dalal算法修正后,可以從該目標(biāo)圖像中識(shí)別出兩個(gè)人體。本方法除了可以識(shí)別行人外,還可以檢測(cè)騎車等特殊行人。本文算法只需要獲得頭肩模型作為識(shí)別目標(biāo),識(shí)別結(jié)果不受頭肩部分以下的影響。由于頭肩模型的高度僅由水平投影直方圖的第一個(gè)極小值,即頭肩連接部位決定,因此,本文算法對(duì)騎車等特殊行人仍有良好的檢測(cè)效果。
本文在傳統(tǒng)Dalal人體識(shí)別方法的基礎(chǔ)上,采用混合高斯模型提取運(yùn)動(dòng)目標(biāo),并提取頭肩模型代替整個(gè)人體進(jìn)行識(shí)別。從識(shí)別率和處理時(shí)間上,該方法都較傳統(tǒng)的方法有所提高。同時(shí),由于頭肩模型提取過(guò)程中,不受頭肩部分以下運(yùn)動(dòng)的干擾,對(duì)騎車等特殊行人仍有很好的識(shí)別效果。然而算法仍然有需要改進(jìn)的地方,頭肩部分盡管不容易受到遮擋,但當(dāng)人體目標(biāo)之間出現(xiàn)混疊時(shí),混合高斯模型無(wú)法對(duì)獨(dú)立目標(biāo)進(jìn)行精確提取,往往提取的目標(biāo)區(qū)域中包含多個(gè)人體,此時(shí),盡管采用Dalal算法進(jìn)行了修正,但是延長(zhǎng)了處理時(shí)間,未來(lái)可以對(duì)此做進(jìn)一步的改進(jìn)。
:
[1]車志富,苗振江,王夢(mèng)思.地鐵視頻監(jiān)控系統(tǒng)中的行人檢測(cè)研究與應(yīng)用[J].現(xiàn)代城市軌道交通,2010(2):31-36.
[2]徐發(fā),牛黃芳,汪君.基于關(guān)系匹配的部件化人體識(shí)別[J].微計(jì)算機(jī)信息,2009,25(12):170-172.
[3] TANG S,SATOSHI G.Human detection using motion and appearance based feature[EB/OL].[2014-03-24].http://www.researchgate.net/publication/224107481_Human_detection_using_motion_and_appearance_based_feature.
[4] STAUFFER C,GRIMSON W E L.Adaptive background mixture models for real-time tracking[EB/OL].[2014-03-24].http://wenku.baidu.com/link?url=LT44XYSg5qvyBDFprTb3mvkEVlYgb9HdUQPWdse-URDdyR62EhHC4GUgnPR1XvSygq217fXCzjrLiXSJbon4Th4by2wlMylIBN AVG8ttvPK.
[5] LI Min,ZHANG Zhaoxiang,HUANG Kaiqi,et al.Rapid and robust human detection and tracking based on omega-shape features[EB/OL].[2014-03-24].http://easyscholar.ruc.edu.cn/homepage/zxzhang/index.htm.
[6] STAUFFER C M,GRIMSON W E L.Adaptive background mixture models for real-time tracking[EB/OL].[2014-03-24].http://wenku.baidu.com/link?url=-080XHhxxzvUbBiY6iJL4cZpb8hfVOIYZX6fMi_UCj1yCV1mHatv1LAYQ4fNvzw4IktVn7nrBFL4N2RumPV_58RwsYnO vCKP6uRPkmEU0h7.
[7]王康泰,戴文戰(zhàn).一種基于Sobel算子和灰色關(guān)聯(lián)度的圖像邊緣檢測(cè)方法[J].計(jì)算機(jī)應(yīng)用,2005,26(5):1035-1036.
[8]周道炳,朱衛(wèi)綱.幾種邊緣檢測(cè)算子的評(píng)估[J].指揮技術(shù)學(xué)院學(xué)報(bào),2000,11(1):59-63.
[9] KACHOUANE M,SAHKI S,LAKROUF M,et al.HOG based fast human detection[EB/OL].[2014-03-24].http://www.researchgate.net/publication/237047488_HOG_Based_fast_Human_Detection?ev=auth_pub.