白云 羅鈺



摘? 要:針對城市道路的交通標志在真實路況中存在光照不均、遮擋等因素導致的在目標檢測任務中出現參數量過多、檢測速度慢等問題,文章基于原有YOLOv5s的網絡框架提出一種改進后的目標檢測網絡Shuffle-Block,首先選用開源的CCTSDB數據集進行實驗,引入Shuffle-Block模塊替換YOLOv5s原始的CSPDarknet主干網絡,使得YOLOv5s的網絡模型輕量化,降低模型的復雜程度。
關鍵詞:YOLOv5s;交通標志;深度學習;目標檢測
中圖分類號:TP183;TP391.41 文獻標識碼:A 文章編號:2096-4706(2023)12-0006-04
Traffic Sign Detection Algorithm Based on Improved YOLOv5s
BAI Yun, LUO Yu
(School of Aviation, Inner Mongolia University of Technology, Hohhot? 010051, China)
Abstract: In response to the problems of excessive parameter count and slow detection speed in object detection tasks caused by uneven lighting and occlusion of traffic signs on urban roads in real road conditions, this paper proposes an improved object detection network Shuffle-Block based on the original YOLOv5s network framework. Firstly, the open-source CCTSDB dataset is selected for experiment, and the Shuffle-Block module is introduced to replace the original CSPDarknet backbone network of YOLOv5s, make YOLOv5s network model lightweight and reduce the complexity of the model.
Keywords: YOLOv5s; traffic sign; deep learning; object detection
0? 引? 言
近年來,我國城鄉公路建設發展迅速,機動車保有量大幅增長。但是人們對交通的道路安全意識淡薄,且真實路況中交通標志被遮擋、光照不均等外界因素,造成交通事故頻頻發生,交通安全成為當今社會的一個重要問題。交通標志檢測作為智能交通系統中的重要組成部分,主要應用在自動駕駛輔助系統[1](Automatic Driving Assistance System, ADAS)、因素非常多,如光照條件、部分遮擋等,因此交通標志檢測是一項具有挑戰的研究方向。
目前,由于深度學習的不斷發展,目標檢測技術[2]也在不斷更新。Han等人[3]提出一種刪除低于閾值的連接的剪枝策略,使得網絡的連接稀疏,從而降低網絡的復雜度。Li等[4]對每層卷積中低于閾值的通道進行裁剪操作,達到壓縮模型的目的。邱天衡等[5]提出交通控制、自主駕駛等領域。隨著深度學習的興起,目標檢測任務得到了極大的發展,其任務是在圖像或視頻中顯示出交通標志的類別和位置,但影響檢測的因出了一種改進特征融合結構的YOLOv5算法模型,并且降低了網絡的參數量和計算量,在提升模型檢測精度的同時保持了模型的輕量化。郭磊等[6]提出了一種針對小目標檢測的YOLOv5算法模型,在小目標物體檢測上具有更強的特征提取能力和更高的檢測精度。
深度學習算法在目標檢測上的表現優異,給交通標志檢測帶來了更多的可能性。本文選用YOLOv5s模型結合Shuffle-Block輕量級網絡進行實驗,在減少參數量和計算量等方面都有著相當不錯的表現。
1? 輕量化網絡簡介
輕量化網絡的技術不止一個方向,它們之間相互獨立又相互補充,合理的設計網絡結構能夠起到很好的互補作用。輕量化模塊設計主要是圍繞更輕便的計算單元展開,和常規卷積操作相比擁有更少的參數量和計算量。YOLOv5s模型的主干網絡采用CSPDarknet53結構,該結構參數量較多,且網絡層數復雜。因此,對主干網絡進行裁剪或替換,實現YOLOv5s的輕量化設計。
根據網絡的結構層次,可以將輕量化網絡劃分為模型的輕量化結構設計和模型壓縮兩大類,輕量化結構設計是在設計模型時就遵從輕量化思想,模型壓縮是在原有的模型基礎上,例如減少卷積數量、增加網絡的并行度、采用深度可分離卷積等[7],列出了近年來比較優秀的輕量化網絡,主要有Squeeze Net、Mobile Net系列、Shuffle Net系列、Ghost Net等。
谷歌公司在2017年輕量化網絡中首次提出了一種將圖像通道和圖像區域分開處理的深度可分離卷積概念。深度可分離卷積分由深度卷積(Depth Wise convolution, DW conv)和逐點卷積(Point Wise convolutions, PW conv)結合而成。在幾乎不影響精度的情況下深度可分離卷積可以大幅度降低網絡的計算量以及每秒浮點運算次數(FLoating point OPerations per Second, FLOPS)。對于傳統的卷積運算,在進行卷積運算時需要同步考慮圖像區域中的所有通道,從而導致計算量增加,模型參數復雜。
在卷積核大小為wF×hk普通卷積中,卷積核的深度與輸入特征矩陣深度相同為M,卷積核個數與輸出特征矩陣深度相同為N,整個運算過程中共有個wF×hk×M×N卷積核,每個卷積核都要經過Dw×Dh次運算。如圖1為傳統的卷積過程,其運算計算量Fconv可以如式(1):
Fconv = wF×hk×M×N×Dw×Dh? ? ? ? ? ? ? ?(1)
在深度卷積階段,只需要1個卷積核大小為wk×hk深度為M的卷積核;在逐點卷積階段,需要N個卷積核大小為1×1深度為N的卷積核,深度卷積和逐點卷積的每個卷積核都需要經過Dw×Dh次運算。如圖2為深度分離卷積的過程,其計算量Fdc如式(2):
Fdc = wk×hk×M×Dw×Dh + M×N×Dw×Dh? ? ?(2)
深度可分離卷積與傳統卷積的計算量之比R如式(3):
從傳統卷積與深度可分離卷積的計算量和參數量之間可以得到,在相同的計算效果下,無論是參數量還是計算量都比傳統卷積極大減少了模型的計算量。Shuffle-Block中特征提取組件使用的是深度可分離卷積,而深度可分離卷積則更加適合在嵌入式設備上部署運行。
2? 改進的YOLOv5s檢測算法
2.1? 輕量化網絡
隨著深度學習技術的發展,交通標志的檢測朝著自動化、智能化的方向發展,深度學習算法對交通標志有著優異的檢測性能,可實現傳統方法難以達到的檢測效果。YOLOv5s作為開源的目標檢測網絡與同一系列目標檢測網絡相比,在速度和精度上有著明顯的優勢。由于YOLOv5s在初始模型的特征階段對目標的檢測效果非常差,網絡模型體積較大,參數量多,對硬件要求高且不能再在移動端部署。針對以上情況,本文提出了一種改進YOLOv5s的輕量化檢測算法。
2.2? 引入輕量化
圖3為Shuffle-Block在網絡結構中重新設計了兩種核心模塊,如圖3(a)大小不變單元所示,主要用于提取特征同時保持特征圖的大小。首先,在進行卷積操作前,使用通道分割(Channel Split, CS)將輸入通道分為兩個分支,左分支不進行處理,右分支分別進行深度卷積等一系列處理,再將左分支的通道與右分支卷積輸出特征進行融合并進行通道混洗,使各分支間的特征信息得以交流,從而加強兩通道之間的圖像信息融合;如圖3(b)2倍下采樣單元所示,主要對圖像特征進行2倍下采樣,左右分支都進行了降采樣操作,且兩個分支上的普通卷積均改為了深度可分離卷積,大幅減少了計算量,加快了模型的訓練速度,達到輕量化模型的目的。
為了減少原YOLOv5s的計算量,本文選用Shuffle-Block來構建主干網絡,使其現有的網絡層數少于YOLOv5s網絡使用的Darknet53結構,一方面參數量減少,另一方面模型大小也壓縮了,從而實現網絡輕量化。
本文檢測算法整體網絡結構為端到端的一階段網絡YOLO結構,分為輸入端、主干網絡、頸部網絡和輸出端等五個部分,輸入端像素大小為416×416、RGB通道的交通標志圖像,主干網絡被稱為特征提取網絡,本文由Shuffle-Block網絡的前半部分結構構成,從而使得其功能組件,在移動端嵌入式設備上實現交通標志檢測,頸部網絡的主要作用是進行特征融合,本文將深層的特征圖經過上采樣與中層特征信息進行融合,這樣可以更好地融合淺層的位置信息和深層的語義信息從而提升模型的檢測能力。
3? 實驗及結果分析
3.1? 實驗數據
本文以交通標志為研究對象,因開源數據集CCTSDB來源于車載攝像頭、城市道路、高速公路等多個復雜交通場景[8]與真實路況相近,選用該數據集進行實驗。在該數據集中用LabelImg標注工具將數據集的標簽細分為Prohibitory、Speed limit、Warning、Mandatory四個大類。
3.2? 實驗環境和訓練方法
本文模型的訓練和測試均在Ubuntu操作系統上完成,實驗的初始學習率為0.01,循環學習率為0.2,IoU訓練的閾值設置為0.2,batch-size設置為16,總訓練的試驗次數為200輪。
具體實驗環境配置如表1所示。
為了突出模型具有良好的有效性和普適性,使用YOLOv5s中原有的Mosaic數據增強方法,對輸入圖像特征進行隨機裁剪、縮放、排布的方式進行拼接,之后輸入網絡進行訓練。Mosaic是對CutMix的改進版,Mosaic通過對選出的四張圖片進行拼接,得到一張新的圖片之后,傳入神經網絡模型中進行學習,增強了檢測物體的有效信息,提高了網絡識別模型的穩定性,能夠減少對圖片錯誤信息標簽的識別,提高該模型的泛化性和魯棒性。如圖4為采用Mosaic數據增強后的圖像示例。
在上述實驗環境中在設置相同的batch-size,img-size,對改進后的模型及YOLOv5s模型進行對比實驗,分別以準確率(Precision)、召回率(Recall)、均值平均準確率(means Average Precision, mAP)對模型識別的效果進行評測。使用每秒傳輸幀數(Frame Per Second, FPS)對檢測速度進行評估。到模型訓練損失幾乎不降低的條件下停止訓練。
通過表2混淆矩陣來計算精確率與召回率。
召回率是指在真實情況下正樣本中預測結果為正樣本的比例,能夠衡量模型的漏檢程度。計算公式為:
精確率是指預測結果中正樣本中真實情況為正樣本的比例,能夠衡量模型的錯檢程度。其計算公式為:
圖5為兩者的準確率曲線對比,改進后模型的準確率相對于YOLOv5s模型較低,但在經過100個epochs后仍能達到0.898,實現輕量化的同時也保證了模型的精度不變。
圖6為兩者的Recall曲線的對比。在經過130個epoch后,兩者的Recall趨于相同,改進后模型的Recall能達到0.898。
由實驗結果可知,經過兩者對比,本文選用Shuffle-Block來構建主干網絡,使其現有的網絡層數少于YOLOv5s網絡使用的Darknet53,一方面參數量大幅減少,另一方面模型大小也壓縮了,從而實現網絡輕量化。但是從檢測效果上觀察,如圖7所示,相比于YOLOv5s改進后的模型檢測效果略差,在網絡輕量化的同時,會出現檢測率識別低的情況。圖7(a)、(b)分別為自然場景下的YOLOv5s和改進后的模型檢測結果,對比發現改進后網絡識別模型的準確率低于YOLOv5s模型。
4? 結? 論
本文提出了一種基于YOLOv5s的輕量化交通標志檢測算法,主要對YOLOv5s的目標檢測網絡進行分析,使用Shuffle-Block對YOLOv5s中的主干網絡CSPDarknet53進行了替換,實現網絡輕量化設計,在開源數據集上驗證了所提出的算法可以在大幅降低計算量的同時保證了較高的檢測精度,相比YOLOv5s的參數量降低了58.7%,計算量降低了54.66%,但改進后的模型平均精度mAP降低了約2.1個百分點,達到0.898。因此,在后續研究中,模型滿足輕量化的同時,也要保證較高的檢測精度,使其可以更好地部署在移動端。
參考文獻:
[1] 楊港.混合交通環境自動駕駛系統測試方法研究 [D].吉林:吉林大學,2022.
[2] TAO X Y,GONG Y H,SHI W W,et al. Object Detection with Class Aware Region Proposal Network and Focused Attention Objective [J].Pattern Recognition Letters,2020,130:353-361.
[3] HAN S,POOL J,TRAN J,et al. Learning both Weights and Connections for Efficient Neural Network [J/OL].arXiv:1506.02626 [cs.NE].[2022-11-09].https://arxiv.org/abs/1506.02626v1.
[4] LI H,KADAV A,DURDANOVIC I,et al. Pruning Filters for Efficient Convnete [J/OL].arXiv:1608.08710 [cs.CV].[2022-11-09].https://arxiv.org/abs/1608.08710v2.
[5] 邱天衡,王玲,王鵬,等.基于改進YOLOv5的目標檢測算法研究 [J].計算機工程與應用,2022,58(13):63-73.
[6] 郭磊,薛為,王邱龍,等.一種基于改進YOLOv5的小目標檢測算法:CN202111382559.1 [P].2022-03-25.
[7] ZHU L,XIE Z H,LUO J,et al. Dynamic Object Detection Algorithm Based on Lightweight Shared Feature Pyramid [J/OL].Remote Sensing,2021,13(22):4610[2022-11-09].https://www.mdpi.com/2072-4292/13/22/4610.
[8] ZHANG J M,HUANG M T,JIN X K,et al. A Real-Time Chinese Traffic Sign Detection Algorithm Based on Modified YOLOv2 [J/OL].Algorithms,2017,10(4):127[2022-11-09].https://www.mdpi.com/1999-4893/10/4/127.
作者簡介:白云(1973—),男,漢族,內蒙古呼和浩特人,副教授,碩士研究生,研究方向:智能交通系統;羅鈺(1998—),
女,漢族,陜西咸陽人,碩士研究生在讀,研究方向:深度學習、圖像處理。
收稿日期:2022-12-29
基金項目:內蒙古自治區關鍵技術攻關計劃項目(2019GG271);內蒙古自治區直屬高?;究蒲袠I務費項目(JY20220227);內蒙古自治區高等學??茖W研究項目(NJZY22387);內蒙古工業大學科學研究項目(ZY202018)