梁琛華,常 青
(國防科技大學(xué)ATR重點(diǎn)實(shí)驗(yàn)室,湖南 長沙 410073)
責(zé)任編輯:任健男
隨著社會經(jīng)濟(jì)的發(fā)展以及人們安全意識的提高,對重要場所的安全警戒要求也越來越高。目前,智能視頻監(jiān)控得到了較快的發(fā)展,因其具有對監(jiān)控場景中的目標(biāo)進(jìn)行實(shí)時監(jiān)測、跟蹤以及行為識別的獨(dú)特優(yōu)勢,得到了廣泛的關(guān)注。其中,紅外視頻警戒以其全天候、抗隱蔽能力強(qiáng)的特點(diǎn)在偵察、夜戰(zhàn)、安全警戒中發(fā)揮了極為重要的作用。
在紅外視頻監(jiān)控系統(tǒng)中,對目標(biāo)的識別尤為重要,因?yàn)橥枰獙μ囟繕?biāo)(人)進(jìn)行識別,而在較為復(fù)雜的場景中,常常會因?yàn)楸尘碍h(huán)境中的車輛、建筑、動物、電線桿以及風(fēng)吹草動等影響,造成誤檢及漏檢。
為了對人體目標(biāo)進(jìn)行有效的識別,需要選擇目標(biāo)的相應(yīng)特征進(jìn)行分類器的學(xué)習(xí),就特征提取而言,常見的有利用其幾何特征,比如寬高比、形狀復(fù)雜度、緊密度等,但往往較難區(qū)分視場中的樹葉、電線桿等偽目標(biāo);或者利用灰度特征,但當(dāng)背景區(qū)域亮度與人體相近,比如房屋、海邊等區(qū)域,甚至比人體更亮?xí)r,難以識別出人體目標(biāo)。
此外,為了提高識別率,需要選擇相應(yīng)的算法對目標(biāo)特征進(jìn)行學(xué)習(xí),以形成分類器。常見的有基于AdaBoosting的學(xué)習(xí),但該算法實(shí)時性較差,不能滿足本文場景中實(shí)時處理的要求,且在學(xué)習(xí)過程中需要大量的樣本。此外有基于二叉樹的學(xué)習(xí),雖然算法速度最快,但識別性能太差。還有基于SVM分類器的學(xué)習(xí),在實(shí)現(xiàn)目標(biāo)的二分類時效果較好,但在解決多類分類的時候存在困難,同樣不適合本文的場景特征。
為了適應(yīng)復(fù)雜場景中的不同目標(biāo)分類,實(shí)時處理,并要求有較好的魯棒性,本文將HOG(Histogram of Oriented Gradient)算法對圖像局部區(qū)域外觀和形狀的良好表征和隨機(jī)森林分類器穩(wěn)健的目標(biāo)分類性能有效結(jié)合,提出了一種針對復(fù)雜場景的基于HOG的隨機(jī)森林分類器的人體識別模型。
在對人體目標(biāo)進(jìn)行目標(biāo)分類訓(xùn)練之前,需要對感興趣目標(biāo)的特征進(jìn)行相關(guān)的提取,并且該特征要盡可能最大程度地區(qū)分感興趣目標(biāo)和其他目標(biāo),而HOG能夠?qū)D像的局部區(qū)域特征進(jìn)行描述,它通過計算局部區(qū)域上的梯度方向直方圖來構(gòu)成人體特征,能夠很好地描述人體的邊緣和輪廓特征[1-3],并且對光照的變化、目標(biāo)的少量偏移以及目標(biāo)的遠(yuǎn)近不敏感,因此可以較好地表征人體與其他目標(biāo)的差異。
HOG的流程圖如圖1所示。
圖1 HOG特征提取流程圖
HOG特征計算的具體步驟如下:
1)對于輸入的視頻逐幀處理,并提取感興趣的矩形區(qū)域。
2)建立方向坐標(biāo)系,將-90°~ +90°平均分成NSTAGE個區(qū)域,并且得到各區(qū)域的正切范圍,便于后面根據(jù)各區(qū)域的梯度范圍進(jìn)行目標(biāo)的分類。
式中:i∈[1,NSTAGE -1]。
因?yàn)檎兄翟冢?0°和+90°的位置為無窮大,為了方便計算,定義
3)對于圖像中的某一點(diǎn)的像素I(x,y),其一階梯度為:
水平方向?yàn)?/p>
垂直方向?yàn)?/p>
4)根據(jù)各點(diǎn)像素的一階梯度值dx(x,y)和dy(x,y)獲得各點(diǎn)的梯度方向α(x,y)和梯度幅值Z(x,y)。
梯度方向?yàn)?/p>
梯度幅值為
5)根據(jù)各點(diǎn)像素的梯度方向α(x,y)確定該梯度幅值在坐標(biāo)系中所處的范圍,并對各區(qū)域的梯度幅值累加求和。
若 α(x,y)< Stage[k+1]且α(x,y)> Stage[k],則HOGvector[k]+=Z(x,y),其中 k ∈[0,NSTAGE]。將各區(qū)域梯度值進(jìn)行二范數(shù)的歸一化,各區(qū)域梯度幅值的二范數(shù)為
二范數(shù)歸一化為
獲得HOG特征向量:將各個區(qū)域歸一化后的向量連接起來,得到HOG特征向量,并且,該特征向量作為生成隨機(jī)森林分類器的訓(xùn)練特征。
為了實(shí)現(xiàn)對人體目標(biāo)的有效分類,需要基于HOG特征向量,選取適合的算法進(jìn)行學(xué)習(xí),生成分類。學(xué)習(xí)算法很多,下面簡要介紹幾個常見的算法。
1)Boosting[4]
它是判別分類器的組合,分類決策是由各個子分類器的加權(quán)組合決定的,在逐個訓(xùn)練分類器的時候,數(shù)據(jù)樣本的權(quán)重會被重新分配,使之能夠給予錯誤數(shù)據(jù)更多的注意力。訓(xùn)練不斷地進(jìn)行,直到總錯誤低于某個特定的閾值,Boosting算法有較高的準(zhǔn)確率,不需要先驗(yàn)知識,只需要選擇合適的迭代次數(shù),但速度過慢,需要大量數(shù)據(jù)進(jìn)行訓(xùn)練,且易受到噪聲影響。
2)決策樹[5]
它是一個判別分類器,該樹在當(dāng)前節(jié)點(diǎn)通過尋找數(shù)據(jù)特征和一個閾值,最優(yōu)劃分?jǐn)?shù)據(jù)到不同的閾值,處理流程是不停地劃分?jǐn)?shù)據(jù),并向下到樹的兩端節(jié)點(diǎn)之一。和其他算法相比,其性能不為最優(yōu),但速度最快。
3)SVM[5]
支持向量機(jī)分類器,需要設(shè)定一個高維空間中任意兩點(diǎn)的距離函數(shù),采用基于最大類間隔的線性分類技術(shù),得到某種意義上較優(yōu)地區(qū)分類別的非線性分類器,當(dāng)數(shù)據(jù)有限時,該算法可以獲得較好的性能,SVM算法對大規(guī)模訓(xùn)練樣本難以實(shí)施,且解決多類分類存在困難。
以上幾種是目前較為常見的學(xué)習(xí)方法,然而各自均存在一定的局限性,而隨機(jī)森林學(xué)習(xí)算法卻能夠很好地解決這一問題。
隨機(jī)森林可以通過收集很多樹的子節(jié)點(diǎn)對各個類別的投票,然后選擇獲得最多投票的類別作為判斷結(jié)果。隨機(jī)森林包含隨機(jī)選擇的多個決策樹,此外,它繼承了樹的很多屬性,通過構(gòu)造不同的訓(xùn)練集增加分類模型間的差異,從而提高模型的分類能力。此外,為了提高魯棒性,隨機(jī)森林使用袋外(out of bag)方法來檢驗(yàn)分裂,隨機(jī)森林的具體流程如圖2所示。
圖2 隨機(jī)森林分類器
由圖2所示,多個分類器的組合模型,其性能遠(yuǎn)優(yōu)于單個決策樹的預(yù)測,魯棒性較好。
1)首先,從實(shí)驗(yàn)場景中提取感興趣的正樣本53個和負(fù)樣本169個,如圖3所示。
圖3 訓(xùn)練樣本圖
2)提取樣本的HOG特征向量HOGvecor,并設(shè)置參數(shù)responses的值。正樣本:responses=1;負(fù)樣本:responses=0。
3)通過以下代碼對樣本進(jìn)行學(xué)習(xí)、訓(xùn)練,生成分類器:
4)調(diào)用隨機(jī)森林預(yù)測函數(shù)對目標(biāo)特征進(jìn)行預(yù)測,并且將返回值r轉(zhuǎn)換成整數(shù)來標(biāo)志是否預(yù)測正確,代碼為:
5)使用不同數(shù)量的testsample(包括正反樣本)驗(yàn)證分類器的識別率。
為了驗(yàn)證不同測試樣本數(shù)以及梯度區(qū)域分類數(shù)目對識別結(jié)果的影響,采用不同的數(shù)據(jù)進(jìn)行觀測,此外,本文對比了不同分類器的性能。
1)選取15個正樣本,33個負(fù)樣本,HOG分成10個區(qū)域,各分類器的識別率如表1所示。
表1 HOG分成10個區(qū)域時各分類器的識別率
2)選取15個正樣本,33個負(fù)樣本,HOG分成40個區(qū)域,各分類器的識別率如表2所示。
3)選取15個正樣本,33個負(fù)樣本,HOG分成60個區(qū)域,各分類器的識別率如表3所示。
表2 HOG分成40個區(qū)域時各分類器的識別率
表3 HOG分成60個區(qū)域時各分類器的識別率
通過表1、表2、表3的結(jié)果可知,通過一定數(shù)量的測試樣本對4種分類器進(jìn)行檢測,隨機(jī)森林分類器的識別效果最佳,并且隨著HOG區(qū)域細(xì)分程度的增加,分類越精細(xì),識別率越高。
前文簡要介紹了HOG特征的提取,并且基于HOG產(chǎn)生的特征向量,進(jìn)行隨機(jī)森林分類器的學(xué)習(xí),建立了隨機(jī)森林分類器,并利用測試樣本驗(yàn)證了隨機(jī)森林分類器的性能優(yōu)于其他分類器。為了進(jìn)一步說明該分類器在復(fù)雜場景中的魯棒性,選擇一些復(fù)雜的場景進(jìn)行驗(yàn)證。
測試視頻為紅外攝像機(jī)拍攝所得,環(huán)境溫度0~10℃,分辨率為384×288。程序運(yùn)行環(huán)境為:VC++2008,OpenCV 2.10,Intel Core i5-2430M/2 Gbyte 內(nèi)存。
1)場景一:街道,如圖4所示(原圖為彩色圖片)。
場景說明:圖4a中右下方狗的目標(biāo)框?yàn)榫G色;圖4b中中心汽車的目標(biāo)框?yàn)辄S色;圖4c中左上方的吊車的目標(biāo)框?yàn)樗{(lán)色;圖4中的人體目標(biāo)框均為紅色。
場景分析:街道環(huán)境較為復(fù)雜,有電線桿、樹木、運(yùn)動的吊車、寵物以及汽車的出現(xiàn)。從圖4a知,沒有將狗(綠框)識別成人體目標(biāo);從圖4b知,沒有將汽車(黃框)識別成人體目標(biāo);從圖4c知,沒有將運(yùn)動的吊車(藍(lán)色區(qū)域)識別成人體目標(biāo);從圖4d知,當(dāng)視場中出現(xiàn)多人體目標(biāo)時,沒有出現(xiàn)漏檢,分類器魯棒性較好。
2)場景二:草原,如圖5所示(原圖為彩色圖片)。
場景說明:圖5中,人體目標(biāo)框?yàn)榧t色。
場景分析:草原環(huán)境中,背景灰度和人體目標(biāo)差異較小,且存在電線桿、風(fēng)引起草坪的晃動等干擾,從圖5a和圖5b中可知,分類器均能較好地識別出人體目標(biāo),并且無虛警,分類器魯棒性較好。
3)場景三:野外,如圖6所示(原圖為彩色圖片)。
圖6 野外場景下人體目標(biāo)的識別
場景說明:圖6中,人體目標(biāo)框?yàn)榧t色。
場景分析:野外環(huán)境中,存在電線桿,有許多土坡,并且樹木較多,地面雜草叢生,因此在風(fēng)大的時候會對目標(biāo)識別產(chǎn)生一定的干擾,從圖6a和圖6b中可知,分類器能夠較好地識別出人體目標(biāo),無虛警,分類器魯棒性較好。
以上3個場景是比較有代表性的復(fù)雜場景,此外還有河套、海邊、工地等其他復(fù)雜場景,就不一一列舉了,它們有以下一個或幾個特點(diǎn):1)視場中存在汽車、寵物等其他運(yùn)動物體;2)存在電線桿、灌木樁等物體;3)當(dāng)環(huán)境中風(fēng)較大時,引起的樹葉和草叢的晃動會帶來干擾;4)背景溫度較高,比如房屋、村莊、海洋等,造成背景環(huán)境和人體灰度接近,帶來干擾。
針對以上復(fù)雜環(huán)境,基于HOG的隨機(jī)森林分類器依然可以較好地對人體目標(biāo)進(jìn)行準(zhǔn)確識別,不會出現(xiàn)誤檢和漏檢,魯棒性較好。
本文通過對ROI區(qū)域HOG特征的提取和學(xué)習(xí),并對一定數(shù)量的正負(fù)樣本進(jìn)行訓(xùn)練,建立了基于HOG的隨機(jī)森林分類器,并通過測試樣本驗(yàn)證了該分類器的魯棒性。此外將基于HOG的隨機(jī)森林分類器與二叉樹、SVM和AdaBoosting等算法進(jìn)行比較,驗(yàn)證了其優(yōu)越性。最后,將生成的分類器用于街道、草原以及曠野等復(fù)雜場景,觀察到在不同情況下均可以實(shí)現(xiàn)對人體目標(biāo)的準(zhǔn)確識別,在視頻監(jiān)控中發(fā)揮著重要的作用。
[1]胡仕玲,顧爽,陳啟軍.基于HOG的物體分類方法[J].華中科技大學(xué)學(xué)報,2012(11):124-126.
[2]李暉,曲仕茹.基于分層梯度方向直方圖和SVM的人體識別[J].計算機(jī)測量與控制,2010,18(11):2062-2064.
[3]TRIGGS D.Histogram of oriented gradients for human detection[C]//Proc.the IEEE Conference on Computer Vision and Pattern Recognition.[S.l.]:IEEE Press,2005:886-893.
[4]董樂紅,耿國華,高原.Boosting算法綜述[J].計算機(jī)應(yīng)用與軟件,2006(8):27-29.
[5]于玲,劉彥隆,郭建軍.DWT和Fast PCA與SVM在人臉識別技術(shù)中的應(yīng)用[J]. 電視技術(shù),2012,36(23):172-176.