張鵬飛,藍(lán)維旱,高 峰,王迎旭
(1.中通服咨詢?cè)O(shè)計(jì)研究院有限公司,江蘇 南京 210019;2.廣東交通職業(yè)技術(shù)學(xué)院,廣東 廣州 510630)
隨著智能車輛、智能機(jī)器人和智慧交通等領(lǐng)域的不斷發(fā)展,交通場(chǎng)景下的行人圖像目標(biāo)檢測(cè)逐漸成為這些領(lǐng)域的關(guān)鍵任務(wù)之一。但由于行人姿勢(shì)、服裝、背景和天氣的不同導(dǎo)致人的外觀差異較大,且圖像中行人尺度不一,使得行人檢測(cè)仍是一個(gè)具有挑戰(zhàn)的開放性研究問題[1,2]。
目前,國內(nèi)外許多學(xué)者已經(jīng)對(duì)復(fù)雜背景下的小目標(biāo)行人檢測(cè)問題展開了研究,檢測(cè)方法大致可分為兩類,一類是基于傳統(tǒng)機(jī)器學(xué)習(xí)的圖像識(shí)別方法,另一類是基于深度學(xué)習(xí)的目標(biāo)檢測(cè)方法[3-8]。對(duì)于傳統(tǒng)機(jī)器學(xué)習(xí)方面,2005年,Navneet Dalal創(chuàng)造了INRIA行人數(shù)據(jù)集并首先提出了基于HOG特征的SVM識(shí)別方法[9];蘇松志等改進(jìn)了高斯混合模型減少復(fù)雜背景對(duì)目標(biāo)檢測(cè)的影響,并提出了基于形狀特征的行人分類方法[10]。對(duì)于深度學(xué)習(xí)方面,芮挺等提出了基于多層網(wǎng)格的深度神經(jīng)網(wǎng)絡(luò)對(duì)行人進(jìn)行檢測(cè),且相較于傳統(tǒng)方法有更高的識(shí)別率[11];Markus Braun等提出了一種利用大數(shù)據(jù)集提高目標(biāo)檢測(cè)準(zhǔn)確率的方法,并優(yōu)化了4種最先進(jìn)的深度學(xué)習(xí)方法作為新目標(biāo)檢測(cè)基準(zhǔn)的基線[12];LI J等提出了一種基于尺度感知的快速R-CNN行人檢測(cè)方法,設(shè)計(jì)了一個(gè)既能從本質(zhì)上捕捉大尺度和小尺度物體的特征,又能保持尺度不變性的CNN結(jié)構(gòu)[13];ZHOU C J等提出一種基于語義自關(guān)注卷積神經(jīng)網(wǎng)絡(luò)的行人檢測(cè)方法,利用一個(gè)多任務(wù)網(wǎng)絡(luò),從弱盒狀標(biāo)注的圖像數(shù)據(jù)集中聯(lián)合學(xué)習(xí)語義分割和行人檢測(cè)[14]。
本文針對(duì)復(fù)雜交通場(chǎng)景下小目標(biāo)行人難以分辨的問題,提出了基于多尺度感知的改進(jìn)Fast-RCNN模型方法,并利用Caltech行人數(shù)據(jù)集訓(xùn)練網(wǎng)絡(luò),最終行人識(shí)別準(zhǔn)確率為97.49%。
本實(shí)驗(yàn)數(shù)據(jù)來源于采用車載攝像頭拍攝的Caltech行人數(shù)據(jù)集,這是目前應(yīng)用較為廣泛的數(shù)據(jù)集之一。該數(shù)據(jù)集是總長約為10 h的視頻,其幀率為30幀/s,每幀圖像分辨率為640×480,如圖1所示。

