高廣鵬 趙 峰
(桂林電子科技大學(xué)計(jì)算機(jī)與信息安全學(xué)院 廣西 桂林 541004)
目標(biāo)檢測作為自動駕駛領(lǐng)域的關(guān)鍵技術(shù)之一,首要任務(wù)是能夠正確檢測出道路使用者。2018全球道路安全現(xiàn)狀報(bào)告統(tǒng)計(jì)[1]中指出,在全球范圍內(nèi),每年的VRU死亡人數(shù)占道路交通死亡總?cè)藬?shù)的26%。在現(xiàn)實(shí)道路中,復(fù)雜的背景環(huán)境,VRU的相互遮擋和尺度變化等均會對VRU的檢測造成影響,其中尺度變化對檢測性能影響最大,因此需要檢測器能夠正確檢測不同尺度的VRU。根據(jù)特征提取方式將VRU檢測方法分為傳統(tǒng)方法和深度學(xué)習(xí)方法。
Dalal等[2]使用方向梯度直方圖(Histogram of Oriented Gradients,HOG)提取行人邊緣梯度和強(qiáng)度特征,然后使用支持向量機(jī)(Support Vector Machine,SVM)判定候選區(qū)內(nèi)是否存在行人。然而HOG只保留了行人的梯度特征,丟失了大量的表觀信息。Dollar等[3]結(jié)合顏色通道、梯度幅值和梯度直方圖等10種特征描述行人,然后利用積分圖方法減少特征的計(jì)算時(shí)間,最終取得了很高的精度。為了解決行人遮擋問題,F(xiàn)elzenswalb等[4]提出多尺度可變形組件(Deformable Parts Model,DPM)對行人的不同部位進(jìn)行獨(dú)立建模。Yan等[5]通過剪枝、構(gòu)建查找表策略解決了DPM計(jì)算復(fù)雜、速度慢的缺點(diǎn)。騎車人檢測使用了類似的算法。Li等[6]使用HOG提取騎車人的局部特征,圖像金字塔采樣法提取不同尺度空間的全局特征檢測騎車人。Chen等[7]利用外觀和邊緣特征對夜間環(huán)境中的自行車和摩托車進(jìn)行檢測。Yang等[8]提出兩級多模態(tài)檢測方案檢測不同姿態(tài)的騎車人。Tian等[9]通過級聯(lián)多視角檢測器檢測不同視角下的騎車人。
傳統(tǒng)VRU檢測算法需要研究者們根據(jù)VRU特征手動設(shè)計(jì)相對應(yīng)的特征算子,不利于檢測復(fù)雜場景中的VRU檢測,而神經(jīng)網(wǎng)絡(luò)具有學(xué)習(xí)抽象特征的能力使其在檢測領(lǐng)域得到了廣泛的應(yīng)用。VRU檢測一般通過改造主流的檢測算法來實(shí)現(xiàn)。基于區(qū)域的檢測算法[11-16]首先在原始圖像上生成感興趣區(qū)域(Region Of Interest,ROI),然后利用神經(jīng)網(wǎng)絡(luò)對ROI進(jìn)行特征提取和分類。文獻(xiàn)[13]使用區(qū)域建議網(wǎng)絡(luò)(Region Proposal Network,RPN)將區(qū)域檢測算法的多個(gè)階段統(tǒng)一到一個(gè)卷積網(wǎng)絡(luò)中,實(shí)現(xiàn)了端到端的檢測,加快了檢測速度。He等[14]使用自上而下的特征融合網(wǎng)絡(luò)(Feature Pyramid Network,FPN)將高層的語義信息融合到每一個(gè)特征層中提升了小目標(biāo)的準(zhǔn)確度。基于區(qū)域的檢測算法雖然精度很高,但是很難達(dá)到實(shí)時(shí)檢測。基于回歸的檢測算法[17-21]丟棄了RPN過程,大幅提升了算法的檢測速度。YOLOV1[17]在原圖的每一個(gè)單元格上回歸輸出最后的預(yù)測位置和目標(biāo)所屬類別。YOLOV2[18]通過優(yōu)化網(wǎng)絡(luò)的訓(xùn)練過程,設(shè)置默認(rèn)框的方法解決了YOLOV1精度低的問題。YOLOV3[19]通過修改基礎(chǔ)網(wǎng)絡(luò)和使用特征融合提升YOLOV2的小目標(biāo)檢測精度。SSD[20]結(jié)合了區(qū)域檢測算法和YOLO算法的優(yōu)點(diǎn),使用多層特征圖檢測不同尺度物體。文獻(xiàn)[25]使用兩步回歸方式解決了基于回歸的檢測算法中正負(fù)樣本數(shù)不平衡的問題。
當(dāng)前針對行人和騎車人的檢測是使用兩個(gè)單獨(dú)的檢測器分別檢測,然而行人和騎車人作為重要的道路交通參與者,具有不同的行駛速度,受到的事故傷害程度也不盡相同。因此,需要一個(gè)檢測器將兩者統(tǒng)一到一個(gè)檢測框架中。然而,對于當(dāng)前研究缺少相應(yīng)的數(shù)據(jù)集,通過建立VRU數(shù)據(jù)集和使用改進(jìn)策略提升模型對不同尺度VRU的檢測能力。本文主要進(jìn)行以下工作:從現(xiàn)有的多個(gè)數(shù)據(jù)集中抽取行人和騎車人樣本建立VRU數(shù)據(jù)集;研究分析FPN特征融合方式會為底層目標(biāo)檢測引入高層的噪聲,并提出并行的局部特征金字塔結(jié)構(gòu)。該結(jié)構(gòu)在增強(qiáng)底層特征的同時(shí),減少高層噪聲對底層特征的干擾。研究發(fā)現(xiàn)SSD的默認(rèn)框不能涵蓋目標(biāo)的多個(gè)尺度,造成檢測率低。本文通過利用每個(gè)特征層的下采樣步長重新計(jì)算默認(rèn)框的尺度,使默認(rèn)框能夠匹配更多尺度的VRU,再使用兩階段回歸方法平衡正負(fù)樣本數(shù)。與基礎(chǔ)網(wǎng)絡(luò)相比,該網(wǎng)絡(luò)的mAP提升了7%,檢測速度滿足實(shí)時(shí)性要求。
SSD是一個(gè)卷積神經(jīng)網(wǎng)絡(luò)檢測模型,特征圖從下而上依次減小,結(jié)構(gòu)如圖1所示。

