尹靖涵,瞿紹軍*,姚澤楷,胡玄燁,秦曉雨,華璞靖
(1.湖南師范大學(xué)信息科學(xué)與工程學(xué)院,長沙 410081;2.湖南師范大學(xué)湘江人工智能學(xué)院,長沙 410081)
交通標(biāo)志識別(Traffic Sign Recognition,TSR)作為智能交通系統(tǒng)(Intelligent Transportation System,ITS)中的關(guān)鍵一環(huán),實(shí)現(xiàn)兼顧準(zhǔn)確性和實(shí)時(shí)性的交通標(biāo)志識別具有重要意義。交通標(biāo)志中包含道路狀況、駕駛環(huán)境、限速警告等重要語義信息,在智能車的路徑規(guī)劃、駕駛安全、車速調(diào)節(jié)等方面起到關(guān)鍵作用。隨著無人駕駛汽車的增加、輔助駕駛技術(shù)的普及,霧霾、雨雪等惡劣天氣對車載攝像頭、傳感器的干擾問題漸受關(guān)注,惡劣天氣下的交通標(biāo)志識別也成為一項(xiàng)重大挑戰(zhàn)。
文獻(xiàn)[1-2]中對受霧霾干擾的圖像采用人工預(yù)設(shè)強(qiáng)特征提取,結(jié)合分類器實(shí)現(xiàn)標(biāo)志識別;文獻(xiàn)[3-6]中對受干擾圖像亮度、對比度等屬性進(jìn)行增強(qiáng),減弱惡劣天氣干擾,改進(jìn)深度學(xué)習(xí)算法檢測標(biāo)志;文獻(xiàn)[7-9]中基于霧霾形成原理構(gòu)造物理模型,將圖像復(fù)原至人眼可觀察狀態(tài),構(gòu)造深度學(xué)習(xí)模型檢測特征;文獻(xiàn)[10-11]中將濾波網(wǎng)絡(luò)與深度學(xué)習(xí)網(wǎng)絡(luò)融合,構(gòu)建端到端的標(biāo)志識別系統(tǒng)。交通標(biāo)志識別算法將任務(wù)分解為前端濾波(或強(qiáng)特征提?。┖妥R別兩個(gè)階段,在惡劣天氣下獲得了良好的精度提升。濾波器指向性強(qiáng),由于天氣噪聲類型不同,針對霧霾天氣的濾波前端難以在雨雪或照明不良天氣下保持算法優(yōu)勢,反之亦然。如何克服濾波器局限性,建立可同時(shí)應(yīng)對多種惡劣天氣的交通標(biāo)志識別算法需深入研究。
文獻(xiàn)[12-16]中對深度學(xué)習(xí)方法在目標(biāo)檢測的研究進(jìn)展、代表性算法、常用數(shù)據(jù)集和性能評價(jià)指標(biāo)進(jìn)行了詳細(xì)的探討。陳飛等[17]對傳統(tǒng)方法與深度學(xué)習(xí)方法在交通標(biāo)志識別方面的研究現(xiàn)狀、算法原理、算法性能進(jìn)行了綜述,將算法應(yīng)用環(huán)境細(xì)分為霧霾、雨雪、復(fù)雜光照條件?;谏疃葘W(xué)習(xí)的目標(biāo)檢測算法根據(jù)是否具有區(qū)域選?。≧egion Proposal,RP)分為雙階段目標(biāo)檢測算法和單階段目標(biāo)檢測算法。雙階段目標(biāo)檢測算法先經(jīng)過RP 生成推薦候選框,再進(jìn)行類別、邊界回歸,對多目標(biāo)識別精度高,但計(jì)算開銷大、訓(xùn)練時(shí)間長,適用于云端、算力強(qiáng)設(shè)備,其代表有區(qū)域推薦卷積神經(jīng)網(wǎng)絡(luò)(Region Convolutional Neural Networks,RCNN)、高速區(qū)域推薦卷積神經(jīng)網(wǎng)絡(luò)(Fast Region Convolutional Neural Networks,F(xiàn)ast-RCNN)、超高速區(qū)域推薦卷積神經(jīng)網(wǎng)絡(luò)(Faster Region Convolutional Neural Networks,F(xiàn)aster-RCNN)。單階段目標(biāo)檢測算法采用網(wǎng)格單元代替RP 約束檢測框,對圖像直接檢測,算法速度快、可移植性好,但容易漏檢、精度偏低,適用于移動終端以及嵌入式設(shè)備,其代表有YOLO(You Only Look Once)、SSD(Single Shot mutibox Detector)、
Retina-Net。廖璐明等[18]提出了融合空間變化網(wǎng)絡(luò)與注意力機(jī)制構(gòu)造規(guī)模小、參量少的交通標(biāo)志識別系統(tǒng);林雪等[19]提出了采用LAOSS 回歸對VGG(Visual Geometry Group)模型剪枝,提高算法運(yùn)行速度;江金洪等[20]在YOLOv3 網(wǎng)絡(luò)中融合深度可分離卷積并改進(jìn)算法損失函數(shù),檢測精度獲得有效提升;Shen 等[21]提出了在特征金字塔中引入多尺度注意力機(jī)制以抑制背景特征干擾,改進(jìn)后模型可兼容實(shí)現(xiàn)多種規(guī)模的交通標(biāo)志識別;Xiao 等[22]提出了用ResNet101 替換成為YOLOv3 的主干網(wǎng)絡(luò),利用密集殘差網(wǎng)絡(luò)實(shí)現(xiàn)多層特征融合,解決小目標(biāo)特征易丟失、難以識別的問題,改進(jìn)后模型精度明顯提升;Yao 等[23]提出了一種適用于交通標(biāo)志識別的多尺度特征融合算法,在損失函數(shù)中引入高斯分布特征,將算法移植入Nvidia Jetson Tx2 平臺驗(yàn)證其檢測精度和實(shí)時(shí)性;陳名松等[24]提出了基于改進(jìn)CapsNet 的交通標(biāo)志識別模型,采用路由動態(tài)算法優(yōu)化特征傳遞,標(biāo)志位置、姿態(tài)信息被更好保留,模型收斂能力、識別精度都獲得了提升;孫偉等[25]將卷積神經(jīng)網(wǎng)絡(luò)(Convolutional Neural Networks,CNN)多層特征池化聯(lián)合成交通標(biāo)志特征向量,極限學(xué)習(xí)機(jī)分類器輸出向量最大值實(shí)現(xiàn)標(biāo)志檢測,克服了頂層特征局限性;王子鍵[26]改進(jìn)了SSD 模型,根據(jù)距離因素自適應(yīng)選擇負(fù)樣本,模型可更快向全局極值收斂,同時(shí)調(diào)整特征層數(shù)量、損失函數(shù),平均精度均值(mean Average Precision,mAP)指標(biāo)獲得明顯提升;Xu 等[27]提出了通過軟教師網(wǎng)絡(luò)實(shí)現(xiàn)端到端半監(jiān)督目標(biāo)檢測,選擇可靠的偽框進(jìn)行回歸學(xué)習(xí);Zhang 等[28]提出了在不同網(wǎng)絡(luò)分支上采用逐通道注意力機(jī)制,在不引入額外計(jì)算成本情況下,實(shí)現(xiàn)注意塊直接用于檢測任務(wù);Li 等[29]提出削減LeNet-5 網(wǎng)絡(luò)中的鏈接和計(jì)算,融合多層特征提高網(wǎng)絡(luò)泛化能力;Tai 等[30]提出了在空間金字塔中融合尺度分析,實(shí)現(xiàn)對多尺度目標(biāo)的同時(shí)學(xué)習(xí);Zhou 等[31]提出了可并行融合注意模塊的注意網(wǎng)絡(luò),并在德國交通標(biāo)志數(shù)據(jù)集中驗(yàn)證其魯棒性。殘差結(jié)構(gòu)、特征融合技術(shù)可以有效改善小目標(biāo)特征消失的問題,損失函數(shù)、超參數(shù)調(diào)整等方法可輔助模型擬合。
本文基于YOLOv5 模型,削減雙特征金字塔深度、限制最高下采樣倍數(shù)、強(qiáng)化小目標(biāo)特征、調(diào)整殘差模塊深度、抑制背景特征重復(fù)疊加,實(shí)驗(yàn)證明特征融合和殘差模塊的結(jié)合使用,給標(biāo)志識別帶來顯著增益。本文同時(shí)在模型中融合K-means 先驗(yàn)框、全局非極大值抑制(Global Non-Maximum Suppression,GNMS)等有助于精度提升的機(jī)制。在模型評估指標(biāo)方面,考慮到實(shí)際應(yīng)用特殊性,將模型識別速度也作為一項(xiàng)重要指標(biāo)。最后將不同模型在三種惡劣天氣增強(qiáng)數(shù)據(jù)集中測試分析,并將其中的霧霾天氣作為實(shí)驗(yàn)分析重點(diǎn),均取得了明顯的精確度提升,同時(shí)模型在輸入較大高清圖片時(shí)也能保持實(shí)時(shí)性。實(shí)驗(yàn)結(jié)果表明,本文改進(jìn)模型解決了模型在不同環(huán)境下復(fù)用困難問題,具備較強(qiáng)的抗環(huán)境干擾能力以及通用性,在不同惡劣天氣下均能保持識別精度。
原始YOLOv5 模型框架如圖1 所示,分為Backbone、Neck、Head 三大部分,模型規(guī)模由小到大有YOLOv5s、YOLOv5m、YOLOv5l 多個(gè)版本。
圖1 YOLOv5模型框架Fig.1 Framework of YOLOv5 model
Backbone 是YOLOv5 的骨干結(jié)構(gòu),由Focus、Conv、C3、空間金字塔池化(Spatial Pyramid Pooling,SPP)等模塊(如圖2所示)組成。Focus 模塊將輸入在縱向和橫向間隔切片再拼接,與卷積下采樣相比,F(xiàn)ocus 輸出深度提升4 倍,保留更多的圖像信息;Conv 為YOLOv5 的基本卷積單元,對輸入依次進(jìn)行二維卷積、正則化、激活操作;C3 由若干個(gè)Bottleneck 模塊組成,Bottleneck 為一種經(jīng)典殘差結(jié)構(gòu),輸入經(jīng)過兩層卷積層后與原始值進(jìn)行Add 操作,在不增加輸出深度的同時(shí)完成殘差特征傳遞;SPP 為空間金字塔池化層,SPP 對輸入執(zhí)行三種不同尺寸的最大池化操作,并將輸出結(jié)果進(jìn)行Concat 拼接,輸出深度與輸入深度相同。
圖2 YOLOv5主要模塊結(jié)構(gòu)Fig.2 Main module structures of YOLOv5
Neck 的核心為特征金字塔網(wǎng)絡(luò)(Feature Pyramid Networks,F(xiàn)PN)和路徑聚合網(wǎng)絡(luò)(Path Aggregation Networks,PAN)結(jié)構(gòu)。目標(biāo)特征根據(jù)內(nèi)容分為類別特征與位置特征,類別特征代表該目標(biāo)屬于前景或背景、屬于哪一類別,位置特征代表該目標(biāo)所處空間位置、邊界大小信息。卷積網(wǎng)絡(luò)中隨著卷積次數(shù)增加,特征層級由低層向高層轉(zhuǎn)變。低層特征接近圖像本身視覺內(nèi)容,低層特征內(nèi)大目標(biāo)的位置特征和小目標(biāo)的類別、位置特征突出;高層特征更加抽象,人無法直接理解,高層特征內(nèi)大目標(biāo)的類別特征豐富。FPN 和PAN 結(jié)構(gòu)實(shí)現(xiàn)高層特征與低層特征融合互補(bǔ):FPN 結(jié)構(gòu)將高層的大目標(biāo)的類別特征向低層傳遞;PAN 結(jié)構(gòu)將低層的大目標(biāo)的位置特征和小目標(biāo)的類別、位置特征向上傳遞,兩者互補(bǔ)并克服各自局限性,強(qiáng)化模型特征提取能力。
Head 為YOLOv5 的檢測結(jié)構(gòu),傳統(tǒng)CNN 只將最高層特征輸入檢測層,網(wǎng)絡(luò)存在一個(gè)普遍難題:小目標(biāo)特征在多層傳遞后丟失導(dǎo)致難以識別。YOLOv5 將三種不同大小的特征輸入Detect 模塊,分別針對大、中、小體型的目標(biāo)識別,克服頂端特征的局限性。
1.2.1 特征金字塔結(jié)構(gòu)改進(jìn)
本文對標(biāo)志占用像素大小進(jìn)行統(tǒng)計(jì),指導(dǎo)特征金字塔結(jié)構(gòu)改進(jìn)。由于交通標(biāo)志外輪廓接近正方形,采用標(biāo)志寬度和長度的均值向下取整后的結(jié)果來衡量該標(biāo)志占用像素大小。統(tǒng)計(jì)結(jié)果顯示長寬均值介于區(qū)間[2,32]的標(biāo)志數(shù)量為14 039,介于區(qū)間[33,64]的標(biāo)志數(shù)量為13 092,介于區(qū)間[65,395]的標(biāo)志數(shù)量為6 867。
交通標(biāo)志長寬均值集中在區(qū)間[2,64]內(nèi),識別任務(wù)以小目標(biāo)為主。在FPN 和PAN 結(jié)構(gòu)中,金字塔上層視野廣,單個(gè)特征值覆蓋像素區(qū)域大,大目標(biāo)的特征顯著,小目標(biāo)被背景以及噪聲淹沒,原始特征金字塔結(jié)構(gòu)不適用于交通標(biāo)志識別任務(wù)。本文通過削減FPN 和PAN 結(jié)構(gòu)(如圖3,P/N代表進(jìn)行N倍下采樣),降低網(wǎng)絡(luò)深度來解決小目標(biāo)特征被淹沒的問題。限制最高下采樣倍數(shù),輸入Detect 層的為輸入為原始特征經(jīng)過4、8、16 倍下采樣的結(jié)果,強(qiáng)化低層小目標(biāo)特征。
圖3 FPN和PAN結(jié)構(gòu)改進(jìn)前后對比Fig.3 Comparison of FPN and PAN before and after structural improvement
1.2.2 上采樣算法改進(jìn)
PAN 需先對高層特征上采樣后再向下傳遞,原始YOLOv5 模型采用最鄰近插值法上采樣,最鄰近插值法的計(jì)算開銷極小,但算法精度低,本文改進(jìn)使用雙線性插值法上采樣,削弱離群點(diǎn)對特征傳遞造成的干擾。最鄰近插值法和雙線性插值法都基于后向映射原理,從目標(biāo)特征映射到源特征,區(qū)別在于最鄰近插值法在源特征中只取一個(gè)參考點(diǎn),雙線性插值法同時(shí)計(jì)算4 個(gè)參考點(diǎn)。若上采樣后特征大小為n×n,則最鄰近插值法時(shí)間復(fù)雜度為O(n2),雙線性插值法時(shí)間復(fù)雜度為O(4n2),在580 張分辨率為2 048×2 048 的測試數(shù)據(jù)集中,采用最鄰近插值法檢測速率為58 FPS,采用雙線性插值法檢測速率為50 FPS,相對于精確性的提升,帶來的額外計(jì)算開銷可以接受。
1.2.3 適配殘差模塊深度
Bottleneck 為殘差模塊的核心,對特征的深度傳遞、抑制模型梯度消失都具有積極影響,但過于深入的殘差模塊容易造成無關(guān)背景多次疊加,計(jì)算開銷增長,面對不同檢測任務(wù)需重新適配殘差模塊深度。經(jīng)過實(shí)驗(yàn)發(fā)現(xiàn)在Backbone 與Neck 結(jié)構(gòu)中的殘差模塊里采用Bottleneck×1 的數(shù)量級可以兼顧識別精度和檢測速度,改進(jìn)后殘差模塊如圖4 所示。
圖4 改進(jìn)后殘差模塊Fig.4 Improved residual module
1.2.4K-means聚類算法重獲初始錨框
Head 結(jié)構(gòu)為3 個(gè)Detect 模塊預(yù)備不同固定寬高的初始錨框,初始錨框包含標(biāo)志的先驗(yàn)知識,其選擇將對網(wǎng)絡(luò)的訓(xùn)練以及目標(biāo)檢測效果帶來極大的影響,本文采用K-means 聚類算法重新獲取初始錨框,聚類散點(diǎn)如圖5 所示,其中K=9,改進(jìn)后初始錨框?yàn)椋?/p>
圖5 聚類散點(diǎn)圖Fig.5 Clustering scatter diagram
1.2.5 增加多尺度訓(xùn)練
小體型目標(biāo)識別極容易受輸入圖像尺度影響,多尺度訓(xùn)練使網(wǎng)絡(luò)在面對不同分辨率的輸入圖像時(shí)都能保持魯棒性。本文在模型訓(xùn)練過程中將輸入圖像隨機(jī)放縮至768×768 至1 120×1 120 區(qū)間,削弱檢測精度受輸入圖像尺度影響。
1.2.6 獲得最佳歸一化尺寸
圖像在被輸入模型前都需被歸一化至img-size×img-size(pixel×pixel),img-size為預(yù)設(shè)歸一化尺寸。提高img-size有助于識別精度提升,但增加計(jì)算負(fù)擔(dān),導(dǎo)致檢測速率下降,通過圖6 可衡量img-size增大為網(wǎng)絡(luò)帶來的精度提升和檢測速度下降之間的變化關(guān)系。通過觀察曲線發(fā)現(xiàn),在img-size大于960 時(shí),精度基本保持穩(wěn)定,F(xiàn)PS 明顯下降。本文采用imgsize=960,網(wǎng)絡(luò)可在保持高精確度的同時(shí)維持穩(wěn)定檢測速度。
圖6 mAP@0.5和FPS隨歸一化尺寸變化曲線Fig.6 Curve of mAP@0.5 and FPS varying with img-size
1.2.7 全局非極大值抑制
由于交通標(biāo)志在空間位置上具有特殊性,亦即不存在交通標(biāo)志之間發(fā)生重疊、遮擋的現(xiàn)象,本文對此改進(jìn)使用全局非極大值抑制(GNMS),所有類別同時(shí)參與非極大值抑制(Non-Maximum Suppression,NMS),并降低交并比(Intersection Over Union,IOU)閾值。實(shí)驗(yàn)證明GNMS 可有效濾除置信度較低的檢測結(jié)果。
1.2.8 提前終止訓(xùn)練
實(shí)驗(yàn)發(fā)現(xiàn)原始YOLOv5 模型都出現(xiàn)了不同程度的過擬合,YOLOv5m、YOLOv5l 測試mAP@0.5 指標(biāo)下降4.79 個(gè)百分點(diǎn)、6.74 個(gè)百分點(diǎn)。通過圖7 看到,訓(xùn)練精度在150 輪之內(nèi)就已經(jīng)達(dá)到了最高值,在此之后長時(shí)間訓(xùn)練模型將學(xué)習(xí)到無用特征,導(dǎo)致在未接觸過的數(shù)據(jù)集中表現(xiàn)下降。本文在模型訓(xùn)練過程中引入提前終止機(jī)制,當(dāng)精度變換起伏連續(xù)15輪不超過1 個(gè)百分點(diǎn)時(shí),認(rèn)為模型已訓(xùn)練充分,此時(shí)提前終止訓(xùn)練。
圖7 mAP@0.5隨迭代次數(shù)的變化曲線Fig.7 Variation curve of mAP@0.5 with the number of iterations
1.2.9 針對梯度爆炸改善激活函數(shù)
實(shí)驗(yàn)發(fā)現(xiàn)原始YOLOv5 模型均出現(xiàn)了程度不一的梯度爆炸,如圖8 所示,網(wǎng)絡(luò)規(guī)模最深的YOLOv5l 梯度爆炸現(xiàn)象最為嚴(yán)重。本文根據(jù)鏈?zhǔn)椒▌t,重新調(diào)配激活函數(shù)抑制梯度爆炸。
圖8 損失值隨迭代次數(shù)的變化曲線Fig.8 Variation curve of loss value with the number of iterations
原始YOLOv5 模型采用SiLU 激活函數(shù),如式(1)所示,由圖9 可知SiLU 部分導(dǎo)函數(shù)大于1,有概率導(dǎo)致梯度爆炸。本文將部分激活函數(shù)改進(jìn)為LeakyReLU,如式(2)所示,由圖9可知LeakReLU 的導(dǎo)函數(shù)保持≤1,可以避免梯度爆炸,且LeakyReLU 不含指數(shù)運(yùn)算,計(jì)算開銷小。
圖9 激活函數(shù)以及導(dǎo)函數(shù)Fig.9 Activation function and derivative function
LeakyReLU:
算法1 改進(jìn)后的YOLOv5 檢測算法。展示了改進(jìn)后交通標(biāo)志識別系統(tǒng)的工作原理,并列舉了其中的關(guān)鍵處理步驟:
輸入 訓(xùn)練權(quán)重weights,檢測數(shù)據(jù)地址source,圖像歸一化大小img-size,置信度閾值conf-thres,IOU 閾值iou-thres;
輸出 檢測結(jié)果output。
算法2 mode 函數(shù)。前向傳播是檢測算法中的核心部分,mode 函數(shù)展示了輸入圖像在網(wǎng)絡(luò)中前向傳播的過程、各層模塊的參數(shù)設(shè)置以及功能:偽代碼中包含的注釋//Pn,表示該步驟所得為原始輸入的n倍下采樣特征。序號1)~12)與傳統(tǒng)卷積神經(jīng)網(wǎng)絡(luò)類似,輸入圖像逐層卷積得到最高層特征;序號13)~18)對應(yīng)FPN 結(jié)構(gòu),最高層特征上采樣后向下傳遞,各層級特征互補(bǔ);序號19)~23)對應(yīng)PAN 結(jié)構(gòu),特征再次向上傳遞,加強(qiáng)各層級特征融合;序號24)~25)為檢測層。
輸入 輸入圖像images;
輸出 前向傳播后的結(jié)果pred。
2.1.1 數(shù)據(jù)集概述
本文選用中國交通標(biāo)志數(shù)據(jù)集TT100K。TT100K 基數(shù)龐大、語義信息豐富,采用高清攝像頭拍攝真實(shí)街景圖獲得(如圖10 所示),可還原駕駛第一視角、單一的機(jī)動車道或者復(fù)雜的城市背景;但數(shù)據(jù)集數(shù)量分布不均勻,出現(xiàn)次數(shù)最多的交通標(biāo)志達(dá)1 479 次,最低的僅有112 次,網(wǎng)絡(luò)在基數(shù)小的標(biāo)志上難以收斂,同時(shí)數(shù)據(jù)集無法模擬在車輛駕駛中隨時(shí)面臨的低曝、過曝、雨雪、霧霾等惡劣天氣。
圖10 TT100K數(shù)據(jù)集樣本Fig.10 TT100K dataset samples
2.1.2 數(shù)據(jù)集篩選
本文從TT100K 中篩選出具有重要語義信息的25 類交通標(biāo)志,如圖11 所示,包含機(jī)動車道指示牌、限速指示牌、禁止通行指示牌、禁止停車指示牌、注意行人指示牌等,25 類交通標(biāo)志數(shù)量分布如圖12 所示。
圖11 25類交通標(biāo)志Fig.11 Twenty-five kinds of traffic signs
圖12 增強(qiáng)前交通標(biāo)志數(shù)量分布Fig.12 Traffic sign quantity distribution before augmentation
2.1.3 數(shù)據(jù)集增強(qiáng)
TT100K 中標(biāo)志數(shù)量差距大,標(biāo)志p19 僅出現(xiàn)112 次,導(dǎo)致網(wǎng)絡(luò)無法學(xué)習(xí)到該類標(biāo)志的特征。本文對數(shù)量少的標(biāo)志進(jìn)行擴(kuò)充,擴(kuò)充后各標(biāo)志數(shù)量分布如圖13 所示。
圖13 增強(qiáng)后交通標(biāo)志數(shù)量分布Fig.13 Distribution of traffic sign quantity after augmentation
本文使用python 語言編寫的imgaug 庫增強(qiáng)數(shù)據(jù)集,模擬駕駛過程中可能經(jīng)歷的過曝、欠曝、霧霾、雪天、雨天等惡劣天氣,增強(qiáng)模型在惡劣天氣下的魯棒性,數(shù)據(jù)增強(qiáng)效果如圖14 所示。
圖14 增強(qiáng)后TT100K 數(shù)據(jù)集樣本Fig.14 TT100K dataset samples after augmentation
2.1.4 數(shù)據(jù)集劃分
本文將增強(qiáng)后的14 051 份樣本按照6∶2∶2 劃分為訓(xùn)練集、驗(yàn)證集、測試集。為測試模型在面對不同惡劣天氣時(shí)性能,對測試集進(jìn)一步劃分:高清測試集、混合天氣增強(qiáng)測試集、霧霾天氣增強(qiáng)測試集。數(shù)據(jù)集文件組織如下:
1)訓(xùn)練集:8 438 份高清與天氣增強(qiáng)樣本混合。
2)驗(yàn)證集:2 717 份高清與天氣增強(qiáng)樣本混合。
3)測試集1:2 899 份高清與多種天氣增強(qiáng)樣本混合。
4)測試集2:580 份高清樣本。
5)測試集3:580 份混合天氣增強(qiáng)樣本。
6)測試集4:580 份霧霾天氣增強(qiáng)樣本
2.2.1 模型識別精度衡量指標(biāo)
本文選用F1-score、mAP@0.5、mAP@0.5:0.95 作為模型精度衡量指標(biāo),三者依賴于混淆矩陣(Confusion Matrix)、精確率、召回率的計(jì)算。以下將簡要介紹幾者之間的關(guān)系:混淆矩陣將測試結(jié)果按表1 劃分為真陽性(True Positive,TP)、真陰性(True Negative,TN)、假陽性(False Positive,F(xiàn)P)、假陰性(False Negative,F(xiàn)N),進(jìn)一步運(yùn)算可得到精確率與召回率,表中:TP為IOU≥閾值的預(yù)測框數(shù)量;FP為IOU<閾值的預(yù)測框數(shù)量;FN為沒有檢測到的目標(biāo)數(shù)量。
表1 混淆矩陣Tab.1 Confusion matrix
精確率(Precision,P)定義為所有預(yù)測值為Positive 的目標(biāo)中真實(shí)值為Positive 的樣本所占比例,精確率最直觀衡量模型錯(cuò)檢程度,計(jì)算見式(3):
召回率(Recall,R)定義為所有真實(shí)值Positive 的目標(biāo)中預(yù)測值為Positive 的樣本所占比例,召回率最直觀衡量模型漏檢程度,計(jì)算見式(4):
F1-score(F)為綜合考慮精確率和召回率的指標(biāo),通常情況下精確率和召回率相互約制,在模型召回率提升時(shí)有可能伴隨精確率下降,反之亦然。由于交通標(biāo)志識別任務(wù)涉及駕駛安全等方面重要信息,對精確率、召回率具有高要求。本文采用精確率和召回率權(quán)重相同的F1-score,計(jì)算見式(5):
2.2.2 模型檢測速率衡量指標(biāo)
本文選用FPS 作為模型的檢測速率衡量指標(biāo),F(xiàn)PS 定義為模型每秒可渲染顯示的幀數(shù)量。人眼視覺的時(shí)間特性最低要求為15 FPS,當(dāng)FPS>15 時(shí),人眼認(rèn)為檢測流暢。
2.2.3 改進(jìn)YOLOv5模型測試實(shí)驗(yàn)
為測試改進(jìn)YOLOv5 模型檢測性能,本文將所有模型都訓(xùn)練至理想狀態(tài),在測試集1 中評估識別精度、檢測速率,結(jié)果如表2 所示。
表2 不同YOLOv5模型性能對比Tab.2 Performance comparison of different YOLOv5 models
由表2 數(shù)據(jù)可知,改進(jìn)YOLOv5 模型在各指標(biāo)上均取得了顯著提升。相較于YOLOv5s,F(xiàn)1-score 提升0.082 24;mAP@0.5 提升8.8 個(gè)百分點(diǎn),各類別檢測準(zhǔn)確率顯著提升;mAP@0.5:0.95 提升8.8 個(gè)百分點(diǎn),模型高精度邊界擬合能力增強(qiáng);檢測速率達(dá)50 FPS 滿足實(shí)時(shí)性需求。數(shù)據(jù)對比發(fā)現(xiàn),針對小目標(biāo)為主的檢測任務(wù),模型深度過大導(dǎo)致標(biāo)志特征受背景干擾,不利于特征學(xué)習(xí);相反通過簡化模型結(jié)構(gòu),融合多種精度提升機(jī)制可以取得較為理想的識別精度提升,模型結(jié)構(gòu)簡化也為檢測速率提升帶來積極作用。
2.2.4 模型受氣候影響魯棒性分析
為驗(yàn)證模型在不同惡劣天氣下的魯棒性,本文在測試集2、測試集3、測試集4 上測試實(shí)驗(yàn),通過模型在增強(qiáng)測試集3、測試集4 上的精度下降幅度衡量不同天氣對識別精度造成的影響以及模型的抗惡劣天氣干擾能力,測試結(jié)果見表3~5 所示。
表3 不同天氣下F1-score對比Tab.3 F1-score comparison in different weather conditions
表4 不同天氣下mAP@0.5對比 單位:%Tab.4 mAP@0.5 comparison in different weather conditions unit:%
由表3~5 測試數(shù)據(jù)可知惡劣天氣對模型識別精度造成了顯著影響,各個(gè)模型精度均存在不同程度的下降。在多種惡劣天氣中,霧霾天氣對模型檢測精度影響最為顯著,YOLOv5m 模型F1-score下降0.074 15、mAP@0.5下降10.9個(gè)百分點(diǎn)、mAP@0.5:0.95 下降8.3 個(gè)百分點(diǎn)。本文模型具備較好的泛化能力,在惡劣天氣下也能提取出有效的特征信息,將天氣影響控制在理想范圍內(nèi),檢測精度均維持在95%上下,波動不超過0.2%,屬于可接受范圍。
表5 不同天氣下mAP@0.5:0.95對比 單位:%Tab.5 mAP@0.5:0.95 comparison in different weather conditions unit:%
2.2.5 多種霧霾天氣下交通標(biāo)志識別模型對比
霧霾天氣造成模型精度下降是多種惡劣天氣中最為顯著的,本文將多種霧霾天氣下交通標(biāo)志識別模型進(jìn)行測試比較,YOLOv5 模型作為分類器,前端融合抗霧霾干擾濾波器:包括基于圖像復(fù)原理論的暗通道先驗(yàn)濾波(Dark Channel Prior,DCP)、基于圖像增強(qiáng)理論的帶色彩恢復(fù)的多尺度視網(wǎng)膜恢復(fù)算法(Multi-Scale Retinex with Color Restoration,MSRCR)濾波、直方圖均衡化(Histogram Equalization,HE)、基于神經(jīng)網(wǎng)絡(luò)的一體化去霧網(wǎng)絡(luò)(All-in-One Network for Dehazing,AOD-Net)。模型在測試集4 中測試,結(jié)果如表6 所示,組別1 采用本文改進(jìn)模型在增強(qiáng)數(shù)據(jù)集中訓(xùn)練、霧霾數(shù)據(jù)集中測試;組別2 采用本文改進(jìn)模型在無增強(qiáng)數(shù)據(jù)集中訓(xùn)練、測試作為對照;組別3~7 采用原始YOLOv5s 模型。各模型前端分別做以下處理:組別3 不采用濾波器、組別4 融合DCP 濾波器、組別5 融合MSRCR 濾波器、組別6 融合HE 濾波器、組別7 融合AOD-Net 濾波器,皆在無增強(qiáng)數(shù)據(jù)集中訓(xùn)練,霧霾數(shù)據(jù)集中測試;組別8 采用文獻(xiàn)[27]算法,組別9 采用文獻(xiàn)[28]算法,訓(xùn)練與測試數(shù)據(jù)集均與組別1 保持一致。
表6 多種模型對比Tab.6 Comparison of several models
組別3 無濾波器的模型在霧霾測試集中表現(xiàn)急劇下降,F(xiàn)1-score 為0.774 31 相對無霧霾干擾下降0.116 81、mAP@0.5 僅為77.6%下降15.3 個(gè)百分點(diǎn)、mAP@0.5:0.95僅為58.4%下降12.7 個(gè)百分點(diǎn),原始模型在霧霾天氣下交通標(biāo)志識別效果極為不理想。模型前端融合去霧濾波器后識別精度獲得明顯提升,增加AOD-Net 濾波網(wǎng)絡(luò)后,F(xiàn)1-score提升0.054 88,mAP@0.5 提升6 個(gè)百分點(diǎn),mAP@0.5:0.95 提升4.7 個(gè)百分點(diǎn),有效改善霧霾天氣下識別精度,但還有待進(jìn)一步提升。組別8、9 相對于原始模型具有精度上的優(yōu)勢,但F1-score 和mAP@0.5 低于無霧霾干擾狀態(tài)下的測試結(jié)果,本文模型改進(jìn)了此缺陷,在霧霾干擾下可獲得高精度的檢測結(jié)果。模型檢測部分結(jié)果如圖15 所示,組別3 在霧霾天氣下漏檢明顯;組別4~7 通過濾波處理復(fù)原、增強(qiáng)圖像邊緣、顏色細(xì)節(jié),模型檢測結(jié)果取得一定程度改善,但仍未達(dá)到較理想狀態(tài);組別8、9 可檢測出大部分目標(biāo),但存在部分小體型目標(biāo)漏檢。改進(jìn)YOLOv5 模型沒有復(fù)原霧霾圖像,借助強(qiáng)擬合能力取得了較好的檢測結(jié)果。改進(jìn)YOLOv5 模型在增強(qiáng)數(shù)據(jù)集中學(xué)習(xí)特征,具備在最惡劣的霧霾天氣下提取理想特征的能力,在測試集中精度提升效果明顯,改進(jìn)后模型具備克服惡劣天氣引起的精度下降的能力。
圖15 模型檢測結(jié)果Fig.15 Model detection results
本文提出了一種基于YOLOv5 的霧霾天氣實(shí)時(shí)交通標(biāo)志識別模型,對YOLOv5 模型結(jié)構(gòu)進(jìn)行優(yōu)化,并引入多種提高識別精度機(jī)制,通過削減特征金字塔深度、限制最高下采樣倍數(shù)解決小目標(biāo)難以識別問題;通過調(diào)整殘差模塊特征傳遞深度,抑制背景特征的重復(fù)疊加;引入數(shù)據(jù)增強(qiáng)、K-means先驗(yàn)框、全局非極大值抑制等機(jī)制到網(wǎng)絡(luò)模型;針對實(shí)際應(yīng)用的需求,提高網(wǎng)絡(luò)在面對惡劣天氣時(shí)識別的魯棒性。通過在不同測試集,對比其他模型,改進(jìn)后模型在面對惡劣天氣時(shí)具備強(qiáng)泛化能力,且保持識別精度的穩(wěn)定性。本文模型也存在一定的局限性,從眾多交通標(biāo)志中只選取25 類進(jìn)行實(shí)驗(yàn),模型可檢測交通標(biāo)志的種類可進(jìn)一步進(jìn)行擴(kuò)展。針對智能駕駛系統(tǒng)的需求,將模型移植入算力有限的移動終端,并取得實(shí)時(shí)的性能進(jìn)行測試。這兩點(diǎn)也是下一階段的改進(jìn)和研究的目標(biāo)。