劉元峰,姬海軍,劉立波*
(1.寧夏大學 信息工程學院,寧夏 銀川 750021;2.寧夏路網監測與應急處置中心,寧夏 銀川 750021)
精準、快速檢測出車輛目標是高速交通控制和管理的重點、難點問題,具有重要的研究價值[1]。為提升檢測效率,研究人員提出了單階段目 標 檢 測 方 法,主 要 代 表 有SSD[2]、YOLO系列[3-6]等。該類方法通過卷積網絡提取特征并直接對目標定位識別,通過減少網絡參數使檢測速度得以提高,但卻導致檢測精度有所下降。因此,如何在車輛目標實時檢測中既能保證檢測速度又能提升檢測精度,已成為研究的熱點問題。
王瀅暄等[7]提出一種基于改進YOLOv4高速公路車輛目標實時檢測方法,制作了各種復雜場景下的車輛數據集并對其進行數據增強,提升了檢測精度。袁小平等[8]提出一種改進YOLOv3的行人車輛目標檢測算法,采用ResNeXt代替ResNet模塊,并引入密集連接,提升了小目標的檢測精度。于博等[9]采用一種用于遠紅外圖像的優化YOLO檢測與分割網絡模型,通過KMeans算法設定錨框尺寸以及使用自適應閾值分割方法,保證了實時檢測要求,且能較有效地檢測行人目標。Lai等[10]提出了一種基于車輛檢測和交通計數區域的二次檢測框架,通過多角度、多路況數據采集,能夠較精確地檢測和統計出車輛信息。上述方法在車輛目標實時檢測方面均有應用價值,但在檢測過程中,模型對于細節特征學習能力較弱且提取了大量冗余信息,導致檢測精度降低。
本文提出一種基于YOLOv5s的高速公路車輛實時檢測算法,通過在殘差單元中加入卷積注意力模塊,強化模型學習細節特征,抑制冗余信息干擾;在金字塔網絡中加入卷積注意力模型,加強關鍵特征融合;在自行構建的寧夏高速公路車輛數據集上進行實驗,結果表明,本文方法能夠準確、快速地檢測出車輛目標,在高速公路車輛管理和控制方面具有一定的應用價值。
YOLOv5系列包含s、m、l、x四種不同大小的網絡模型[11-13],其中YOLOv5s網絡參數最少,檢測速度更適合實時車輛目標檢測場景。YOLOv5s主要由Backbone和Head兩部分組成。Backbone部分用于提取圖像特征,包含Focus、4個基礎卷積(Convolution,Conv)、3個ResBCSPn模塊和空間金字塔池化(Spatial Pyramid Pooling,SPP);Head部分由金字塔網絡(Pyramid Attention Network,PANet)和 分 類 回 歸 預 測 模 塊Detect構成,分別用于多尺度特征信息融合和預測。整體網絡結構如圖1所示。