圖1 SSD網(wǎng)絡(luò)結(jié)構(gòu)
模型前端為特征提取網(wǎng)絡(luò),由基礎(chǔ)卷積層和輔助卷積層組成。后端為檢測網(wǎng)絡(luò),由特征提取網(wǎng)絡(luò)中的C4_3、C7、C8_2、C9_2、C10_2、C11_2特征層組成。模型對檢測網(wǎng)絡(luò)中不同特征層做不同尺度的特征映射來預(yù)測不同尺度的目標(biāo)。用于檢測的每個(gè)特征層都與一組默認(rèn)框綁定,生成一系列固定尺度的預(yù)測集合,集合中的每一個(gè)元素包括預(yù)測框的4個(gè)偏移量和分類類別的得分。若檢測網(wǎng)絡(luò)中某一個(gè)特征層的大小為w×h,那么在該層會有k×w×h×(c+4)個(gè)輸出,k表示特征圖中每個(gè)單元格綁定的默認(rèn)框個(gè)數(shù),c表示分類類別。SSD利用式(1)為每層特征圖生成相對應(yīng)尺度的默認(rèn)框。
(1)
式中:最小尺度smin預(yù)設(shè)為0.2;最大尺度smax預(yù)設(shè)為0.9;m為6;sk表示第k層的特征圖的尺度。
并行局部特征金字塔網(wǎng)絡(luò)結(jié)構(gòu)如圖2所示。首先通過基礎(chǔ)網(wǎng)絡(luò)層提取圖像的VRU特征,對提取的特征在第一階段檢測層中進(jìn)行回歸和分類,根據(jù)回歸的結(jié)果粗調(diào)默認(rèn)框。然后通過并行局部特征金字塔結(jié)構(gòu)加強(qiáng)已經(jīng)提取的VRU特征作為第二階段檢測層的輸入,最后使用第二階段檢測層的結(jié)果精調(diào)已經(jīng)粗調(diào)過的默認(rèn)框作為最終的檢測結(jié)果。

