楊志恒 桂林電子科技大學(xué)
行人檢測是目標(biāo)檢測的一個子類,主要利用計算機視覺技術(shù)判斷圖像或者視頻序列中行人存在與否并給予精確定位,即行人識別和標(biāo)定。隨著自主駕駛技術(shù)的飛速發(fā)展,快速高效的行人檢測算法成為一項越來越重要的任務(wù)。由于行人不是剛性的物體,具有姿勢多樣性和外觀多樣性,以及多變的背景環(huán)境,這都增加了行人的檢測難度?;谇叭说难芯炕A(chǔ),本文通過對現(xiàn)有的檢測算法分析對比,將深度學(xué)習(xí)單通道神經(jīng)網(wǎng)絡(luò)應(yīng)用于行人檢測,達到車載檢測的實時性和準(zhǔn)確性要求。
行人檢測對于人類而言,通過對視覺范圍內(nèi)的不同顏色模塊的感知很容易定位并分類出其中行人,但對于計算機而言,面對的是RGB像素矩陣,很難從視覺圖像中直接得到行人的抽象概念并定位其位置?,F(xiàn)有行人檢測算法大致分為兩種:基于圖像處理的傳統(tǒng)行人檢測和基于深度學(xué)習(xí)的行人檢測。
傳統(tǒng)的行人檢測一般使用滑動窗口的框架,主要包括三個步驟:提案候選區(qū)域;提取候選區(qū)域相關(guān)的視覺特征;利用分類器進行識別。梯度方向直方圖算子和VJ輪廓特征在麻省理工學(xué)院行人數(shù)據(jù)庫和INRIA數(shù)據(jù)庫取得很好的檢測結(jié)果,但是這些方法容易受到光線和目標(biāo)遮擋影響。多尺度形變部件模型(DPM)把物體看成多個組成部件(比如人的手、腿等),用部件間關(guān)系來描述物體可以很好的表達的非剛體特征,在人臉檢測、行人檢測等任務(wù)上取得了不錯的效果,但是DPM相對復(fù)雜,檢測速度也較慢。
基于深度學(xué)習(xí)的行人檢測大致也可分為兩種:
(1)基于區(qū)域提案的神經(jīng)網(wǎng)絡(luò)是一種將區(qū)域建議和卷積神經(jīng)網(wǎng)絡(luò)相結(jié)合的目標(biāo)檢測算法,比如RCNN, SPP-net, Fast RCNN, Faster RCNN, RFCN等,通常采用區(qū)域選擇或者區(qū)域提案網(wǎng)絡(luò)獲取感興區(qū)域,然后在每個提案區(qū)域上使用卷積神經(jīng)網(wǎng)路做分類得到分類類別和置信度。這種提案方法大大提升了行人檢測精度,但是檢測速度有待提升,較難滿足車輛行駛中的檢測要求。
(2)端到端的深度學(xué)習(xí)行人檢測采用使用單通道網(wǎng)絡(luò)架構(gòu),比如YOLO,SSD,YOLOv2[3]等,將行人定位和行人識別統(tǒng)一,一次性輸出行人的位置信息和行人的置信度,這樣大大提升的網(wǎng)絡(luò)的執(zhí)行效率,但是檢精度較低有待提升。
本文對基于深度學(xué)習(xí)的單通道架構(gòu)的卷積神經(jīng)網(wǎng)絡(luò)進行優(yōu)化算法。向卷積神經(jīng)網(wǎng)絡(luò)輸入任意大小的圖片,使用基于VGG的深度學(xué)習(xí)的骨干網(wǎng)絡(luò)進行特征提取,其中卷積層采用類似于GoogleNet網(wǎng)絡(luò)結(jié)構(gòu),在卷積層之間嵌入1*1的卷積核壓縮特征。在進行目標(biāo)檢測時,移除全連層,添加類似于ResNet的恒等映射,將最后一層卷積層前的高分辨率特征圖與原生的深層特征相連接,疊加相鄰特征到不同通道增加網(wǎng)絡(luò)細粒度特征。預(yù)測時借鑒Faster R-CNN的anchor思想,在卷積特征圖上進行滑窗采樣,特征圖的每個特征點和原圖的每個cell中心相對應(yīng),每個中心預(yù)測5中不同大小和比例的建議框,其中每個建議框采用相對偏移預(yù)測,預(yù)測五個參數(shù):(tx,ty,tw,th,to),分別對應(yīng)行人位置的包圍框左上角點(x,y)坐標(biāo)、寬、高和可信度,即同時預(yù)測行人和位置。
行人檢測網(wǎng)絡(luò)模型采用分批次多尺寸訓(xùn)練,進行不同分辨率的檢測。網(wǎng)絡(luò)只使用卷積層和池化層進行特征提取和檢測,這樣可以對輸入的圖片進行動態(tài)調(diào)整,使用網(wǎng)絡(luò)降采樣參數(shù)的倍數(shù)作為網(wǎng)絡(luò)輸入尺寸,每經(jīng)過一定批次訓(xùn)練,隨機選擇新的圖片尺寸,調(diào)整網(wǎng)絡(luò)到相應(yīng)的尺寸維度然后繼續(xù)訓(xùn)練。
實驗中采用Darknet-19模型,其具有19個卷積層和5個最大池化層,其骨干網(wǎng)絡(luò)類似于VGG深度神經(jīng)網(wǎng)絡(luò),其中卷積層采用3x3卷積核運算卷積,3x3卷積核之間嵌入1x1卷積核壓縮特征;池化層采用2x2采樣核采樣,并且每次池化采樣后通道數(shù)翻倍。
本文在INRIA行人數(shù)據(jù)集上進行訓(xùn)練測試。在訓(xùn)練過程中各超參數(shù)分別設(shè)置為:學(xué)習(xí)率0.0001,動量0.9,權(quán)重衰減值0.5。同時采用批次正則化穩(wěn)定模型訓(xùn)練。在測試中行人檢測算法準(zhǔn)確率達到98.69%,檢測速度達到50幀每秒(fps),達到車載檢測的實時性要求。
行人是安全智能駕駛的重要參與者,如何高效實時檢測行人是智能駕駛的熱點問題。本文通過對現(xiàn)有的行人檢測算法和深度學(xué)習(xí)研究分析,將深度學(xué)習(xí)自主學(xué)習(xí)特征的優(yōu)勢應(yīng)用于行人檢測:在原有的卷積神經(jīng)網(wǎng)絡(luò)檢測算法中,通過單通道網(wǎng)絡(luò)對輸入圖像進行提取特征分類識別,同時輸出行人的位置和置信度,大大減少了計算復(fù)雜度和檢測時間。最后,在INRIA 數(shù)據(jù)集上進一步驗證了該算法的可行性。
[1]Benenson R, Omran M, Hosang J, et al. Ten Years of Pedestrian Detection, What Have We Learned?[C]// European Conference on Computer Vision. Springer, Cham, 2014:613-627.
[2]Huang J, Guadarrama S, Murphy K, et al. Speed/Accuracy Trade-Offs for Modern Convolutional Object Detectors[J].2016:3296-3297.
[3]Redmon J, Farhadi A. YOLO9000: Better, Faster,Stronger[J].2016:6517-6525.