李經(jīng)宇,楊 靜,孔 斌,王 燦,張 露
(1.中國科學(xué)院 合肥物質(zhì)科學(xué)研究院智能機(jī)械研究所,安徽 合肥230031;2.中國科學(xué)技術(shù)大學(xué),安徽 合肥230026;3.安徽省智能駕駛技術(shù)及應(yīng)用工程實(shí)驗(yàn)室,安徽 合肥230031;4.合肥學(xué)院,安徽 合肥230601)
隨著城市的發(fā)展和汽車數(shù)量的快速增長,交通場景越來越多樣,行車環(huán)境也越來越復(fù)雜,這帶來了一系列交通擁堵以及道路行車安全問題,無人駕駛和深度學(xué)習(xí)發(fā)展為解決這些問題提供了新的思路。通過攝像頭檢測車輛和行人的位置,無人駕駛系統(tǒng)可以根據(jù)這些信息控制行車速度并且提前做出預(yù)判,能有效減少事故發(fā)生的幾率。因此,能夠高效準(zhǔn)確檢測出道路場景信息尤為重要。
由于開放部署環(huán)境的多樣性,對智能駕駛平臺上的場景自動(dòng)分析提出了更高的要求,給目標(biāo)檢測算法帶來了許多新的挑戰(zhàn)。這些挑戰(zhàn)主要包括:如何處理智能駕駛場景中物體視覺外觀的各種變化。如光照、視野、小尺寸和尺度變化[1]。
基于傳統(tǒng)機(jī)器學(xué)習(xí)和手工特征的目標(biāo)檢測方法在處理這些變化時(shí)容易失敗。解決這些挑戰(zhàn)的一種有競爭力的方法是基于深度學(xué)習(xí)技術(shù)的對象檢測器,近年來得到了廣泛的應(yīng)用[2-3]。
隨著深度學(xué)習(xí)的發(fā)展,多種基于深度學(xué)習(xí)的目標(biāo)檢測方法被提出。目前廣泛使用的基于深度學(xué)習(xí)的目標(biāo)檢測方法可分為兩類。第一類是兩 階 段 目 標(biāo) 檢 測 方 法,如Fast R-CNN[4]、Faster R-CNN[5]等。第二類是一級目標(biāo)檢測算法,如SSD[6],YOLO[7],YOLO 9000[8],YOLOv3[9]不 需要先生成候選目標(biāo),這些方法直接通過網(wǎng)絡(luò)預(yù)測目標(biāo)的位置和類別。因此,一級目標(biāo)檢測方法具有更快的檢測速度。
具體來說,YOLO深度學(xué)習(xí)目標(biāo)檢測器在實(shí)際應(yīng)用中被廣泛使用[10-12]。因?yàn)槠湓跈z測精度和速度兩方面具有較好的平衡性。盡管如此,其網(wǎng)絡(luò)精度仍存在很大的改進(jìn)空間以提高實(shí)際問題中目標(biāo)檢測的準(zhǔn)確率[13-16]。這也成為了我們迫切需要解決的問題。
本文提出了基于注意力機(jī)制的多尺度車輛及行人檢測算法,具體來說,本文的主要貢獻(xiàn)如下:
(1)為了更全面地學(xué)習(xí)多尺度目標(biāo)特征,提出了一種改進(jìn)的空間金字塔池化方法,在同一卷積層中收集并拼接不同尺度的局部區(qū)域特征。
(2)進(jìn)一步加強(qiáng)特征金字塔的結(jié)構(gòu),縮短了高低層特征融合的路徑,構(gòu)造了YOLOv3-SPP+-PAN網(wǎng)絡(luò)。
(3)基于注意力機(jī)制構(gòu)建了更高效的目標(biāo)檢測器SE-YOLOv3-SPP+-PAN。
YOLO目標(biāo)檢測方法將輸入圖像劃分為S×S網(wǎng)格,每個(gè)網(wǎng)格預(yù)測K個(gè)包圍框,以及包圍框包含對象的置信度真值Pr(Object)?IoUtruthpred和對目標(biāo)屬于C類的條件概率Pr(Classi|Object);在這里,IoUtruthpred是預(yù)測值和真值相結(jié)合的交集。因此,每個(gè)包圍框特定類的置信度為:
公式(1)表示預(yù)測框與真值之間的重合度以及對象屬于每個(gè)類的概率。
YOLOv3在目標(biāo)檢測精度上對YOLO進(jìn)行了改進(jìn)。首先,YOLOv3采用骨干網(wǎng)絡(luò)Darknet-53作為特征提取器。其次,YOLOv3遵循特征金字塔網(wǎng)絡(luò)的思想,在三種不同的尺度上預(yù)測邊界盒。在三個(gè)不同尺度的特征圖上分別建立三個(gè)檢測頭,負(fù)責(zé)檢測不同尺度的目標(biāo)。檢測頭中的每個(gè)網(wǎng)格被分配了三個(gè)不同的錨,從而預(yù)測由4個(gè)邊界框偏移、1個(gè)目標(biāo)和C個(gè)類別預(yù)測組成的三個(gè)檢測。檢測頭的最終結(jié)果張量為N×N×(3×(4+1+C)),其中N×N表示最后卷積特征圖的空間大小。
本文以YOLOv3為基礎(chǔ)網(wǎng)絡(luò),針對無人駕駛實(shí)際場景中目標(biāo)檢測所面臨的問題,對網(wǎng)絡(luò)進(jìn)行改進(jìn)優(yōu)化。
為了應(yīng)對無人駕駛場景中尺度變化大問題。在此,本文通過融合不同尺度特征圖和不同感受野的信息的方法,提高多尺度檢測的準(zhǔn)確性。何凱明[17]等人提出了空間金字塔池化(Spatial Pyr?amid Pooling,SPP)方法。將任意大小的特征映射集合到固定大小的特征向量中,CNN(卷積神經(jīng)網(wǎng)絡(luò))不僅不需要固定輸入圖像的大小,而且通過融合多尺度特征,對多尺度目標(biāo)的檢測具有很強(qiáng)的魯棒性。然而,此方法并沒有充分利用同一卷積層不同尺度上的局部區(qū)域特征,仍然難以準(zhǔn)確地檢測出具有豐富局部區(qū)域特征的小目標(biāo)。
YOLOv3的多尺度預(yù)測側(cè)重于將多尺度卷積層的全局特征串聯(lián)起來,但其忽略了同一卷積層上多尺度局部特征的融合。因此,本文的設(shè)計(jì)中,將SPP模塊引入到Y(jié)OLOv3中,對多尺度局部區(qū)域特征進(jìn)行池化合并,然后將全局和局部多尺度特征結(jié)合起來提高目標(biāo)檢測的精度。
為了進(jìn)一步豐富深度特征,本文將改進(jìn)的空間金字塔池模塊稱為SPP+模塊,如圖1所示。改進(jìn)的SPP+模塊由4個(gè)大小分別為5×5,7×7,9×9和13×13的并行最大池化層組成。針對無人駕駛場景車輛及行人檢測實(shí)驗(yàn),我們在YO?LOv3第一個(gè)檢測頭前的第5和第6卷積層之間集成了一個(gè)改進(jìn)的SPP+模塊,以形成YOLOv3-SPP+檢測網(wǎng)絡(luò)。改進(jìn)的SPP模塊能夠提取具有不同感受野的多尺度深度特征,并通過在特征映射的通道維度上拼接來融合。在同一層中獲得的多尺度特征有望進(jìn)一步提高YOLOv3的檢測精度,且計(jì)算量小。
圖1 SPP+模塊結(jié)構(gòu)圖Fig.1 SPP+block structure diagram
在3.1節(jié)已有YOLOv3-SPP+網(wǎng)絡(luò)基礎(chǔ)上,為了縮短網(wǎng)絡(luò)通道間的信息融合,提高智能駕駛場景車輛行人小目標(biāo)檢測,進(jìn)一步優(yōu)化網(wǎng)絡(luò)。
對于卷積神經(jīng)網(wǎng)絡(luò)而言,不同深度對應(yīng)著不同層次的語義特征,淺層網(wǎng)絡(luò)分辨率高,學(xué)習(xí)更多細(xì)節(jié)特征;深層網(wǎng)絡(luò)分辨率低,學(xué)習(xí)更多語義特征,丟失了位置信息,導(dǎo)致小目標(biāo)檢測性能下降。特征金字塔網(wǎng)絡(luò)(Feature Pyramid Net?works,FPN)[18]提出不同分辨率特征融合的方式,即每個(gè)分辨率的特征圖和上采樣的低分辨率特征相加,使得不同層次的特征增強(qiáng)。FPN結(jié)構(gòu)如圖2所示。
圖2 FPN模塊結(jié)構(gòu)圖Fig.2 FPN block structure diagram
FPN的高層級特征與低層級別特征之間路徑較長(如圖3(a)所示紅色虛線所示),增加了訪問準(zhǔn)確定位信息的難度。為了縮短信息路徑和用低層級的準(zhǔn)確定位信息增強(qiáng)特征金字塔,PAN(Path Aggregation Network)[19]在FPN基 礎(chǔ) 上 創(chuàng)建了自下而上的路徑增強(qiáng)(如圖3(b)所示)。這種路徑增強(qiáng)方式用于縮短信息路徑,利用低層特征中存儲(chǔ)的精確定位信號,提升特征金字塔架構(gòu)。具體來說,對于FPN結(jié)構(gòu),輸入圖像到得到輸出P6特征需要經(jīng)過較長信息流動(dòng)(如圖3(a)紅色虛線所示),其中有Darknet-53很多卷積層。而對于FPN結(jié)構(gòu),可直接由P4復(fù)制得到N4特征,N 4特征僅僅需要經(jīng)過幾個(gè)降維卷積(如圖3(a)綠色虛線所示)得到P6特征。PAN結(jié)構(gòu)如圖3所示。
圖3 PAN模塊結(jié)構(gòu)圖Fig.3 PAN block structure diagram
在此,本文在YOLOv3-SPP+網(wǎng)絡(luò)基礎(chǔ)上嵌入了PAN模塊來構(gòu)成YOLOv3-SPP+-PAN網(wǎng)絡(luò),如圖3(a)所示?!?,×4,×8,×16,×32分別表示主干網(wǎng)絡(luò)Darknet53的2倍,4倍,8倍,16倍與32倍下采樣。網(wǎng)絡(luò)結(jié)構(gòu)圖3中的紅色虛線為原FPN特征融合路徑,綠色虛線為PAN特征融合路徑,綠色虛線跨越更少的卷積層。YO?LOv3原本三個(gè)檢測頭為圖3中的P4,P5,P6。經(jīng)過PAN網(wǎng)絡(luò)的改進(jìn),YOLOv3-SPP+-PAN網(wǎng)絡(luò)輸出為綠色虛線N4檢測頭1,N5檢測頭2與N 6檢測頭3。分別用于檢測輸出大目標(biāo),中目標(biāo)和小目標(biāo)。構(gòu)建該新支路的優(yōu)勢在于縮短了底層尺寸大的特征到高層尺寸小的特征之間的距離,讓特征融合更加有效。
在實(shí)際車輛行人檢測場景中,現(xiàn)有的網(wǎng)絡(luò)往往不能關(guān)注車輛行人的重要特征。為此,本文在3.2節(jié)已有YOLOv3-SPP+-PAN網(wǎng)絡(luò)的基礎(chǔ)上,使用注意機(jī)制來增加表現(xiàn)力,關(guān)注重要特征并抑制 不 必 要 的 特 征。借 鑒SENet[20](Squeeze-and-Excitation Networks)中提出的SE模塊加載到現(xiàn)有的網(wǎng)絡(luò)模型框架。SE模塊如圖4所示。
圖4 SE模塊示意圖Fig.4 SE block structure diagram
SE模塊,通過對卷積得到的特征圖進(jìn)行處理,得到一個(gè)和通道數(shù)一樣的一維向量作為每個(gè)通道的評價(jià)分?jǐn)?shù),然后將該分?jǐn)?shù)分別施加到對應(yīng)的通道上,得到其結(jié)果。注意力機(jī)制的具體實(shí)現(xiàn)過程如圖4所示。給定一個(gè)輸入x,其特征通道數(shù)為C',通過一系列卷積Ftr變換后得到一個(gè)特征通道數(shù)為C的特征。接下來通過三個(gè)操作來重標(biāo)定前面得到的特征。
首先是Fsq操作,通過平均池化,將每個(gè)通道的二維特征(H×W)壓縮為1個(gè)實(shí)數(shù)。它表征著在特征通道上響應(yīng)的全局分布,在某種程度上具有全局的感受野,通道數(shù)保持不變,所以通過Fsq操作后變?yōu)?×1×C。
接著是Fex操作,使用一個(gè)全連接神經(jīng)網(wǎng)絡(luò),對Fsq操作之后的結(jié)果做一個(gè)非線性變換。
最后是Fscale特征重標(biāo)定的操作,使用Fex得到的結(jié)果作為權(quán)重,乘到輸入特征上,完成在通道維度上的對原始特征的重標(biāo)定。
在YOLOv3-SPP+-PAN網(wǎng)絡(luò)基礎(chǔ)上,將SE模塊添加到骨干網(wǎng)絡(luò)Darknet53之后即卷積層53層后,進(jìn)行信息重構(gòu)。在此,SE模塊參數(shù)reduc?tion設(shè)置為16。
至此,我們成功構(gòu)建了SE-YOLOv3-SPP+-PAN網(wǎng)絡(luò)。具體來說,本文在Darknet53之后嵌入SE模塊,使網(wǎng)絡(luò)更加關(guān)注車輛行人特征;在第一個(gè)檢測頭前的第5和第6卷積層之間引用改進(jìn)的SPP+,使得同一卷積層中收集并拼接不同尺度的局部區(qū)域特征;利用PAN模塊進(jìn)一步加強(qiáng)特征金字塔的結(jié)構(gòu),縮短了高低層特征融合的路徑。完整的網(wǎng)絡(luò)結(jié)構(gòu)示意圖如圖5所示。
圖5 SE-YOLOv3-SPP+-PAN網(wǎng)絡(luò)結(jié)構(gòu)示意圖Fig.5 Structure diagram of SE-YOLOv3-SPP+-PAN network
網(wǎng)絡(luò)檢測算法的損失函數(shù)由定位損失lbox、分類損失lcls和置信度損失lobj組成。
其中,定位損失lbox表示為:S表示柵格的尺寸,因?yàn)閅OLOv3具有三種不同尺度預(yù)測,S2代表13×13,26×26,52×52三種柵格尺寸。B代表錨框,1obji,j表示如果所在處的box有目標(biāo),其值為1,否則為0。w i,hi分別代表錨框的寬和高。x i和yi分別代表中心點(diǎn)所處區(qū)域的左上角坐標(biāo)。分類損失lcls如公式(3)所示,p i(c)表示物體屬于c類別的概率。置信度損失lobj如公式(4)所示。表示如果此處的box沒有目標(biāo),其值為0,否則為1??偟膿p失函數(shù)為:
對于lbox部分,我們將IoU損失函數(shù)替換為GIoU損失函數(shù)。IoU定義如下:
GIoU公式如下:
其中,A c代表兩個(gè)框最小閉包區(qū)域面積,也就是同時(shí)包含了預(yù)測框和真實(shí)框的最小框?qū)?yīng)的面積。為了保證對比實(shí)驗(yàn)的公平及準(zhǔn)確性,我們在基線YOLOv3及其他改進(jìn)算法同樣替換了GIoU損失函數(shù)。
本文的實(shí)驗(yàn)環(huán)境為:Linux系統(tǒng)、Intel Xeon E5-2643 3.3 GHz CPU、32 GB內(nèi)存及NVIDIA GTX 2080Ti GPU(11.00 GB內(nèi)存)。使用py?torch1.1深度學(xué)習(xí)框架,python3.6版本。
在KITTI數(shù)據(jù)集上,我們證明了本文提出的SE-YOLOv3-SPP+-PAN相較于YOLOv3而言,更適用于實(shí)際無人駕駛場景中的車輛及行人檢測。KITTI數(shù)據(jù)集涵蓋了自主駕駛環(huán)境下的多種數(shù)據(jù)類型,其提供的所有數(shù)據(jù)都是在駕駛過程中在車輛平臺上獲取的。
具體的,6 000幅圖像用于訓(xùn)練和驗(yàn)證,1 481幅圖像用于測試。訓(xùn)練模型可以用于檢測汽車、行人、坐著的人、騎自行車的人、面包車、卡車、有軌電車、雜項(xiàng)(如拖車、火車)八類目標(biāo)。
評估指標(biāo)采用通用目標(biāo)檢測評價(jià)指標(biāo):精度P,召回率R,AP(Average Precision)以及mAP(mean Average Precision)。
其中:TP(True Positive)代表真正例,F(xiàn)P(False Positive)代表假正例,F(xiàn)N(False Negative)代表假反例。
本文將召回率R劃分為11個(gè)點(diǎn)(0.0,0.1,0.2,…,1.0),按照PASCAL VOC的計(jì)算方式得到每個(gè)召回率下的精度P,可以得到P-R曲線,P-R曲線與坐標(biāo)軸圍成的面積即為AP值。對于各個(gè)類別,分別按照上述方式計(jì)算AP,所有類別的AP平均值即是mAP。
SE-YOLOv3-SPP+-PAN網(wǎng)絡(luò)訓(xùn)練參數(shù)設(shè)置如下:將原始Darknet53的激活函數(shù)替換為swish激活函數(shù);損失函數(shù)為GIoU損失。動(dòng)量為0.9,衰減為0.000 5,批次大小為64;初始學(xué)習(xí)率為0.002 61,第900和950代的學(xué)習(xí)率分別降低到原來的0.1倍。為了保證對比實(shí)驗(yàn)的公平性,對于基線網(wǎng)絡(luò)YOLOv3以及YOLOv3-SPP+和YOLOv3-SPP+-PAN網(wǎng)絡(luò)保持和SE-YOLOv3-SPP+-PAN網(wǎng)絡(luò)訓(xùn)練參數(shù)一致。
圖6 展示了SE-YOLOv3-SPP+-PAN網(wǎng)絡(luò)具體訓(xùn)練過程中目標(biāo)檢測框定位損失GIoU,置信度損失Objectness和分類損失Classification隨著訓(xùn)練迭代次數(shù)的變化情況。可以看出,隨著網(wǎng)絡(luò)訓(xùn)練迭代的增加,網(wǎng)絡(luò)模型損失逐漸減少到穩(wěn)定基本不變直至網(wǎng)絡(luò)收斂到最優(yōu)。
圖6 網(wǎng)絡(luò)訓(xùn)練損失Fig.6 Network training loss
表1 給出了原始基線YOLOv3網(wǎng)絡(luò),改進(jìn)的YOLOv3-SPP+,YOLOv3-SPP+-PAN和SEYOLOv3-SPP+-PAN網(wǎng)絡(luò)在KITTI測試數(shù)據(jù)集上的目標(biāo)檢測結(jié)果,詳細(xì)比較了各個(gè)網(wǎng)絡(luò)的性能,包括精度,速度以及模型大小等。對于實(shí)驗(yàn)數(shù)據(jù)的具體分析如下:
表1 YOLOv3,YOLOv3-SPP+,YOLOv3-SPP+-PAN,SE-YOLOv3-SPP+-PAN性能比較Tab.1 Comparison of YOLOv3,YOLOv3-SPP+,YOLOv3-SPP+-PAN,SE-YOLOv3-SPP+-PAN
(1)如表1所示,YOLOv3-SPP+在KITTI數(shù)據(jù)集上的目標(biāo)檢測平均精度均值(mAP)為84.6%,比基線網(wǎng)絡(luò)YOLOv3提升了0.6%。YOLOv3-SPP+在基線網(wǎng)絡(luò)YOLOv3的第一個(gè)檢測頭前的第5和第6卷積層之間集成了一個(gè)改進(jìn)的SPP+模塊。該實(shí)驗(yàn)數(shù)據(jù)證實(shí):SPP+模塊對多尺度局部區(qū)域特征進(jìn)行池化合并,將全局和局部多尺度特征結(jié)合起來可以提高目標(biāo)檢測的精度。同時(shí),與YOLOv3相比,YOLOv3-SPP+的檢測速度僅僅降低了約1.6FPS,YOLOv3-SPP+仍有較快的檢測速度。模型大小由492.9 M增加至503.4M,模型大小僅僅增加了10.5 M。實(shí)驗(yàn)結(jié)果進(jìn)一步證實(shí)了改進(jìn)的SPP+模塊在同一層中獲得的多尺度特征可以進(jìn)一步提高YOLOv3的檢測精度的同時(shí),僅僅增加較小的且計(jì)算量。
(2)由表1可以看出,YOLOv3-SPP+-PAN在YOLOv3-SPP+網(wǎng)絡(luò)的基礎(chǔ)上嵌入PAN模塊可以縮短網(wǎng)絡(luò)通道間的信息融合,YOLOv3-SPP+-PAN在KITTI數(shù)據(jù)集上的目標(biāo)檢測精度為85.8%,比YOLOv3-SPP+提高了1.2%。同時(shí),與YOLOv3-SPP+相比,YOLOv3-SPP+-PAN的檢測速度僅降低了約0.5 FPS,仍能保證檢測的實(shí)時(shí)性。
(3)為了在車輛行人檢測過程中,體現(xiàn)對于重要特征的關(guān)注及對不必要特征的抑制,本文提出的基于注意力機(jī)制的多尺度車輛行人檢測算法SE-YOLOv3-SPP+-PAN在KITTI數(shù)據(jù)集上的目標(biāo)檢測平均精度均值為86.2%,其性能比YOLOv3基線模型提升了2.2%,比YOLOv3-SPP+-PAN提升了0.4%。
上述實(shí)驗(yàn)結(jié)果表明:本文網(wǎng)絡(luò)設(shè)計(jì)中增加的模塊可以學(xué)習(xí)到通道之間的相關(guān)性,篩選出針對通道的注意力,雖稍微增加了一些計(jì)算量,但并不影響檢測實(shí)時(shí)性,且獲得了相對最高的檢測精度。
此外,SE-YOLOv3-SPP+-PAN網(wǎng)絡(luò)具有同時(shí)檢測車輛、行人多種類別的能力。包括檢測目標(biāo)的類別屬性以及目標(biāo)的位置信息。我們將網(wǎng)絡(luò)輸出設(shè)置為汽車、行人、坐著的人、騎自行車的人、面包車、卡車、有軌電車、雜項(xiàng)(如拖車、火車)8類。特別需要說明的是,車輛和行人大小和尺度往往是不同的。因此在本文的實(shí)驗(yàn)設(shè)計(jì)中,將網(wǎng)絡(luò)分為三種不同尺度進(jìn)行預(yù)測,分別為13×13,26×26,52×52三種柵格尺寸。借鑒特征金字塔的思想,小尺寸特征圖用于檢測大尺寸物體,而大尺寸特征圖檢測小尺寸物體。
表2 給出了基線網(wǎng)絡(luò)以及改進(jìn)的網(wǎng)絡(luò)在KITTI數(shù)據(jù)集上各類目標(biāo)檢測的AP數(shù)值比較。結(jié)果表明,本文提出的SE-YOLOv3-SPP+-PAN網(wǎng)絡(luò)比基線網(wǎng)絡(luò)在各個(gè)類別上的檢測精度均有較大幅度的提升。其中Person_sitting類別的AP由68%提升至76.6%,提高了8.6%,提升結(jié)果較為明顯。另外,Cyclist類別的AP由73.7%提升至76.4%,提高了2.7%。需要特別說明的是,Person_sitting類別和Cyclist類別在實(shí)際場景中具有尺度變化較大、目標(biāo)相對較小的特點(diǎn),基線YOLOv3網(wǎng)絡(luò)對于這類目標(biāo)的檢測結(jié)果相對較差,而本文所構(gòu)造的網(wǎng)絡(luò)有效提升了這兩類目標(biāo)的檢測效果。最終,實(shí)驗(yàn)表明所構(gòu)造的SE-YO?LOv3-SPP+-PAN網(wǎng)絡(luò)有效提升了網(wǎng)絡(luò)檢測的平均精度,同時(shí)仍然保持了實(shí)時(shí)的檢測速度26.5FPS,因此,更適宜無人駕駛場景下的車輛及行人目標(biāo)檢測。
表2 不同算法在KITTI測試集上AP比較Tab.2 AP comparison of different algorithms on KITTI test set
此外,我們還測試了不同復(fù)雜場景下SEYOLOv3-SPP+-PAN網(wǎng)絡(luò)對于車輛及行人的目標(biāo)檢測效果。對不同光照、遮擋場景、形變及小目標(biāo)的檢測結(jié)果進(jìn)行了展示和分析,實(shí)驗(yàn)結(jié)果如圖7~圖9所示。
圖7 不同光照情況下的檢測結(jié)果Fig.7 Detection results under different lighting conditions
圖7 展示了網(wǎng)絡(luò)模型在道路場景光照變化劇烈情況下的目標(biāo)檢測結(jié)果。圖中的檢測框代表檢測得到的不同物體。可見在陰影、光照不足時(shí)如圖7(b),和道路強(qiáng)光、路面反射光較強(qiáng)情況如圖7(f),本文設(shè)計(jì)的網(wǎng)絡(luò)仍有較好的檢出結(jié)果,證明了該網(wǎng)絡(luò)模型對光照變化較強(qiáng)的適應(yīng)能力。
圖8 展示了不同程度遮擋下的目標(biāo)檢測結(jié)果??梢姡疚脑O(shè)計(jì)的網(wǎng)絡(luò)模型在輕微程度遮擋(圖8(a)和圖8(b))、復(fù)雜密集車輛場景嚴(yán)重遮擋(圖8(c)和圖8(d))、復(fù)雜密集人群場景嚴(yán)重遮擋(圖8(e)和圖8(f))等情況下均有較好的檢測效果。因而,本文提出的模型更適用于多種復(fù)雜實(shí)際交通場景中目標(biāo)檢測。
圖8 不同程度遮擋的檢測結(jié)果Fig.8 Detection results under different occlusion conditions
圖9 展示了具有變形、小尺度特征的目標(biāo)檢測結(jié)果??梢钥闯?,本文改進(jìn)的算法擁有不同形變及尺度下魯棒的目標(biāo)檢測能力。
圖9 變形、小尺度目標(biāo)檢測結(jié)果Fig.9 Detection results of small and deformed targets
圖10 展示了本文設(shè)計(jì)的網(wǎng)絡(luò)模型在道路場景下出現(xiàn)的目標(biāo)錯(cuò)檢和漏檢情況。對于圖10(a),錯(cuò)檢了圖片左下部分綠色檢測框。分析造成其錯(cuò)檢可能的原因?yàn)椋壕植繖z測導(dǎo)致的錯(cuò)檢,外框和內(nèi)框的IoU小于0.5(一定的閾值),所以綠色內(nèi)框沒有被完全消除。對于圖10(b),漏檢了圖片左半部分車輛目標(biāo)。說明網(wǎng)絡(luò)在具有高度密集遮擋的小目標(biāo)檢測方面的性能還有待提高。因此,在實(shí)際復(fù)雜場景下,減少漏檢和錯(cuò)檢,進(jìn)一步提升檢測準(zhǔn)確率將是我們未來的研究方向。
圖10 錯(cuò)檢和漏檢Fig.10 Error detection and missed detection
本文在YOLOv3網(wǎng)絡(luò)的基礎(chǔ)上,通過添加改進(jìn)的空間金字塔池化模塊,對多尺度局部區(qū)域特征進(jìn)行融合和拼接,使得網(wǎng)絡(luò)能夠更全面地學(xué)習(xí)目標(biāo)特征;其次,利用空間金字塔縮短通道間的信息融合,構(gòu)造了YOLOv3-SPP+-PAN網(wǎng)絡(luò);最終,設(shè)計(jì)了基于注意力機(jī)制的高效目標(biāo)檢測模型SE-YOLOv3-SPP+-PAN。使用本文的新模型在KITTI實(shí)驗(yàn)數(shù)據(jù)集上進(jìn)行了測試,實(shí)驗(yàn)證明SEYOLOv3-SPP+-PAN所獲得的mAP性能比YO?LOv3提升了2.2%,因而更適合于復(fù)雜智能駕駛場景下的目標(biāo)檢測任務(wù)。