圖2 并行局部特征金字塔網(wǎng)絡(luò)結(jié)構(gòu)
1)基礎(chǔ)網(wǎng)絡(luò)層。與SSD大致相同,將VGG16的池化層pool5、全接連層fc6、fc7分別轉(zhuǎn)換為3×3卷積層、3×3卷積層C6和1×1卷積層C7,并刪除最后的dropout層和分類層。不同的地方在于,SSD使用6層特征層進(jìn)行最后的預(yù)測,但由于SSD網(wǎng)絡(luò)最后一層的特征圖太小,包含的VRU特征信息較少,因此本網(wǎng)絡(luò)只用SSD的前五個(gè)特征層。
2)特征融合層。文獻(xiàn)[14,26]通過FPN結(jié)構(gòu)將高層的語義信息結(jié)合到每一個(gè)特征尺度中來加強(qiáng)底層特征,提升了模型的檢測能力。這些模型使用的FPN結(jié)構(gòu)都是從最頂層開始融合逐層特征,然而并不是所有的頂層信息都對底層的小尺度VRU檢測有幫助。首先,小尺度VRU和大尺度VRU在視覺上具有不同的紋理結(jié)構(gòu),而由于遮擋、光線等外在環(huán)境的影響,所展現(xiàn)出的視覺效果更是不同,因此直接利用所有高層的語義信息去加強(qiáng)不同尺度的VRU特征是非常粗魯?shù)摹F浯危瑢τ谛〕叨萔RU的檢測需要更多的紋理信息,高層特征層中已經(jīng)幾乎不包含紋理信息,使用全部高層信息加強(qiáng)底層特征時(shí)會為小尺度VRU引入額外的高層噪聲,影響小尺度VRU檢測。因此本文使用并行局部特征金字塔結(jié)構(gòu),即多個(gè)并列的PFFM模塊如圖3所示。

圖3 特征融合
對于當(dāng)前輸出層,只融合相鄰上兩層間的特征,這樣的特征融合方式不僅避免為底層特征融合過多的高層抽象信息又能使用高層信息加強(qiáng)底層特征。對于PFFM3中的p5和p4層,由于已經(jīng)是最頂層的兩層特征,所以對于p5層沒有融合其他層特征,p4層只融合p5層的特征信息。
STM模塊是基礎(chǔ)網(wǎng)絡(luò)層和特征融合層間信息的轉(zhuǎn)換模塊。圖4由基本的1×1、3×3卷積、ReLU激活函數(shù)構(gòu)成。

圖4 STM模塊
為使相鄰層的特征能夠融合,PFFM模塊在相鄰的特征層間使用1×1卷積幫助交換通道間信息和使用上采樣層將高層小分辨率的特征圖擴(kuò)展到與底層特征圖的大小相同,方便相鄰特征層之間的信息相加融合,結(jié)構(gòu)如圖5所示。

圖5 PFFM模塊
模型通過在不同特征層上設(shè)置不同尺度的默認(rèn)框來有效地處理不同尺度的目標(biāo)。根據(jù)文獻(xiàn)[27]每層特征圖對應(yīng)著不同的理論感受野,然而在理論感受野的范圍內(nèi)只有一部分值影響最后結(jié)果,即有效感受野。因此默認(rèn)框的設(shè)置應(yīng)與有效感受野匹配。文獻(xiàn)[28]根據(jù)有效感受野和4倍等間隔原則為人臉檢測設(shè)計(jì)默認(rèn)框,保證不同尺度的默認(rèn)框在圖像上具有相同的平鋪密度和足夠大的有效感受野包含周圍環(huán)境信息,比如頭發(fā)、肩膀等輔助人臉檢測。
1)默認(rèn)框的尺度。SSD默認(rèn)框的最小尺度為60,不能匹配小尺度的VRU。受文獻(xiàn)[28]的啟發(fā),現(xiàn)實(shí)環(huán)境中,VRU周圍有大量的背景干擾物,對VRU的檢測起不了輔助作用,因此為了減少背景對VRU檢測的影響,在下采樣步長和默認(rèn)框的尺度間建立線性映射關(guān)系尋找合適VRU的有效感受野:
sscale=k×sstep
(2)
式中:sstep表示步長;sscale為默認(rèn)框的尺度;k為常數(shù)。
2)默認(rèn)框的寬高比。在同一水平面中,行人和騎車人展現(xiàn)出不同的姿態(tài)。根據(jù)行人和騎車人在不同角度下巨大的姿態(tài)差異分別設(shè)定不同的寬高比如圖6所示。對于行人,在0度角時(shí),視角與行人前進(jìn)方向垂直,寬高比接近1∶2。在90度角時(shí),視角與行人前進(jìn)方向平行,行人偏細(xì)長,寬高比近似為1∶3。同理,對騎車人,根據(jù)0、45、90度角分別設(shè)置為1∶1、1∶2、1∶3的寬高比。因此數(shù)據(jù)集的默認(rèn)框的寬高比分別為1∶1、1∶2、1∶3,如表1所示。