圖1 部分Caltech數(shù)據(jù)集行人圖像
本文從Caltech數(shù)據(jù)集中選取600張行人圖像作為訓(xùn)練樣本,選取300張行人圖像作為測(cè)試樣本。由于原始Caltech數(shù)據(jù)集格式無法輸入網(wǎng)絡(luò),因此需將其轉(zhuǎn)換為VOC格式,具體步驟包括:(1)通過代碼將seq文件轉(zhuǎn)換為jpg文件;(2)將vbb文件轉(zhuǎn)化為二進(jìn)制格式;(3)將二進(jìn)制文件中的標(biāo)注框?qū)懗蒝OC格式的XML文件;(4)利用XML文件,生成train.txt,trainval.txt和test.txt等文件。
1.2.1 尺度感知權(quán)重的獲取
繼快速R-CNN方法在一般目標(biāo)檢測(cè)任務(wù)中獲得了出色的性能之后,本文提出一種基于尺度感知的Fast R-CNN模型,該模型將大尺度子網(wǎng)絡(luò)和小尺度子網(wǎng)絡(luò)集成到一個(gè)統(tǒng)一的體系結(jié)構(gòu)中,如圖2所示,利用早期層中的共享卷積濾波器來獲取不同尺度目標(biāo)的公共特征,即通過利用尺度感知權(quán)重,聯(lián)合學(xué)習(xí)大尺度和小尺度目標(biāo)的特征并推斷最終結(jié)果。

圖2 尺度感知權(quán)重計(jì)算
給定一幅輸入圖像,首先將其送入共享卷積層,然后將每個(gè)目標(biāo)建議框傳遞到兩個(gè)子網(wǎng)絡(luò)中,最后將兩個(gè)子網(wǎng)絡(luò)的結(jié)果加權(quán)組合,生成最終的檢測(cè)結(jié)果。根據(jù)目標(biāo)的高度自適應(yīng)計(jì)算不同子網(wǎng)絡(luò)的權(quán)重。直觀地說,對(duì)于大尺度子網(wǎng)絡(luò),高度較高的建議框的權(quán)重也較高,而對(duì)于小尺度子網(wǎng)絡(luò),高度較小的權(quán)重較高。這樣,可將尺度感知加權(quán)等效為大尺度子網(wǎng)和小尺度子網(wǎng)的軟激活,通過對(duì)兩個(gè)網(wǎng)絡(luò)的結(jié)果進(jìn)行加權(quán),生成最終的檢測(cè)結(jié)果。
1.2.2 改進(jìn)Fast-RCNN網(wǎng)絡(luò)原理及特點(diǎn)
基于多尺度感知的Fast-RCNN網(wǎng)絡(luò)結(jié)構(gòu)如圖3所示,首先通過卷積層和最大池層序列提取整個(gè)輸入圖像的特征,然后將其送入兩個(gè)子網(wǎng)絡(luò)。每個(gè)子網(wǎng)絡(luò)首先利用幾個(gè)卷積層來進(jìn)一步提取特定于尺度的特征。那么,一個(gè)RoI池層將生成的特征映射匯集到一個(gè)固定長度的特征向量中,然后執(zhí)行一系列完全連接的層,最后有兩個(gè)輸出層,以生成特定于比例的檢測(cè)結(jié)果。一個(gè)輸出k個(gè)對(duì)象類加上一個(gè)“背景”類的分類分?jǐn)?shù),另一個(gè)輸出細(xì)化每個(gè)k對(duì)象類的邊界框位置。最后,根據(jù)從對(duì)象建議高度計(jì)算的權(quán)重,將兩個(gè)子網(wǎng)絡(luò)的輸出加權(quán)在一起,以獲得最終結(jié)果。