圖1 YOLOv5模型架構Fig.1 Model architecture of YOLOv5s
ResBCSPn作為Backbone的核心模塊,主要由一個及以上殘差單元(ResBottlebeck)和跨階段局部模塊(Cross Stage Partial,CSP)組成。其中,殘差單元用于加深網絡記憶,防止網絡因層數加深而導致梯度消失;跨階段局部模塊用于組合特征、降低網絡參數量。Head的核心模塊是金字塔網絡,該部分采用自頂向下與自底向上聯合的特征融合方式,更好地進行了多尺度融合,加強了不同尺度特征之間的語義關聯性。
注意力機制是計算機視覺領域常用的特征強化方法,源于人類大腦對視覺信號處理機制的模擬。人類在觀察某一物體時,會重點關注目標有特點的細節部位,忽略全局和背景等冗余信息。這種選擇性關注的方式與車輛目標實時檢測任務中依靠車輛特點進行識別分類的理念相一致,近年來已在該領域得到了廣泛應用。因此,為達到抑制圖像中冗余信息、學習和融合關鍵細節特征進而提升模型檢測精度的目的,本文引入一種多維注意力機制——卷積注意力模型(Convolutional Block Attention Module,CBAM)[14-16],其包括通道域(Channel Attention Module,CAM)和空間域(Spartial Attention Module,SAM)兩部分,分別處理圖像的特征通道和特征空間。
由卷積網絡生成的特征圖中包含不同的特征空間和通道,每個空間、通道表示圖像中的不同信息,其中可能包含與目標無關的背景冗余特征。因此,讓網絡將注意力集中于提取和學習圖像中關鍵細節特征,使其具備更高的權重系數,能有效提升模型的檢測精度。本文在主干網絡中使用CBAM提取特征的通道和空間生成注意力權重圖,并將其與原特征圖進行特征融合,將融合后的模塊添加到殘差單元之后,形成卷積注意力殘差單元以獲取并學習不同維度、更為豐富的關鍵細節特征。在金字塔網絡中,使用相同的方法得到融合后的模塊,將其放置在不同尺度特征圖的上采樣和下采樣后,形成卷積注意力金字塔網絡以加強不同尺度的關鍵細節特征融合。
主干網絡中由卷積函數生成特征圖,由于卷積函數具有相同卷積核,導致無法辨析圖像中關鍵細節特征。而卷積注意力模塊作為一種特征強化方法,通過提高關鍵細節特征權重、降低冗余信息權重,使網絡著重關注感興趣區域,從而實現提升檢測精度的目的。因此,本文將卷積注意力模塊放置于殘差單元后,形成卷積注意力殘差單元(CBAMReBottleneck,CR),如圖2所示。

圖2 卷積注意力殘差模塊。(a)殘差單元;(b)CAM;(c)SAM。Fig.2 Convolutional attention residual module.(a)ResBottleNeck;(b)CAM;(c)SAM.
卷積注意力殘差模塊主要由殘差單元(Res-BottleNeck)、CAM和SAM三部分構成,分別如圖2中(a)、(b)、(c)所示。輸入特征x∈Rw×h×c進入殘差單元。殘差單元通過兩層3×3的卷積提取x得到具備高級語義信息的特征f(x)后,使用跳躍連接將其與x相加得到X,這使流入到下一層網絡的特征由f(x)變為f(x)+x,從而保留了淺層信息。該過程增強了特征信息。但并未改變特征維度,因此特征X∈Rw×h×c。處理流程如圖3(a)所示,具體公式如式(1)、(2)所示:

式中:w×h為特征維度大小,c為特征通道數,Conv代表卷積核為3×3的卷積,X是保留淺層信息的殘差單元輸出特征圖。
經過殘差單元疊加淺層信息的特征X由CAM單元處理,CAM重點關注特征的通道維度。不同卷積核生成的特征通道存在重要性差異,但網絡公平捕獲特征的方式忽略了這一問題。為此,CAM賦予各通道不同的權重系數來衡量其差異性,使網絡根據權重系數聚焦關鍵通道特征。具體操作如下:首先,并行平均和最大池化將X的空間信息聚合壓縮得到兩個1×1×c大小的張量。然后,將其輸送到共享網絡MLP中獲取通道注意力分布。MLP是包含一個隱藏層的感知機,利用其處理非線性數據分類的能力實現了通道注意力分布。接著對重新分配通道注意力權重的張量進行求和運算得到最終的通道 權 重Cweight,Cweight∈R1×1×c。最 后 將 其 與X相乘融合得到通道注意力特征圖Mc,Mc∈Rw×h×c。處理流程如圖3(b)所示,具體公式如式(3)所示:

式中:AP為平均池化,MP為最大池化,σ為sigmoid激活函數,MLP為多層感知機,⊕為矩陣求和運算,?為矩陣乘積運算,Mc是生成的通道注意力特征圖。
經過CAM處理得到的特征圖Me進入SAM模塊用以計算空間特征權重。SAM首先將不同通道在同一平面空間點上的值并行平均和最大池化分別獲取兩個維度為w×h×1的空間權重圖,再通過卷積層和sigmoid函數對兩個空間特征圖進行非線性激活得到最終的空間權重圖Sweight,Sweight∈Rw×h×1,最后將其與Mc相乘融合得到空間注意力特征圖。處理流程如圖3(c)所示,具體操作公式如式(4)所示:

式中:Conv7是卷積核大小7×7的卷積,Ms為生成的空間注意力特征圖。
上述步驟產生的中間特征X、Mc和Ms,經過卷積等操作處理后,無法明確分析其中的差異性,為此給予中間過程特征的相應熱力圖[17]進行直觀描述,具體效果如圖3所示。

圖3 中間過程效果圖Fig.3 Intermediate process renderings
由圖3可知,特征圖X能夠檢測出車輛目標并將注意力集中在車側上方,說明信息主要疊加在該區域;特征圖Mc通過通道域處理,加強了各通道之間的依賴性,使注意力權重集中在信息豐富的區域,在圖3(b)中已知車側上方信息豐富,因此圖3(c)中該位置高亮效果更為顯著;特征圖Ms經過空間域處理,突出了各通道上不同空間重要程度,在圖3(c)基礎上,額外獲取了車頭、車門等關鍵部位特征,增大了有效預測區域。
由于YOLOv5s將輸入圖像調整為640×640×3的格式,因此在經過主干特征提取網絡卷積后會得到維度分別為80×80×256、40×40×512、20×20×1 024的特征圖f1、f2和f3,并將其輸入到金字塔網絡中進行多尺度特征融合。金字塔網絡通過融合多尺度特征圖加強了不同語義、分辨率特征圖像的信息關聯度,但破壞了特征的權重系數,網絡無法著重融合關鍵位置信息。
目標檢測主要有兩大任務:目標分類和定位,兩者分別依賴于深層網絡中的高級語義信息和淺層網絡中的車輛目標位置信息。在3.2節中,卷積注意力殘差單元主要通過提取關鍵特征用以提升分類精確度,在本小節中,卷積注意力金字塔網絡則側重于解決目標定位問題。
金字塔網絡主要通過采樣操作融合不同層級之間的特征,以保證其兼顧高級語義和車輛位置信息,但如3.2節中提到的網絡無法區分特征重要程度。為此,借鑒上述思想,通過在不同層次特征融合之前加入CBAM注意力機制,給定特征空間和通道方向上的一個權重,以保證金字塔網絡能夠融合關鍵信息,進而提升模型準確度。具體方式是在金字塔網絡上采樣和下采樣模塊后加入卷積注意力機制,形成卷積注意力金字塔網絡(CBAMPANet,CP)。卷積注意力金字塔網絡結構如圖4所示。其中,圖4(a)為主干特征提取網絡;圖4(b)代表深層特征降通道 維度拼接淺層位置信息的過程,中間特征為[P3,P2,P1];圖4(c)代表淺層升通道維度融合深層語義的過程,該過程會產生最終待分類回歸特征[N1,N2,N3]。為清晰直觀地描述中間過程特征,通過給予對應熱力圖進行分析,效果如圖5所示。

圖4 卷積注意力金字塔網絡。(a)主干特征提取網絡;(b)自上向下的路徑增強;(c)自下向上的路徑增強。Fig.4 Convolutional attention pyramid network.(a)Backbone;(b)Up-bottom path augmentation;(c)Bottom-up path augmentaion.