圖6 行人和騎車人不同角度對應(yīng)的不同姿態(tài)

表1 默認(rèn)框的設(shè)置
基于回歸的檢測算法相比基于區(qū)域的檢測算法沒有RPN操作,會產(chǎn)生大量的負(fù)默認(rèn)框。本文借鑒文獻(xiàn)[25]的方法,根據(jù)第一階段檢測層的回歸結(jié)果粗調(diào)初始的默認(rèn)框,然后根據(jù)第二階段檢測層的回歸結(jié)果精調(diào)在第一階段粗調(diào)過的正默認(rèn)框作為最終的預(yù)測邊框。為了平衡正負(fù)樣本個(gè)數(shù),在第一階段檢測層中對VRU進(jìn)行二分類,通過設(shè)置閾值,將分類得分小于閾值的默認(rèn)框標(biāo)記為負(fù)默認(rèn)框,反之,標(biāo)記為正默認(rèn)框。負(fù)的默認(rèn)框?qū)⒉粎⑴c第二階段的邊框回歸。最后在第二階段檢測層中對檢測目標(biāo)進(jìn)行實(shí)際的分類預(yù)測。模型的兩階段損失函數(shù)為:


(3)
式中:Lb表示對數(shù)損失函數(shù);Lr為L1平滑損失函數(shù);Lm為Softmax損失函數(shù)。具體的函數(shù)表達(dá)為式(4)-式(6)。
(4)

(5)
(6)

(1)將SSD的輸入圖像尺寸從300 提升到320,避免網(wǎng)絡(luò)在淺層特征圖上的近似計(jì)算。
(2)數(shù)據(jù)預(yù)處理時(shí)使用本數(shù)據(jù)集的RGB均值而不是ImageNet數(shù)據(jù)集的RGB均值。
(3)在C4_3層使用歸一化處理。
(4)對前兩輪迭代使用gradual warmup預(yù)熱減輕損失波動。
(5)對數(shù)據(jù)做水平翻轉(zhuǎn),隨機(jī)裁剪,顏色扭曲增強(qiáng)處理。
(6)使用VGG16預(yù)訓(xùn)練權(quán)值初始化主干網(wǎng)絡(luò),Kaiming方式初始化其余卷積層。使用隨機(jī)梯度下降,動量系數(shù)為0.9,權(quán)重衰減系數(shù)為0.000 5,批次為32,初始學(xué)習(xí)率為0.002,衰減系數(shù)為0.1,重疊率為0.5,迭代250輪,學(xué)習(xí)率衰減區(qū)間為[2,140,220,250]。
實(shí)驗(yàn)使用Ubuntu16.04.64位操作系統(tǒng),顯卡Tesla p100,Pytorch框架。
研究發(fā)現(xiàn),現(xiàn)存的行人數(shù)據(jù)集有很多,對于騎車人樣本只在一些數(shù)據(jù)集中少量存在,不足以用于檢測。為了能夠?qū)ΜF(xiàn)實(shí)環(huán)境中行人和騎車人檢測,通過從現(xiàn)有的數(shù)據(jù)集中抽取相關(guān)檢測樣本構(gòu)建數(shù)據(jù)集。數(shù)據(jù)來自于BDD100k[23]、KITTI[22]、Tsinghua-Daimler Cyclist Benchmark(TDCB)[10]和Cityscapes[24]4個(gè)數(shù)據(jù)集。
選取KITTI訓(xùn)練集中全部的行人和騎車人樣本,圖片大小為1 242×375。BDD100K中包含行人的圖片數(shù)量遠(yuǎn)大于騎車人,對僅包含行人的圖片進(jìn)行欠采樣使與騎車人的圖片數(shù)量保持均衡,圖片為1 280×720。抽取TDCB和Cityscapes中全部的行人和騎車人樣本,圖片大小為2 048×1 024。TDCB和Cityscapes圖片的尺寸與另兩個(gè)數(shù)據(jù)集圖片相比過大,對圖片按寬度1 024裁剪和過濾掉不包含目標(biāo)類別的圖片。為了增加騎車人樣本的數(shù)據(jù)量,從TDCB的訓(xùn)練集中篩選包含騎車人的圖片,經(jīng)裁剪過濾處理保留包含目標(biāo)類別圖片。最后每個(gè)數(shù)據(jù)集中抽取的圖片數(shù)量如表2所示。

