趙建國,曹朝輝,梁 杰
(鄭州大學(xué)機(jī)械工程學(xué)院,河南 鄭州 450000)
道路目標(biāo)檢測(cè)是一種在場(chǎng)景圖像中找出道路目標(biāo)的研究問題。隨著輔助駕駛和無人駕駛的發(fā)展,道路目標(biāo)的檢測(cè)表現(xiàn)出很大的發(fā)展?jié)摿?,在駕駛中,車輛對(duì)周圍目標(biāo)物體感知能力,能夠提高駕駛的安全性,它是現(xiàn)在道路交通研究的重要問題。
早期的目標(biāo)檢測(cè)的研究在于研究人員手工提取目標(biāo)特征[1]進(jìn)行組合,這種做法比較依賴研究人員的經(jīng)驗(yàn),模型缺乏泛化能力。近些年,隨著深度學(xué)習(xí)的發(fā)展,基于卷積神經(jīng)網(wǎng)絡(luò)的深度學(xué)習(xí)在圖像識(shí)別和檢測(cè)等都取得了顯著成就[2]。與傳統(tǒng)的算法相比,避免了對(duì)圖像目標(biāo)的手工提取特征,能夠提高模型的泛化能力。所以越來越多的研究員通過深度學(xué)習(xí)來解決道路目標(biāo)檢測(cè)問題。
從2012年某些科研人員ImageNet挑戰(zhàn)賽的表現(xiàn)點(diǎn)燃了深度學(xué)習(xí)的熱潮。隨后就被應(yīng)用到了目標(biāo)檢測(cè)上。文獻(xiàn)[3]的提出,取得了很好的效果,但是空間和時(shí)間的耗費(fèi)都很大。文獻(xiàn)[4]進(jìn)一步將提出Fast R-CNN,降低空間和時(shí)間的開銷,之后Ross Girshick又集成 RegionProposalNetwork(RPN)網(wǎng)絡(luò)提出了文獻(xiàn)[5],文獻(xiàn)[6]實(shí)現(xiàn)端對(duì)端,多任務(wù)學(xué)習(xí),檢測(cè)速度快,但是對(duì)小物體檢測(cè)的精度一般,隨后的SSD[7]的出現(xiàn)結(jié)合了Faster R-CNN固定框的思想和YOLO網(wǎng)格離散化的思想,增加了在多尺寸特征圖上映射特征的能力,增強(qiáng)了對(duì)小目標(biāo)的檢測(cè)能力。
主要解決車輛在行駛過程中通過行車記錄儀記錄的視頻進(jìn)行檢測(cè),主要檢測(cè)的目標(biāo)分為車輛、行人和騎行的人。采用深度學(xué)習(xí)來解決道路目標(biāo)檢測(cè)的問題,利用SSD網(wǎng)絡(luò)建立模型,通過訓(xùn)練集對(duì)模型進(jìn)行訓(xùn)練得到目標(biāo)模型,然后利用目標(biāo)模型對(duì)測(cè)試集進(jìn)行預(yù)測(cè),如圖1所示。
圖1 模型學(xué)習(xí)檢測(cè)流程Fig.1 Model Learning Detection Process
模型檢測(cè)方法是基于前饋卷積網(wǎng)絡(luò),分為兩個(gè)部分:基礎(chǔ)網(wǎng)絡(luò)和多尺寸特征圖檢測(cè),如圖2所示。首先為了增加數(shù)據(jù)多樣性,對(duì)原圖像進(jìn)行數(shù)據(jù)擴(kuò)增,擴(kuò)增方式[3]有原始圖像、隨機(jī)采樣一個(gè)圖像片段和采樣特定的圖像片段,然后調(diào)整圖像的尺寸為(300×300),最后以0.5的概率對(duì)圖像進(jìn)行水平翻轉(zhuǎn)?;A(chǔ)網(wǎng)絡(luò)部分主要是對(duì)數(shù)據(jù)擴(kuò)增后的尺寸為(300×300)的圖像特征提取,在其后添加不同尺寸的特征圖,對(duì)不同尺寸的特征圖進(jìn)行檢測(cè),得到對(duì)應(yīng)的不同大小目標(biāo)的檢測(cè)效果。
圖2 SSD架構(gòu)Fig.2 SSD Structure
2.1.1 基礎(chǔ)網(wǎng)絡(luò)
基礎(chǔ)網(wǎng)絡(luò)承載著對(duì)圖像的特征提取的功能,基礎(chǔ)網(wǎng)絡(luò)對(duì)特征的提取能力影響著多尺寸特征圖檢測(cè)的優(yōu)劣,常用的基礎(chǔ)網(wǎng)絡(luò)有VGG[8],GoogleNet[9]以及ResNet[10]等,也可以采用多網(wǎng)絡(luò)融合的方法進(jìn)行特征提取,采用VGG網(wǎng)絡(luò)結(jié)構(gòu)做特征提取,在其后添加不同尺寸的特征圖,這些特征圖的尺寸逐漸減小,以達(dá)到能檢測(cè)不同尺寸的效果。
2.1.2 多尺寸特征圖檢測(cè)
通過基礎(chǔ)網(wǎng)絡(luò)提取圖像目標(biāo)特征,在基礎(chǔ)網(wǎng)絡(luò)之后添加多張?zhí)卣鲌D,這些特征圖的尺寸不同,對(duì)這些特征圖做一個(gè)卷積濾波器得到目標(biāo)的坐標(biāo)值和目標(biāo)的類別,如圖2所示。例如:某一具有p個(gè)通道尺寸大小為m×n的特征圖,可以使用3×3×p的卷積核進(jìn)行卷積操作,得到一個(gè)默認(rèn)框?qū)Ω鱾€(gè)目標(biāo)類別的置信度和此默認(rèn)框的坐標(biāo)偏移值。運(yùn)用多個(gè)卷積核對(duì)m×n特征圖進(jìn)行多次卷積得到此特征圖在不同默認(rèn)框的各個(gè)類別的置信度和坐標(biāo)偏移值。在這里默認(rèn)框表示目標(biāo)在原圖所代表的區(qū)域大小。在這里由于數(shù)據(jù)特點(diǎn)是小目標(biāo)比較多,增加了對(duì)VGG網(wǎng)絡(luò)中的conv3層的特征圖的提取,來增強(qiáng)小目標(biāo)的檢測(cè)能力。最后再運(yùn)用非最大化抑制對(duì)默認(rèn)框進(jìn)行篩選得到最終的檢測(cè)結(jié)果。
模型的訓(xùn)練包括模型的訓(xùn)練步驟和訓(xùn)練過程中所默認(rèn)框的生成和匹配。
2.2.1 模型訓(xùn)練步驟
模型的訓(xùn)練分為2個(gè)階段:預(yù)訓(xùn)練階段和訓(xùn)練集訓(xùn)練階段。預(yù)訓(xùn)練階段首先用ImageNet數(shù)據(jù)集對(duì)VGG的卷積層進(jìn)行預(yù)訓(xùn)練,固定SSD模型中屬于VGG的卷積層,利用VOC2007數(shù)據(jù)集對(duì)剩余網(wǎng)絡(luò)進(jìn)行訓(xùn)練,最后對(duì)整個(gè)模型網(wǎng)絡(luò)進(jìn)行微調(diào)。在訓(xùn)練集訓(xùn)練階段,首先利用預(yù)訓(xùn)練階段所得到的參數(shù)進(jìn)行初始化網(wǎng)絡(luò),然后固定網(wǎng)絡(luò)卷積層,對(duì)檢測(cè)分類的參數(shù)進(jìn)行訓(xùn)練,然后在對(duì)整個(gè)網(wǎng)絡(luò)進(jìn)行微調(diào),最后得到目標(biāo)模型,模型訓(xùn)練過程,如圖3所示。之后可以用訓(xùn)練好的目標(biāo)模型對(duì)測(cè)試集進(jìn)行測(cè)試,得到測(cè)試集的檢測(cè)效果。
圖3 SSD模型訓(xùn)練過程Fig.3 Training Process of SSD Model
2.2.2 默認(rèn)框的生成
默認(rèn)框是依靠特征圖生成的,在卷積網(wǎng)絡(luò)部分通過網(wǎng)絡(luò)深度來減少特征圖的尺寸大小,獲取不同尺寸的特征圖用來做不同尺寸下的目標(biāo)檢測(cè),假設(shè)使用m張?zhí)卣鲌D做預(yù)測(cè)。每張?zhí)卣鲌D的默認(rèn)框的比例計(jì)算如下:
為了提高小目標(biāo)的檢測(cè)效果,令Smin=0.10,Smax=0.90,按照m的不同依次求出不同特征圖比例。然后對(duì)默認(rèn)框施加不同的寬高比,來增加默認(rèn)邊框的數(shù)量,表示為a增加的默認(rèn)框?qū)挾群透叨扔?jì)算方式,寬度為
2.2.3 默認(rèn)框的匹配
此次實(shí)驗(yàn)的把目標(biāo)劃分為3類,再加上一個(gè)背景,所有預(yù)測(cè)置信度為4類。在訓(xùn)練時(shí),首先我們把默認(rèn)框和真實(shí)框進(jìn)行匹配,計(jì)算IOU值,公式如下:
式中:S—框的面積。
把IOU大于0.5的默認(rèn)框定為正樣本,IOU小于0.5的作為負(fù)樣本。一個(gè)真實(shí)框可以對(duì)應(yīng)多個(gè)正樣本,以達(dá)到增加數(shù)據(jù)多樣性的效果。每一個(gè)默認(rèn)框采用Softmax方法求與目標(biāo)類別(這里為3個(gè)種類加上背景類為4類)的置信度。
2.2.4 目標(biāo)函數(shù)
目標(biāo)函數(shù)的計(jì)算分為兩部分,第一部分是默認(rèn)框的預(yù)測(cè)值與目標(biāo)類別的置信度的損失函數(shù),第二部分是默認(rèn)框微調(diào)后的預(yù)測(cè)框與真實(shí)框的位置損失。為了提高Softmax分類效果,我們可以采用交叉熵代價(jià)函數(shù)為置信度的損失函數(shù),定義如下:
第二部分位置損失,為了使目標(biāo)預(yù)測(cè)位置更加準(zhǔn)確,使用默認(rèn)框d微調(diào)后預(yù)測(cè)框l與真實(shí)框g之間的損失函數(shù)Smooth L1,公式如下:
式中:l—預(yù)測(cè)框;g—真實(shí)框;(cx,cy)—默認(rèn)框的中心;w—默認(rèn)
框的寬;h—默認(rèn)框的高。
總體的目標(biāo)函數(shù)為位置損失函數(shù)和置信度損失函數(shù)的加權(quán)和:
式中:α=0.5;N—默認(rèn)框的個(gè)數(shù)。
實(shí)驗(yàn)結(jié)果的目標(biāo)檢測(cè)評(píng)價(jià)標(biāo)準(zhǔn)采用精確率P(precision)與召回率 R(recall),定義如下:
根據(jù)模型對(duì)測(cè)試集的預(yù)測(cè)結(jié)果做出P-R曲線,求出各個(gè)目標(biāo)的平均準(zhǔn)確率AP,即P-R曲線下的面積,然后求出mAP表示不同種類的平均準(zhǔn)確率均值。
采用的是Tensorflow框架,采用Tesla K80的GPU加速計(jì)算,采集的數(shù)據(jù)集的統(tǒng)計(jì)信息,如表1所示。
通過實(shí)驗(yàn),對(duì)測(cè)試集進(jìn)行檢測(cè)典型的檢測(cè)結(jié)果,如圖4所示。
表1 訓(xùn)練集和測(cè)試集的統(tǒng)計(jì)信息Tab.1 Statistical Information of Training Set and Test Set
圖4 典型測(cè)試集檢測(cè)結(jié)果Fig.4 Typical Test Set Test Results
圖5 車輛的P-R圖Fig.5 The P-R Diagram of Vehicles
圖6 行人的P-R圖Fig.6 From Left to Tight,the P-R Diagram of Pedestrians
圖7 騎行的人的P-R圖Fig.7 The P-R Diagram of Riding Persons
表2 SSD模型AP分析圖Tab.2 SSD Model AP Analysis Diagram
對(duì)于目標(biāo)完整,背景干擾少的目標(biāo)識(shí)別率在0.9以上,而下雨天、光線弱、目標(biāo)和背景相近的和目標(biāo)比較小的識(shí)別率相對(duì)較低,如圖4所示。模型檢測(cè)conv3特征層和原圖像的尺寸增加一倍的檢測(cè)效果的P-R分析詳見圖,如圖5、圖6和圖7所示。檢測(cè)效果的AP分析表,如表2所示。由結(jié)果分析得知,車輛檢測(cè)的效果較好,騎行的人檢測(cè)效果一般,行人檢測(cè)較差,分析發(fā)現(xiàn),由于圖像來自于行車記錄儀錄制視頻圖像,在公路上騎行的人和行人都是靠路邊行走,距離記錄儀的距離較遠(yuǎn),而行人相對(duì)于騎行的人距離車輛更遠(yuǎn),所以行人和騎行的人在圖像上呈現(xiàn)的目標(biāo)很小,目標(biāo)越小越容易受到背景的干擾,目標(biāo)的特征丟失越多,另外行車記錄儀的目標(biāo)設(shè)備,設(shè)備質(zhì)量較差,大多數(shù)是關(guān)注于車輛周圍的環(huán)境和目標(biāo),對(duì)遠(yuǎn)距離的物體拍攝質(zhì)量比較差,在夜景中的拍攝效果更差,加大了識(shí)別的難度。增加原圖像的尺寸,使尺寸增加一倍,目標(biāo)檢測(cè)的mAP值增加了0.033,SSD模型增加conv3的特征圖的檢測(cè),目標(biāo)檢測(cè)的mAP值增加了0.049,增幅較大,說明在數(shù)據(jù)集中存在的小目標(biāo)較多,雖然增加了針對(duì)于小目標(biāo)的特征圖檢測(cè),但是效果仍然不理想,分析模型得知,越靠近原圖的特征圖所經(jīng)過的卷積層會(huì)越少,對(duì)圖像特征的提取能力越弱,所以騎行的人和行人的檢測(cè)效果比較差。
利用了深度學(xué)習(xí)來解決道路目標(biāo)的檢測(cè)問題,采用了SSD模型算法,利用模型的基礎(chǔ)網(wǎng)絡(luò)提取圖像特征,給網(wǎng)絡(luò)添加不同尺寸的特征圖做卷積濾波,得到圖像中目標(biāo)位置坐標(biāo)和目標(biāo)類別。避免了手工提取圖像特征,提高了道路目標(biāo)檢測(cè)的泛化能力。通過實(shí)驗(yàn)得出,與原網(wǎng)絡(luò)相比,這里的方案使模型目標(biāo)檢測(cè)的mAP值增加了0.082,模型對(duì)車輛檢測(cè)效果較好,對(duì)行人和騎行的人檢測(cè)效果一般。由于SSD模型的特點(diǎn),檢測(cè)速度快,但是對(duì)小目標(biāo)的檢測(cè)能力不強(qiáng),雖然對(duì)小目標(biāo)的檢測(cè)效果有所提升,但是效果仍然不盡人意。在保證檢測(cè)速度的前提下,提高對(duì)目標(biāo)的檢測(cè)能力仍然是下一步工作的重點(diǎn)。