羅建晨 楊蕾
摘 ?要:在智能交通系統(tǒng)中,車輛目標(biāo)檢測有廣泛應(yīng)用。為了提高車輛目標(biāo)檢測性能,采用基于FPN的YOLOv3算法進(jìn)行車輛多目標(biāo)檢測,并且通過添加注意力機(jī)制模塊進(jìn)行網(wǎng)絡(luò)優(yōu)化,提出了一種基于空間注意力機(jī)制SAM的YOLOv3車輛多目標(biāo)檢測優(yōu)化算法,并在所構(gòu)造的車輛多目標(biāo)數(shù)據(jù)集上對提出的算法進(jìn)行了驗證,證明其對車輛多目標(biāo)檢測的優(yōu)勢。實驗表明,優(yōu)化后的檢測算法相比原檢測算法模型參數(shù)量降低了55.36%,mAP值提升了1.15%,優(yōu)于原檢測算法。
關(guān)鍵詞:車輛目標(biāo)檢測;注意力機(jī)制;YOLOv3;SAM
中圖分類號:TP391.4 ? ?文獻(xiàn)標(biāo)識碼:A ? ? 文章編號:2096-4706(2021)06-0103-04
Research on Vehicle Target Detection Algorithm Based on Attention Mechanism
LUO Jianchen,YANG Lei
(School of Electronic and Information,Zhongyuan University of Technology,Zhengzhou ?450007,China)
Abstract:Vehicle target detection is widely used in intelligent transportation system. In order to improve vehicle target detection performance,the FPN-based YOLOv3 algorithm is used for vehicle multi-target detection,and the attention mechanism module is added to optimize the network. An optimized YOLOv3 vehicle multi-target detection algorithm based on spatial attention mechanism(SAM)is proposed. The proposed algorithm is verified on the constructed vehicle multi-target dataset,which proves its advantage in multi-target vehicle detection. The experimental results show that compared with the original detection algorithm,the model parameters of the optimized detection algorithm are reduced by 55.36%,and the mAP value is increased by 1.15%,which is better than the original detection algorithm.
Keywords:vehicle target detection;attention mechanism;YOLOv3;SAM
0 ?引 ?言
目標(biāo)檢測是計算機(jī)視覺的一個重要研究方向,是一種基于目標(biāo)特征的圖像分類和識別方法。在對交通目標(biāo)進(jìn)行動態(tài)檢測和跟蹤的智能化交通系統(tǒng)中具有廣泛的應(yīng)用價值,如車速智能監(jiān)控與測量、自動駕駛行為識別等[1]。由于目標(biāo)檢測算法對不同目標(biāo)的適應(yīng)性不同,故需要選擇適于交通目標(biāo)檢測的檢測算法,并對其進(jìn)行優(yōu)化研究。
現(xiàn)代目標(biāo)檢測算法是基于卷積神經(jīng)網(wǎng)絡(luò)(Convolutional Neural Network,CNN)的,旨在通過自動學(xué)習(xí)圖像高層特征,從圖像中檢測出感興趣的目標(biāo),準(zhǔn)確判斷出每個目標(biāo)的類別,并用檢測框標(biāo)記出每個目標(biāo)所在的位置[2]。
特征提取主干網(wǎng)絡(luò)是目標(biāo)檢測網(wǎng)絡(luò)的基礎(chǔ),其作用是生成反映不同層次圖片信息的、具有不同尺度的特征圖,其中,低層特征圖分辨率高,位置信息準(zhǔn)確,可以較好地關(guān)注小目標(biāo)的特征,但是包含的語義信息不豐富;高層特征圖分辨率低,包含的語義信息豐富,可以充分地提取大目標(biāo)的特征,但是位置信息粗糙、容易忽略小目標(biāo)。在交通目標(biāo)檢測的應(yīng)用場景中,由于車速較快,車輛及車輛上的檢測目標(biāo)在視頻圖像中的大小會迅速變化,這構(gòu)成一個多尺度變化的目標(biāo)檢測問題,因此需要選取恰當(dāng)?shù)奶卣鲗永梅绞健?/p>
根據(jù)特征圖的利用方式不同,目標(biāo)檢測網(wǎng)絡(luò)分為三類:基于單層特征圖、基于金字塔型特征層級、基于特征金字塔網(wǎng)絡(luò)(Feature Pyramid Network,F(xiàn)PN)[3]?;趩螌犹卣鲌D的目標(biāo)檢測網(wǎng)絡(luò)僅使用單個最高層特征圖進(jìn)行預(yù)測,檢測速度快,但是僅利用最后一層高層特征,分辨率低,不利于小目標(biāo)檢測。基于金字塔型特征層級的目標(biāo)檢測網(wǎng)絡(luò)利用多個不同層次、不同尺度的特征圖進(jìn)行預(yù)測,檢測速度快,但是沒有使用已經(jīng)計算出的低層高分辨率特征圖,也不利于小目標(biāo)檢測?;贔PN的目標(biāo)檢測算法利用多個不同層次、不同尺度的特征圖,對每一層的特征圖分別自上而下進(jìn)行特征融合,使新的特征圖包含高層特征圖的信息,充分補(bǔ)充低層的語義信息,獲得高分辨率、語義信息豐富的特征,能出色完成小目標(biāo)檢測的任務(wù),更適于完成交通目標(biāo)檢測的任務(wù)。
注意力機(jī)制符合人腦和人眼的感知機(jī)制,本質(zhì)是更加關(guān)注感興趣的信息,抑制無用信息。注意力模塊分為空間注意力模塊、通道注意力模塊、混合注意力模塊三類,其中,空間注意力模塊的任務(wù)是尋找單層特征中包含有效信息的2D空間位置,通道注意力模塊的任務(wù)是尋找不同特征通道中包含有效信息的通道位置,混合注意力模塊的任務(wù)是同時尋找不同特征通道中包含有效信息的通道位置以及每個通道中包含有效信息的2D空間位置[4,5]。在目標(biāo)檢測網(wǎng)絡(luò)中,可以使用注意力模塊對網(wǎng)絡(luò)結(jié)構(gòu)進(jìn)行優(yōu)化,將更多的權(quán)重分配給包含有效信息的區(qū)域,同時減小包含干擾信息區(qū)域的權(quán)重,從而進(jìn)一步提高交通目標(biāo)檢測的精度。
本文面向交通目標(biāo)檢測的應(yīng)用場景,優(yōu)選了一種基于FPN的YOLOv3車輛多目標(biāo)檢測算法,然后又提出了一種基于空間注意力機(jī)制(Spatial Attention Mechanism,SAM)的YOLOv3車輛多目標(biāo)檢測優(yōu)化算法,并在所構(gòu)造的車輛多目標(biāo)數(shù)據(jù)集上對提出的算法進(jìn)行了驗證,證明其對車輛多目標(biāo)的檢測性能優(yōu)于現(xiàn)有算法。
1 ?車輛多目標(biāo)數(shù)據(jù)集構(gòu)造
本文訓(xùn)練使用的數(shù)據(jù)集是車輛多特性數(shù)據(jù)集,數(shù)據(jù)集由四部分構(gòu)成,分別是OpenITS數(shù)據(jù)集、BIT Vehicle數(shù)據(jù)集、CCPD數(shù)據(jù)集和本實驗室自主采集的數(shù)據(jù)集。從Open ITS數(shù)據(jù)集[6]中隨機(jī)選擇了6 103張分辨率為1 600×1 200的車輛圖片、從BIT Vehicle數(shù)據(jù)集[7]中隨機(jī)選擇了1 921張分辨率為1 920×1 080的車輛圖片、從CCPD[8]數(shù)據(jù)集中隨機(jī)選擇了280張分辨率為720×1 160的車輛圖片,用尼康相機(jī)d3200 SLR采集了3 351張分辨率為6 000×4 000的車輛圖片,并且用??低晹z像頭MV-CA050-11UC采集了480張分辨率為2 448×2 048的車輛圖片,共12 135張車輛圖片。
2 ?基于注意力機(jī)制的YOLOv3車輛多目標(biāo)檢測算法
基于FPN的目標(biāo)檢測算法適合解決交通目標(biāo)檢測應(yīng)用場景中多尺度變化的目標(biāo)檢測問題。因此,選擇基于FPN的目標(biāo)檢測算法對車輛及其上的多個目標(biāo)進(jìn)行檢測,其中,YOLOv3以更高的檢測速度和精度,成為優(yōu)先選擇的網(wǎng)絡(luò),圖1是基于YOLOv3的車輛多目標(biāo)檢測算法原理框圖。
輸入的車輛場景圖片經(jīng)過特征提取主干網(wǎng)絡(luò)Darknet53提取特征,提取的特征經(jīng)過FPN結(jié)構(gòu)完成不同尺度特征圖的融合,最終利用13×13,26×26,52×52三個不同尺度的特征圖進(jìn)行預(yù)測,獲得車輛多特性的檢測框、類別和置信度。
Darknet53一共有23個殘差模塊,殘差模塊如圖2所示,殘差單元能有效解決網(wǎng)絡(luò)層數(shù)增多時出現(xiàn)的梯度消失和過擬合現(xiàn)象。CBL模塊由Conv函數(shù)、標(biāo)準(zhǔn)化(Batch Norma-lization)和LReLU(Leaky-ReLU)激活函數(shù)構(gòu)成,如圖3所示。殘差單元的結(jié)構(gòu)如圖4所示,輸入的特征圖經(jīng)過兩次卷積操作之后與原特征圖相加。
在圖3中的CBL模塊中,卷積核的尺寸為3×3和1×1,假設(shè)卷積核對應(yīng)的輸入維度為Cin,輸出維度為Cout,需要的總參數(shù)量為Cin×Cout×3×3+Cin×Cout×1×1。為了減少參數(shù)量,本文分別采用空間注意力模塊SAM、通道注意力模塊SE、混合注意力模塊CBAM代替常規(guī)的卷積模塊,對YOLOv3車輛多目標(biāo)檢測算法的網(wǎng)絡(luò)結(jié)構(gòu)進(jìn)行了改進(jìn),如圖5所示。
3 ?實驗與結(jié)果分析
在訓(xùn)練模型的時候,為了控制變量對比模型的性能,將每次模型訓(xùn)練的epoch設(shè)置為相同,并且使用相同的數(shù)據(jù)集。模型訓(xùn)練參數(shù)如表1所示。本文進(jìn)行訓(xùn)練時所使用的GPU是技嘉GeForce GTX 2080Ti,顯存為11 GB,CPU是Intel E5 2678 V3。
從表2可以看出,在模型尺寸都為416×416的情況下,YOLOv3的模型參數(shù)量為236.32 MB;SAM-YOLOv3的模型參數(shù)量為105.50 MB,模型壓縮了55.36%;SE-YOLOv3的模型參數(shù)量為108.80 MB,模型壓縮了53.96%;CBAM-YOLOv3的模型參數(shù)量為112.12 MB,模型壓縮了52.56%,由以上數(shù)據(jù)可知SAM-YOLOv3的模型參數(shù)量最小。
在實驗過程中,選擇相同的模型訓(xùn)練參數(shù),用于衡量檢測準(zhǔn)確性的指標(biāo)包括:Precision、Recall、AP(Average Precision)。其中,Precision是精確率,表示模型檢測結(jié)果中正確的目標(biāo)樣本所占的比率;Recall表示召回率,表示目標(biāo)正樣本被正確檢測的占總體樣本的比率,如式(1)和(2)所示:
(1)
(2)
AP綜合考慮了Precision和Recall的變化,等于Precision- Recall曲線所包圍的面積,如式(3)所示:
(3)
mAP等于所有物體的類的AP之和與所有物體類別的總和的比值,如式(4)所示:
(4)
用于衡量檢測效率的指標(biāo)是FPS,即模型每秒鐘可以處理的圖片數(shù)量。
實驗結(jié)果如表3所示??梢钥闯觯瑥膶φ?、車牌、車燈、車鏡的檢測AP分析,SAM-YOLOv3的檢測性能明顯優(yōu)于YOLOv3;從對車標(biāo)的檢測AP分析,SAM-YOLOv3的檢測性能略低于YOLOv3;但從mAP分析,SAM-YOLOv3的平均檢測性能明顯優(yōu)于YOLOv3,也明顯優(yōu)于作為對比的SE-YOLOv3和CBAM-YOLOv3;從FPS分析,SAM-YOLOv3的檢測速度明顯優(yōu)于YOLOv3,也明顯優(yōu)于作為對比的SE-YOLOv3和CBAM-YOLOv3。
綜上所述,SAM-YOLOv3檢測算法性能和檢測速度均優(yōu)于YOLOv3,也均優(yōu)于對比算法SE-YOLOv3和CBAM-YOLOv3。因此,通過實驗驗證確定并提出了該基于SAM的YOLOv3車輛多目標(biāo)檢測優(yōu)化算法。
4 ?結(jié) ?論
車輛目標(biāo)的正確檢測對智能交通監(jiān)控系統(tǒng)有重大意義。在行駛過程中不同距離處的車輛目標(biāo)存在多尺度問題,給準(zhǔn)確檢測帶來了巨大挑戰(zhàn)。本文針對此問題選擇了基于FPN型的YOLOv3作為車輛目標(biāo)的目標(biāo)檢測算法;然后在所選的YOLOv3車輛目標(biāo)檢測算法的基礎(chǔ)上,融合了SAM進(jìn)行優(yōu)化,提出了一種基于SAM的YOLOv3車輛目標(biāo)檢測算法,并通過實驗結(jié)果驗證了所提出的算法在模型參數(shù)量縮減、模型檢測精度改善、模型檢測效率提高方面所表現(xiàn)出的優(yōu)勢。
參考文獻(xiàn)
[1] 肖雨晴,楊慧敏.目標(biāo)檢測算法在交通場景中應(yīng)用綜述 [J].計算機(jī)工程與應(yīng)用,2021,57(6):30-41.
[2] JIAO L C,ZHANG F,LIU F,et al. A Survey of Deep Learning-based Object Detection [J].IEEE Access,2019,7:128837-128868.
[3] LIN T Y,DOLLAR P,GIRSHICK R,et al. Feature Pyramid Networks for Object Detection [C]//2017 IEEE Conference on Computer Vision and Pattern Recognition (CVPR).Honolulu:IEEE,2017:936-994.
[4] HU J,SHEN L,SAMUEL A,et al. Squeeze-and-Excitation Networks [J].IEEE Transactions on Pattern Analysis and Machine Intelligence,2020,42(8):2011-2023.
[5] WOO S,PARK J,LEE J Y,et al. CBAM:Convolutional Block Attention Module [C]//ECCV:European Conference on Computer Vision.Munich:Springer,2018:3-19.
[6] OpenITS. OpenData V11.0-車輛重識別數(shù)據(jù)集 VRID [EB/OL].[2021-02-11].https://www.openits.cn/openData4/ 748.jhtml.
[7] DONG Z,WU Y W,PEI M T,et al. Vehicle Type Classification Using a Semisupervised Convolutional Neural Network [J].IEEE Transactions on Intelligent Transportation Systems,2015,16(4):2247-2256.
[8] XU Z B,YANG W,MENG A J,et al. Towards End-to-End License Plate Detection and Recognition:A Large Dataset and Baseline [C]//ECCV:European Conference on Computer Vision.Munich:Springer,2018:261-277.
作者簡介:羅建晨(1993—),男,漢族,河南信陽人,碩士研究生在讀,主要研究方向:計算機(jī)視覺,深度學(xué)習(xí);楊蕾(1979 —),女,回族,河南洛陽人,教授,博士,主要研究方向:圖像處理,計算機(jī)視覺。