表2 每個(gè)數(shù)據(jù)集抽取圖片的數(shù)量 單位:幅
對每一個(gè)數(shù)據(jù)集都按照6∶4的比例劃分訓(xùn)練集與測試集。最后合并四個(gè)數(shù)據(jù)集的訓(xùn)練集和測試集,具體劃分如表3所示。

表3 數(shù)據(jù)集劃分
使用mAP評估模型,值越大,檢測性能越好。使用PR(Precision-Recall)曲線下的面積直觀評估模型中每個(gè)類別的性能,面積越大性能越好。使用FPS (Frame per Second)度量模型的檢測速度。
1)默認(rèn)框的實(shí)驗(yàn)對比。在上述的數(shù)據(jù)集中通過5組實(shí)驗(yàn)對默認(rèn)框的設(shè)計(jì)策略進(jìn)行對比,5組實(shí)驗(yàn)輸入圖片都為300×300,使用6個(gè)檢測層,實(shí)驗(yàn)結(jié)果如圖7所示。第一組為基準(zhǔn)網(wǎng)絡(luò)SSD,其余4組實(shí)驗(yàn)只有默認(rèn)框常數(shù)k取值不同,其余參數(shù)設(shè)置均相同,常數(shù)k分別取2、2.5、3、3.5。后四組實(shí)驗(yàn)與第一組比較mAP分別增長1%、2.5%、2.1%、0.2%,由于SSD的默認(rèn)框最小尺度為60,不能很好地匹配小尺度的VRU,所以檢測結(jié)果相比其余四組最低,證明新的默認(rèn)框策略要優(yōu)于SSD。后四組實(shí)驗(yàn)對比發(fā)現(xiàn),當(dāng)k取2.5時(shí)的結(jié)果相比k取2時(shí)上漲了1.5%,因?yàn)閗取2時(shí)默認(rèn)框比較集中檢測小的VRU,而忽略了大尺度的VRU。k取3.5時(shí)相比k取2時(shí)mAP下降了2.3%,因?yàn)閗取3.5時(shí),默認(rèn)框的最大尺度已經(jīng)超過了輸入圖像的分辨率且默認(rèn)框的尺度設(shè)置整體偏向于大的VRU,而忽略小尺度的VRU。當(dāng)k取3時(shí)與k取2.5時(shí)結(jié)果相差不大,只有0.4%的變化。

圖7 不同默認(rèn)框策略下mAP對比曲線
圖8表示上述每組試驗(yàn)中每一個(gè)類別對應(yīng)的PR曲線,k取2.5時(shí),行人和騎車人類別PR曲線下的面積最大,結(jié)果最優(yōu)。