圖5 中間過程熱力圖Fig.5 Intermediate process heat map
特征圖P3來自于深層特征f1,因此具備全網絡中最為豐富的語義信息,但由于深層網絡目標位置信息欠缺,導致最終預測區域并不理想,僅能檢測到車側上方部分,這一效果與3.2節中最終效果類似,說明圖像中該區域特征在全局中的信息最為豐富;P3經上采樣、CBAM處理后與特征圖f2拼接形成P2,f2相較于f1,兼顧了語義和位置信息,而P3上采樣過程中融入了CBAM模塊,使用權重將注意力集中在關鍵區域,因此預測范圍囊括了車身和車頭等關鍵部位,基本覆蓋整體車輛,具有較好的檢測效果;P1來自于同級特征f3和經CBAM處理的上級特征,由于P1作為圖4(b)中最后一步,包含的特征信息更為豐富,覆蓋預測區域更為廣泛且明顯。N1是基于P1進行的卷積等操作,從而預測區域與P1相似;N2檢測效果較好的原因,一方面是來自同級特征P2在上采樣操作中包含的信息已較為豐富,另一方面下級特征P1經CBAM處理后將注意力集中在特征關鍵部分;N3與N2原理基本相同,作為圖4(c)中最后一步,其包含了豐富的疊加信息,因此預測區域優于所有中間過程效果圖。
在圖4(b)中,淺層特征(如f3)車輛位置清晰,但由于卷積處理較少,特征語義信息欠缺,無法精確進行分類;深層特征(如P3)車輛信息模糊,但經過更多卷積提取,語義信息豐富;因此圖4(a)過程主要利用深層特征的語義信息豐富淺層特征,使其能夠精確定位和分類,融合后的特征如P1所示,該過程可描述為:深層特征通過上采樣降低特征維度、增強位置信息,然后經過CBAM進行賦權,最后與淺層特征進行拼接。而圖4(b)過程的目的在于,通過利用淺層特征的位置信息豐富深層特征,使其具備明顯的車輛信息,拼接后的特征如N3所示,該過程可描述為:淺層特征通過下采樣提升特征維度、豐富語義信息,經過CBAM進行賦權后與淺層特征進行融合。上采樣(UpSample)用于擴展圖像尺度并壓縮通道,下采樣(DownSaple)用于壓縮圖像空間并擴張通道。具體公式如式(5)、(6)所示:

式中:TransConv是卷積核2×2的反卷積,Conv是卷積核為3×3的卷積,fc代表當前特征的通道,fw×h為當前特征的寬高。
在殘差單元之后加入CBAM,強化主干特征提取網絡對目標細節的學習能力,抑制冗余信息干擾,獲取關鍵的高級語義信息以保證提升目標分類準確度;在不同的層級特征融合之前加入CBAM,給予待融合特征重要性權重,豐富特征的關鍵車輛位置信息來增強目標定位精準度。通過上述內容可知,卷積注意力殘差單元和卷積金字塔網絡分別用于完善目標分類和定位任務。為證明改進方法的有效性,在4.5節中將對各改進模塊進行消融實驗。
實驗過程在Pytorch框架下進行,訓練及測試的計算機硬件配置GPU為NVIDIA Geforce RTX 3 090 Ti,操 作 系 統 為Ubuntu 16.04.12,python版本為3.6.5。使用寧夏地區2020年8月6日至2021年11月24日的高速公路視頻數據,共計26.2G,視頻顯示格式為1 080 P,每秒傳輸幀數為25,囊括普通高速公路、分岔路口、收費站、盤山公路、隧道和高架橋等6類高速道路場景下的各類遮擋物與截斷目標,可滿足本文方法對于復雜場景數據的需求。
寧夏高速公路車輛數據集構建方式如下:首先通過人工清洗車輛缺失目標、模糊視頻;然后使用Python腳本文件將視頻截幀(截幀間隔2 s)并清洗,去除冗余、圖像撕裂、馬賽克等無效數據;接著使用labelimg工具標注圖像車輛目標,并設置Car、Van、Bus和Truck四種車輛類別標簽,標注完成1 200張圖片后經數據增強得到3 000張;最后按照訓練集∶驗證集∶測試集=8∶1∶1的比例對數據集進行劃分,得到訓練集圖像數量2 400張、驗證集圖像數量300張、測試集圖像300張。各類車型數據如表1所示。

表1 數據集內容描述Tab.1 Datasets content description
本文使用每秒傳輸幀數(Frames Per Second,FPS)[18]評估算法檢測速度,采用均值平均精度(Mean Average Precision,mAP)[19-24]對算法檢測精度進行定量評估。
FPS即視頻中的畫面數,每秒幀數越多,所顯示的動作就越流暢。通常情況下,FPS高于50 f/s時,就可滿足實時目標檢測的要求。計算公式如式(7)所示:

式中:frameCount代表視頻總幀數,elapsedTime代表視頻總時間。
mAP由精確率(Precision)和召回率(Recall)求出。精確率又被稱為查準率,用于衡量算法的準確度;召回率又稱查全率,用于衡量算法的漏檢率,計算公式如式(8)、(9)所示:

其中:TP表示正確分類樣本數量,FP表示誤分樣本數量,FN表示樣本誤檢數量。
平均精度(Average Precision,AP)用于計算單類別的檢測精度;其表示精確率與召回率所圍成曲線的面積,均值平均精度用于計算多個類別的平均精度,計算公式如式(10)所示:

其中,M代表數據集的類別總數。
本實驗采用多任務損失函數優化網絡參數,利用k-means算法[25]對寧夏高速公路車輛數據集進行聚類獲得多尺度錨框,寬高分別為(15,12)、(23,18)、(41,18),(36,28)、(65,30)、(78,59),(122,51)、(154,90)、(189,171)。設置相同模型參數:輸入圖像尺寸為640×640,初始學習率設置為0.001,網絡模型訓練過程中選擇余弦退火方式[26]來降低學習率,訓練批次大小(Batch size)設置為32,迭代次數為15 000次。訓練過程損失下降曲線如圖6所示。由圖6可知,網絡訓練初期下降較快,在2 000次左右到達拐點,損失下降梯度減緩,14 500次左右損失下降趨于平穩,最終損失收斂在0.025左右。

圖6 損失下降曲線Fig.6 Loss decline curve
為驗證和評估本文改進方法的性能,實驗將本文方法(YOLOv5s-CRCP)與主流的車輛目標實 時 檢 測 算 法SSD、YOLOv3、YOLOv4、YOLOv5s在寧夏高速公路車輛數據集上進行對比。檢測精度和檢測速度的實驗結果如表2和表3所示。

表2 不同算法在寧夏高速公路車輛數據集的檢測精度對比Tab.2 Comparison of detection accuracy of different algorithms on Ningxia expressway vehicle datasets

表3 不同算法在寧夏高速公路車輛數據集的檢測速度對比Tab.3 Comparison of test results of different algorithms on Ningxia expressway vehicle datasets
由表2可知,本文方法通過在殘差單元和金字塔網絡中融合卷積注意力模塊,提高了模型的檢測精度,各類車輛的檢測精度分別為99.5%、74.4%、92.3%和98.6%,均值檢測精度高達91.2%,優于表中任一主流車輛目標實時檢測模型。SSD模型均值檢測精度僅為78.2%,主要原因是主干網絡的低級特征卷積層數少,特征提取不充分,并且未對不同尺度特征進行融合。YOLOv3模型通過使用DarkNet53作為骨干網絡以加深網絡層數,充分提取特征信息,并使用特征金字塔網絡充分融合不同尺度特征,將均值檢測精度提升到84.5%。YOLOv4使用數據增強,擴充訓練數據將模型均值檢測精度提高到88.6%。YOLOv5s模型由于網絡參數量大幅減少導致檢測精度相較于YOLOv4下降1.5%,為87.1%,能達到實時目標檢測的要求。
由表3可知,在同一環境下,SSD模型主要采用VGG16作為特征提取網絡,因參數量過多導致網絡檢測速度較慢,其檢測速度僅為26 f/s。YOLOv3模型以DarkNet53作為骨干網絡模型,網絡中參數量大幅降低,檢測速度為36 f/s,相較于SSD模型具有明顯的提升。YOLOv4使用CSPDarkNet53模型分組處理特征,降低了網絡參數量,使檢測速度略微提升,達到38 f/s。YOLOv5s模型對主干網絡模型進行深度和寬度壓縮并使用focus結構分治處理輸入特征,極大降低了網絡參數量,檢測速度達到77 f/s。本文方法在YOLOv5s的基礎上添加了CBAM機制,由于CBAM中包含MLP結構,導致參數量有所增加,使檢測速度略微降低,為75 f/s,但仍能達到實時檢測的要求。
本文以圖3輸入的特征圖像為例,對上述各模塊進行消融實驗過程說明。整體處理流程為:(1)待檢測圖像經過包含卷積注意力殘差單元的主干特征提取網絡提取到多尺度特征;(2)輸入到卷積注意力金字塔網絡中進行多尺度特征融合。處理步驟(1)、(2)分別如圖7所示。