圖3 基于多尺度感知的Fast-RCNN網(wǎng)絡(luò)結(jié)構(gòu)
本試驗(yàn)采用tensorflow1.3作為深度學(xué)習(xí)框架,并使用gpu加速訓(xùn)練。硬件配置為i7處理器;軟件環(huán)境為Win10系統(tǒng)、pycharm軟件、python3.7。
本文所使用的Fast-RCNN目標(biāo)檢測(cè)框架是由基礎(chǔ)的RCNN發(fā)展而來的。最傳統(tǒng)的目標(biāo)定位方法是通過滑動(dòng)窗口的方法將圖像分成若干子圖送入網(wǎng)絡(luò),但這一方法數(shù)據(jù)量過于巨大,訓(xùn)練時(shí)間過長。而RCNN是通過選擇性搜索(Selective Search,SS)產(chǎn)生候選區(qū)域并作為卷積神經(jīng)網(wǎng)絡(luò)的輸入,得出每一區(qū)域的特征向量,再通過傳統(tǒng)的支持向量機(jī)(Support Vector Machine,SVM)分類方法判斷候選區(qū)域種類。
較為經(jīng)典的卷積神經(jīng)網(wǎng)絡(luò)包括AlexNet、VggNet以及ResNet等,本文選取兩種典型的網(wǎng)絡(luò)VGG-16和ResNet-50進(jìn)行對(duì)比發(fā)現(xiàn),同一張圖像中,ResNet-50對(duì)于小目標(biāo)的行人識(shí)別準(zhǔn)確率較高,但誤識(shí)別率同樣較高;而VGG-16相較于ResNet-50在小目標(biāo)行人的識(shí)別上有所欠缺,但其對(duì)大目標(biāo)行人的識(shí)別準(zhǔn)確率較高??傮w而言,基于VGG-16和ResNet-50的Fast-RCNN目標(biāo)檢測(cè)方法識(shí)別準(zhǔn)確率較為相近,但VGG-16對(duì)于300張行人測(cè)試圖像這一網(wǎng)絡(luò)的準(zhǔn)確率略高于ResNet-50。
然而,在Fast-RCNN目標(biāo)檢測(cè)框架的基礎(chǔ)上增加尺度感知網(wǎng)絡(luò)后,行人識(shí)別準(zhǔn)確率明顯提高,并且基于ResNet-50的特征提取網(wǎng)絡(luò)明顯優(yōu)于VGG-16網(wǎng)絡(luò),其識(shí)別準(zhǔn)確率為97.49%,比未改進(jìn)前提高了4.36%。
為驗(yàn)證基于深度學(xué)習(xí)的行人檢測(cè)方法優(yōu)于傳統(tǒng)的機(jī)器學(xué)習(xí)識(shí)別算法,本文選擇了兩類典型的傳統(tǒng)分類方法(基于HOG特征的SVM識(shí)別方法和基于ICF特征的AdaBoost識(shí)別方法)與之做對(duì)比。傳統(tǒng)機(jī)器學(xué)習(xí)算法和深度學(xué)習(xí)算法最大的區(qū)別在于前者是通過人工選擇圖像特征,后者通過卷積神經(jīng)網(wǎng)絡(luò)自動(dòng)生成特征向量,而人為選取的特征往往因?yàn)橹饔^因素的影響而導(dǎo)致識(shí)別準(zhǔn)確率的下降。HOG特征提取的是行人的邊緣信息,利用邊緣的朝向和強(qiáng)度描述行人的外貌和姿勢(shì),且這一特征對(duì)小范圍的光照和空間變化不太敏感。ICF特征則結(jié)合了梯度直方圖和顏色通道,在邊緣特征的基礎(chǔ)上增強(qiáng)了對(duì)人體的表面特征的提取。利用這兩種方法識(shí)別行人圖像發(fā)現(xiàn),基于HOG特征的SVM方法對(duì)于識(shí)別輪廓清晰的行人效果較好,基于ICF特征的AdaBoost方法也是如此,但由于增加了行人顏色特征,因此識(shí)別準(zhǔn)確率更高。這兩種算法對(duì)于處理復(fù)雜背景的行人圖像效果不佳,其原因在于目標(biāo)和背景的交界處往往不明顯,因此整體的識(shí)別準(zhǔn)確率遠(yuǎn)不如基于深度學(xué)習(xí)的行人檢測(cè)方法。4種檢測(cè)方法的識(shí)別效果如圖4所示。

圖4 4種識(shí)別算法對(duì)交通場(chǎng)景下行人的檢測(cè)效果
本文針對(duì)復(fù)雜交通場(chǎng)景下傳統(tǒng)分類方法識(shí)別小目標(biāo)行人圖像效果不佳的問題,提出了基于多尺度感知的改進(jìn)Fast-RCNN模型。利用尺度感知網(wǎng)絡(luò)和深度殘差網(wǎng)絡(luò)(ResNet-50)識(shí)別小目標(biāo)行人。
這一方法實(shí)現(xiàn)了行人特征的自動(dòng)提取,改善了由于光照不均和背景復(fù)雜導(dǎo)致的誤識(shí)別問題以及小目標(biāo)行人的識(shí)別準(zhǔn)確率,避免了行人和背景圖像必須邊緣界線明顯的情況,使行人自動(dòng)識(shí)別技術(shù)具有更強(qiáng)的實(shí)際應(yīng)用價(jià)值。當(dāng)然,在實(shí)驗(yàn)中仍發(fā)現(xiàn)這一方法還存在一定問題,如:(1)當(dāng)圖中出現(xiàn)和人體形狀類似的物體時(shí),識(shí)別準(zhǔn)確率不夠高;(2)圖像精度提升導(dǎo)致圖像處理速度下降較快。后續(xù)還需要在圖像的識(shí)別效率上深入研究。