圖8 不同默認(rèn)框策略下各類別的PR曲線
2)特征融合的實(shí)驗(yàn)對比。表4中第三行和第四行兩組實(shí)驗(yàn)輸入圖片為320×320,k取2.5,第三行使用5個(gè)檢測層,第四行使用6個(gè)檢測層,兩組實(shí)驗(yàn)結(jié)果相差無幾。因此在下面的4組實(shí)驗(yàn)中均使用5個(gè)檢測層,兩步回歸策略,輸入圖片大小為320×320。通過實(shí)驗(yàn)對比驗(yàn)證本文特征融合的有效性。第一組實(shí)驗(yàn)使用FPN結(jié)構(gòu)的特征融合方式,剩余三組使用本文特征融合方式。第二組實(shí)驗(yàn)PFFM_connect_2使用4個(gè)PFFM模塊,每個(gè)PFFM模塊對2層特征層融合。第三組實(shí)驗(yàn)PFFM_connect_3使用3個(gè)PFFM模塊,每個(gè)PFFM模塊對3層特征層融合。第四組實(shí)驗(yàn)PFFM_connect_4使用2個(gè)PFFM模塊,每個(gè)PFFM模塊對4層特征層融合。結(jié)果如圖9所示,后3組實(shí)驗(yàn)相比第一組的mAP分別提升了0.3%、0.6%、0.4%,證明此融合方式的有效性。后3組實(shí)驗(yàn)結(jié)果對比發(fā)現(xiàn),PFFM_connect_3實(shí)驗(yàn)結(jié)果最優(yōu)為0.826。PFFM_connect_4的mAP開始下降低是因?yàn)榈讓犹卣鲗尤谌肓颂喔邔訜o用信息,引入了噪聲,而PFFM_connect_2的mAP低于PFFM_connect_3的原因是為當(dāng)前的特征層融入了較少的高層語義信息。

表4 輸入尺寸和RGB實(shí)驗(yàn)mAP對比

圖9 不同特征融合方式下mAP對比曲線
3)優(yōu)化策略的實(shí)驗(yàn)。表4所示的四組實(shí)驗(yàn)中,第一組實(shí)驗(yàn)輸入尺寸為300,參數(shù)k取2.5,使用6個(gè)檢測層,使用ImageNet數(shù)據(jù)集的RGB值。第二組實(shí)驗(yàn)相比第一組實(shí)驗(yàn)只是將輸入圖像尺寸從300提升至320,用于抵消模型下采樣時(shí)近似計(jì)算帶來的回歸誤差,兩組實(shí)驗(yàn)結(jié)果對比可知mAP提升了0.4%。第二組實(shí)驗(yàn)和第四組實(shí)驗(yàn)的配置只是使用的RGB值不相同外,其余配置均相同。第二組實(shí)驗(yàn)使用ImageNet數(shù)據(jù)集的均值,而第四組實(shí)驗(yàn)使用本論文中數(shù)據(jù)集的RGB均值,兩組實(shí)驗(yàn)對比發(fā)現(xiàn),模型對于RGB的使用不太敏感。
4)消融實(shí)驗(yàn)。消融實(shí)驗(yàn)的結(jié)果對比如表5所示。常數(shù)k取值為2.5時(shí)的默認(rèn)框能夠更好地匹配不同尺度的VRU,結(jié)果相比SSD的mAP上漲了2.5%。將輸入圖片的尺寸提升至320和使用本論文數(shù)據(jù)集的RGB均值時(shí),與SSD的mAP相比增長了2.9%。最后使用新的特征融合方式PFFM時(shí),mAP增長至0.826。

表5 消融實(shí)驗(yàn)的mAP變化
由圖10可知,每一步的實(shí)驗(yàn)改進(jìn),行人和騎車人PR曲線下的面積都有較大的增長。

圖10 消融實(shí)驗(yàn)中各類別PR曲線
使用RFBNet[29]、SSD[20]、refineDet[25]、Faster RCNN[13]與本文算法對比。結(jié)果如表6所示,本文算法檢測VRU的mAP最高為0.826,檢測速度與SSD也接近。

表6 對比實(shí)驗(yàn)的mAP
在PR曲線中,對于每一個(gè)分類,本文的算法較其他方法相比,也有較大的優(yōu)勢。

圖11 不同算法中各類別對應(yīng)的PR曲線
本文通過建立VRU檢測數(shù)據(jù)集并提出并行的局部特征金字塔網(wǎng)絡(luò)。以SSD網(wǎng)絡(luò)為基礎(chǔ),通過增大SSD模型的輸入圖像分辨率來抵消下采樣時(shí)的近似計(jì)算,重新設(shè)計(jì)默認(rèn)框的策略使模型適合VRU的檢測,使用并行的局部特征金字塔融合方式。在增強(qiáng)底層特征的時(shí)候,不引入高層的噪聲,極大地提升了網(wǎng)絡(luò)對VRU的檢測能力。但是,此模型對遮擋和密集環(huán)境中的行人和騎車人的檢測能力有待提高,下一步將遮擋問題作為研究的重點(diǎn)。