朱春燕ZHU Chun-yan
(西安培華學院智能科學與工程學院,西安 710125)
隨著智能交通系統(tǒng)的迅速發(fā)展,交通標志智能檢測技術在道路交通安全中扮演著重要的角色。交通標志檢測算法已經(jīng)成為無人駕駛、輔助駕駛、自動駕駛和車輛安全領域的研究熱點之一。因此,設計一種在交通標志檢測領域具備優(yōu)異檢測性能的算法具有重要意義和應用價值。
目前國內外基于深度學習的一階段目標檢測算法包括SSD 和YOLO 系列等,它們具有較高的檢測精度和較快的檢測速度[1]。其中,YOLOv5 是一種檢測精度較高的算法,在目標檢測中受到廣泛關注[2]。近年來,對于小目標交通標志的檢測,注意力機制在深度學習領域受到廣泛關注和運用。文獻[3]使用改進的YOLOv5 算法通過改進特征金字塔深度等方法提升了檢測精度,但實時檢測速度下降。文獻[4]中采用自適應關注模塊,降低特征圖生成過程中的信息遺失,優(yōu)化模型在檢測小尺度交通標志方面的性能。盡管上述方法在提高交通標志檢測準確性方面取得了進展,但目前的算法仍存在不同環(huán)境條件下,小目標交通標志的檢測難度增加,容易出現(xiàn)不易檢測或錯檢問題。
為了提高小目標的檢測精度,并兼顧模型大小和檢測速度,本文開發(fā)了一種基于融合注意力機制的改進YOLOv5 方案,用于交通標志小目標的檢測,具體包括以下三個內容:①在主干網(wǎng)絡融入CBAM 卷積注意力模塊,利用其通道和空間注意力子模塊來增強特征提取的效果,進而提升目標檢測的性能。②在頸部網(wǎng)絡特征融合模塊中,引入加權雙向特征金字塔網(wǎng)絡BiFPN,以融合不同尺度的特征并綜合位置與語義信息,進一步提升檢測性能。③采用SIoU 損失函數(shù),著重關注高質量的分類樣本,以提高算法對不同環(huán)境下樣本的學習能力進一步提升檢測性能。
YOLOv5 是一種單步目標檢測算法,它通過改變深度和寬度來分為YOLOv5s、YOLOv5m、YOLOv5l 和YOLOv5x不同的模型,可應用于各種檢測需求[5]。該網(wǎng)絡結構包含輸入端、主干網(wǎng)絡、頸部網(wǎng)絡和輸出端四個部分。
卷積注意力機制CBAM(Convolutional Block Attention Module)是由包括通道注意力模塊CAM(Channel Attention Module)和空間注意力模塊SAM(Spatial Attention Module)構成的一種卷積注意力機制[6]。應用于主干網(wǎng)絡中,用于增強特征提取過程中的通道和空間信息,如圖1 所示。
圖1 卷積注意力機制CBAM
通道注意力模塊CAM 可以自適應地調整不同通道的權重,讓模型更加關注重要的通道特征,從而增強模型的表示能力,CAM 模塊如圖2 所示。在CAM 模塊之后,空間注意力模塊SAM 則利用卷積操作在特征圖上實現(xiàn)空間感知,圖3 說明了計算過程。本文通過將CBAM 添加到骨干網(wǎng)絡的最后,并用其替換第一個C3 結構,提高網(wǎng)絡的特征提取效果和模型識別準確度。
圖2 通道注意力模塊CAM
圖3 空間注意力模塊CAM
FPN(Feature Pyramid Network)利用特征金字塔結構,有助于整合高級語義信息和底層細節(jié)信息[7],如圖4(a)所示,原始的金字塔結構通過自頂向下的特征傳遞來提取更準確的特征表示。然而,多次下采樣操作會導致圖像中的細節(jié)和低層次信息丟失,影響小尺寸目標的檢測效果。為了解決這個問題,YOLOv5 采用了PANet(Path Aggregation Network)結構,如圖4(b)所示,該結構在FPN 的基礎上引入了上采樣和下采樣分支,通過自上而下和自下而上的路徑傳遞特征來提高目標檢測效果。為了進一步提高特征金字塔網(wǎng)絡在交通標志檢測中的表現(xiàn),改進模型在YOLOv5的Neck 網(wǎng)絡引入了加權雙向BiFPN(Bi-directional Feature Pyramid Network),通過加權處理不同尺度的特征并同時進行自頂向下和自底向上的信息傳遞,以優(yōu)化模型在不同尺度目標上的檢測效果。如圖4(c)所示,為實現(xiàn)雙向跨尺度特征融合,刪除了PANet 中只有一個輸入的節(jié)點,并將連接原始輸入與同級輸出實現(xiàn)跨尺度的特征融合,提高檢測算法的準確性。
圖4 YOLOv5 特征金字塔結構
在目標定位領域,為了解決預測框與真實框之間的角度匹配問題,本文引入了一種新的損失函數(shù)——SIoU(Scale-Invariant Intersection over Union)[8]。該損失函數(shù)的設計考慮了距離、形狀和角度等多個因素,并由預測框與真實框的角度、距離和形狀以及傳統(tǒng)IoU 的四部分損失組成,以實現(xiàn)在不同尺度和大小下預測框與真實框之間的準確匹配。通過采用SIoU 損失替代傳統(tǒng)的CIoU 損失函數(shù),可以更加專注于真實框與預測框的角度和位置信息,從而增強目標檢測算法在更為復雜和多變的場景中的適應性,提高算法的準確性、魯棒性和穩(wěn)定性。
為了提高交通標志的識別準確率和定位精度,提出了一種改進的交通標志檢測方法,基于CBMA 注意力機制和BiFPN 的改進后的YOLOv5 模型展示在圖5 中。
圖5 改進后的YOLOv5 模型
實驗設置可以參考表1。
表1 實驗環(huán)境配置
為了驗證本文改進算法的效果,選擇中國交通標志檢測數(shù)據(jù)集(CCTSDB)作為實驗的數(shù)據(jù)來源[9]。該數(shù)據(jù)集包含來自中國部分城市道路和高速公路的交通標志圖片,涵蓋了不同的尺度、角度、光照條件,以及標注不明顯的情況。總共收錄了15,724 張圖片。為簡化實驗過程,本文從中選取了5000 張圖片作為實驗數(shù)據(jù)集,其中4000 張用于訓練,另外1000 張用于測試。經(jīng)過劃分,實驗數(shù)據(jù)集被分為了三個不同的類別:Mandatory、Prohibitory 和Warning。
本文主要采用兩個評價指標來評估算法的性能:檢測精度和檢測速度。其中,檢測精度用于評估算法在目標準確定位和分類方面的能力,主要通過計算精確率(P)、召回率(R)和平均精度均值(mAP)來衡量模型的檢測能力。對于檢測速度,通常使用每秒傳輸幀數(shù)(FPS)作為性能指標進行評估。
3.4.1 消融實驗結果與分析
為了驗證基于YOLOv5 的交通標志檢測算法的有效性,在CCTSDB 數(shù)據(jù)集上進行了消融實驗,以評估不同的改進方式對交通標志檢測算法性能的影響。通過對實驗結果的統(tǒng)計分析,能夠得出對于YOLOv5 等交通標志檢測算法,不同的改進方式對模型性能的有效性進行評估。具體數(shù)據(jù)見表2。對比YOLOv5 算法后,發(fā)現(xiàn)原算法存在檢測性能低、誤檢和漏檢等問題。為此,本文提出了多種改進方法,并在相同的實驗條件下進行對比。首先,將卷積注意力模塊CBAM 引入到YOLOv5 模型中,改進后的模型相較于原模型,在mAP 值上提升了5.5%。在YOLOv5 的特征金字塔模塊引入了BiFPN 模塊,改進后的模型在mAP 值上獲得了0.6%的提升,同時略微減少了參數(shù)量。最后,通過優(yōu)化損失函數(shù)SIOU,將模型的mAP 值提升了0.5%,而對參數(shù)量和檢測速度沒有顯著影響。綜合以上改進方法,本文提出的改進的YOLOv5 模型相較于原模型,在相同的實驗條件下,mAP 值提升了6.7%,參數(shù)量減少了0.86×106,檢測速度為63.13FPS。這一改進使得交通標志檢測算法具備更少參數(shù)、更高平均精度和更快速度的特點。
表2 消融實驗
3.4.2 與其它算法對比分析
研究使用CCTSDB 數(shù)據(jù)集進行了改進后模型與其他網(wǎng)絡模型在交通標志識別性能方面的對比實驗。實驗包括了Faster R-CNN、YOLOv4、YOLOv8、SSD 等主流算法,以及參考文獻中提及的其他模型(文獻[10]和文獻[11])。根據(jù)表3 展示的實驗數(shù)據(jù),與YOLOv4 相比,本文改進的算法在mAP 上提升了9%,并且參數(shù)量減少了2.77×106。此外,改進后的算法在檢測速度方面也有顯著提升。相較于SSD模型,新的算法在指標方面有所提升,同時達到了實時檢測的要求。此外,優(yōu)化的模型在在mAP 和參數(shù)量方面取得了最佳表現(xiàn),分別達到了93.6%和6.34×106,并且處理速度高達63.13FPS,展現(xiàn)出優(yōu)異的性能。因此,該模型非常適用于路標的識別,并可有效運行在嵌入設備上。
表3 不同算法檢測交通標志性能對比
3.4.3 檢測效果對比
為了評估改進算法在交通標志檢測方面的性能,本文從網(wǎng)絡中隨機選擇了不同尺寸的交通標志圖片,并進行了比較。此外,還將檢測場景考慮到了不同的天氣條件下,包括白天晴朗、夜晚雨雪以及白天霧霾,檢測效果對比部分實驗結果如圖6 所示。
圖6 不同尺寸交通標志的檢測效果
通過比較結果得出,當涉及到不同尺寸的目標時,改進模型展現(xiàn)了更高的置信度,尤其在大目標和中目標的檢測中,無論是簡單目標檢測還是多目標檢測,兩種模型都能夠正確識別目標,改進模型在置信度方面稍微優(yōu)于原始YOLOv5。在不同天氣環(huán)境下的實驗中,在白天晴朗的情況下,兩種模型都能夠準確檢測出交通標志,改進模型的置信度相對更高。在白天霧霾天氣下,改進模型能夠檢測出更多的標志,而原始模型存在一定的漏檢和誤檢。最后,在夜晚雨雪條件下的檢測中,改進模型沒有產(chǎn)生誤檢,而原始模型存在誤檢的情況。
針對現(xiàn)有交通標志檢測方法存在的問題,本文提出了一種改進的交通標志檢測算法,利用了YOLOv5 作為主干網(wǎng)絡,并引入了CBAM 注意力機制進行特征融合。此外,網(wǎng)絡還采用BiFPN 結構和IoU 損失函數(shù)來加強檢測頭部的性能,有效解決了錯檢、漏檢和低精度等問題。通過在CCTSDB 數(shù)據(jù)集上訓練,實現(xiàn)了性能的顯著提升,實驗結果顯示,優(yōu)化后的算法在mAP 表現(xiàn)較好,達到了93.6%,同時保持著穩(wěn)定的檢測幀率為63.13FPS,參數(shù)量為6.3×106,表現(xiàn)令人滿意。相較于主流目標檢測模型,改進模型具有模型體積小、檢測精度高、推理速度較快等優(yōu)勢,能夠滿足實時交通標志檢測的需求。未來的工作將會將本文方法搭載在嵌入式平臺上,并應用于實際交通標志檢測工程中。