圖7 整體實驗流程圖Fig.7 Overall process flowchart
4.5.1卷積注意力殘差單元實驗分析
為驗證卷積注意力殘差單元融入主干特征提取網絡后的性能,本文基于寧夏高速車輛數據集進行實驗:實驗1.基準模型(YOLOv5s);實驗2.僅使用CAM模塊;實驗3.僅引入SAM單元;實驗4.同時添加CAM和SAM模塊(YOLOv5s-CR)。實驗結果如表4所示。
由表4可知,加入CAM模塊后,檢測精度提升了1.6%,這主要歸功于MLP多層感知機使用全連接提取了更多的細節特征;引入SAM模塊檢測精度提升不明顯,原因在于SAM僅通過串行池化的方式增大了感受野,但依舊采用卷積捕獲特征,因此精度提升不大;同時引入SAM和CAM時,模型精度相較于原模型提升了2.2%,有著較好的檢測效果,故最終本文采用實驗4的模型架構。

表4 卷積注意力殘差單元的消融實驗Tab.4 Ablation experiment of CR
為進一步說明CAM和SAM的作用,對其引入到主干特征提取網絡前后的提取結果通過熱力圖進行對比分析,如圖8所示。在不引入任何注意力機制時,具體實驗結果如圖8(b)所示;引入SAM時,主干特征提取網絡提取結果如圖8(c)所示;引入CAM時,提取特征實驗結果如圖8(d)所示;同時引入CAM和SAM的提取結果如圖8(e)所示。

圖8 主干網絡提取特征結果Fig.8 Backbone network extraction feature results
由圖8可知,引入注意力機制后,網絡能夠更加關注目標關鍵特征,進而突出車輛輪廓,忽略背景冗余信息,因此特征的提取效果均高于原模型;使用CAM捕獲特征的效果要高于SAM,主要表現CAM能夠將注意力集中在整體車身等明顯的車輛特征部位,而SAM僅能突出車頂部位,對于其他關鍵部位的處理效果較弱;同時引入CAM和SAM時,整體車身、車頭等關鍵部位均能關注,效果顯著。
4.5.2卷積注意力金字塔網絡實驗分析
為驗證CBAM加入特征融合網絡后的性能,本文進行如下實驗:實驗1.基準模型(YOLOv5s);實驗2.僅在上采樣單元添加CBAM模塊;實驗3.僅在下采樣單元添加CBAM模塊;實驗4.在上、下采樣后同時添加CBAM模塊(YOLOv5s-CP)。最終實驗結果如表5所示。
由表5可知,僅在特征融合網絡中上采樣后加入CBAM模塊精度提升了2.3%;僅在下采樣后添加CBAM,精度提升了1.6%,低于實驗3的原因為,下采樣過程在上采樣特征融合完成之后,其目標位置信息并不清晰,因而提升效果略低;同時添加CBAM模塊的檢測精度較于原模型提升了3%,在實際應用中表現良好,因而本文使用實驗4的模型架構。

表5 卷積注意力殘差單元的消融實驗Tab.5 Ablation experiment of CP
為進一步說明在特征融合網絡的上下采樣操作后加入CBAM的作用,對提取結果通過熱力圖進行對比分析,如圖9所示。在不添加CBAM時,PANet具體融合實驗結果如圖9(b)所示;下采樣后引入CBAM的實驗結果如圖9(c)所示;上采樣后添加CBAM的特征融合效果如圖9(d)所示;上、下采樣后同時引入CBAM的提取結果如圖9(e)所示。

圖9 特征融合結果Fig.9 Feature fusion result
由圖9可知,未添加注意力機制的特征圖注意力主要集中在車頂部位,并不能很好地將注意力集中在車輛整體模塊;在下采樣操作后添加CBAM,能夠將注意力提升到車頂和車身部分位置,但效果依舊不理想;在上采樣過程后添加CBAM的效果明顯優于前者,網絡將注意力擴散至車輛整體架構,對于車身能夠整體覆蓋;在上下采樣后同時添加CBAM,突出重點位置基本與圖9(d)相似,但是覆蓋面積更為廣泛,效果更好。
4.5.3最終模型實驗分析
為探究各改進模塊對最終模型檢測效果的影響,在寧夏高速公路車輛數據集上進行了以下實驗:實驗1.基準模型(YOLOv5s);實驗2.加入卷積注意力殘差單元;實驗3.加入卷積金字塔網絡;實驗4.同時添加卷積注意力殘差單元和卷積注意力金字塔網絡。結果如表6所示。
在4.5.1和4.5.2節中詳細分析了引入卷積注意力殘差單元和卷積注意力金字塔網絡的效果,本實驗主要關注同時融入兩者的影響。從表6中可知,實驗4通過同時在主干特征提取網絡和特征融合網絡中加入CBAM模塊,分別用于提取關鍵特征和融合關鍵信息,最終檢測精度達到了91.2%,相較于基準模型提升4.1%;在檢測速度方面,由于添加了CBAM模塊,導致網絡參數略微增加,FPS降低為75,但與原模型差距不大,仍能保持實時檢測。因此,本文改進模型能夠在兼顧檢測速度的同時,提升了檢測精度,更能滿足實際車輛目標檢測場景。本文模型對寧夏高速公路數據集中的Car、Van、Truck和Bus四類車型進行檢測,效果如圖10所示。由圖10可知,本文方法能夠將注意力集中在車輛目標的關鍵部位,如車頭、車身以及車頂等,其中Car和Truck效果最佳,基本可將車輛整體進行覆蓋;Bus和Van可覆蓋主要車身部分,但對于車頭注意力較弱,主要由于數據量相對較少,特征提取不充分。

表6 最終算法消融實驗Tab.6 Final algorithm ablation experiment

圖10 特征融合結果Fig10 Feature fusion results
為直觀表述本文方法在不同道路環境下的有效性,選取寧夏高速公路測試集中普通道路、分岔路口、收費站、盤山公路、隧道和高架橋等不同道路場景進行定性分析測試,并將本文模型與主流實時目標檢測算法進行對比。檢測效果如圖11所示,每組依次為原圖、SSD、YOLOv3、YOLOv4、YOLOv5s和 本 文算法。

圖11 寧夏高速公路車輛測試集上的效果圖Fig.11 Renderings on Ningxia expressway vehicle test sets
通過對比發現,在普通道路、分岔路口和收費站口場景下,各算法均能正確檢測出車輛類別,主要原因是道路情況較為簡單,數據集中Truck和Car標簽充足,但本文方法檢測得分更高;在盤山公路場景下,SSD出現漏檢車輛Car,其余算法均能正確檢測出目標;在隧道中,SSD算法再次出現漏檢現象,并且各算法均將Van誤檢為Truck,主要原因在于Van的特征與Truck相似、不易區分,而本文算法通過卷積注意力機制模塊的添加則能很好學習車輛細節特征,最終正確檢測出車輛類別;在高架橋中,SSD和YOLOv3將Van分 別 誤 檢 為Car和Bus并均存在漏檢車輛,YOLOv4檢測正確但檢測精度較低,YOLOv5s則出現了重復標簽現象,本文方法則取得了較高的檢測精度。

針對復雜高速場景下YOLOv5s算法細節特征學習能力弱、提取冗余信息過多和關鍵特征融合不充分等問題,本文提出了基于YOLOv5s的實時車輛目標檢測模型,在YOLOv5s的殘差單元和金字塔網絡中加入卷積注意力機制模塊,通過動態分配特征權重系數的方式,改善了上述問題。在自構建的寧夏高速公路車輛數據集上進行實驗,通過評價指標mAP、FPS和測試效果圖可知,相較于主流的實時目標檢測算法,本文的改進模型具有更好的檢測性能,但仍存在數據集不充分和極小目標車輛檢測精度低等問題,因此在后續工作中將繼續擴充數據集并提升極小目標車輛的檢測精度。