黃尚安
(江門職業(yè)技術(shù)學(xué)院,廣東 江門529090)
當(dāng)前智能交通正處于飛速發(fā)展的階段,特別在無人駕駛、輔助駕駛領(lǐng)域中對于交通標(biāo)志檢測技術(shù)的要求越來越高,如何做到快速、準(zhǔn)確的檢測交通標(biāo)志,平衡目標(biāo)檢測速度和精度之間的關(guān)系,一直是研究人員追求的目標(biāo)。
Kun Ren 等人提出了一種基于深度可分DetNet 和Lite 融合特征金字塔網(wǎng)絡(luò)(LFFPN)的實(shí)時(shí)交通標(biāo)志檢測系統(tǒng)。該模型采用深度可分的瓶頸塊、Lite 融合模塊和改進(jìn)的SSD 檢測前端,實(shí)現(xiàn)了速度和精度的折衷,在GTSDB 數(shù)據(jù)集上的mAP 為81.35%[1];JA Khan 等人基于YOLO 模型建立了交通標(biāo)志檢測器,采用網(wǎng)格優(yōu)化和錨箱優(yōu)化的方法對小型交通標(biāo)志的檢測性能進(jìn)行了優(yōu)化,也取得了不錯(cuò)的成績,但是模型計(jì)算量卻有待進(jìn)一步控制[2];F Liu 等人提出了一種基于信道關(guān)注與特征融合網(wǎng)絡(luò)(CAFFNet)的多目標(biāo)交通標(biāo)志檢測方法。該方法通過輕量級信道注意網(wǎng)絡(luò)有效地學(xué)習(xí)特征信道之間的相關(guān)性,在不降低維數(shù)的情況下實(shí)現(xiàn)局部交叉信道交互,提高了網(wǎng)絡(luò)的表示能力,mAP達(dá)到了0.88 的好成績[3];J Zhang, 等人提出了一種級聯(lián)的R-CNN 來獲取金字塔中的多尺度特征,除第一層外,級聯(lián)網(wǎng)絡(luò)的每一層都融合前一層的輸出邊界框,以進(jìn)行聯(lián)合訓(xùn)練,且在此基礎(chǔ)上,提出了一種基于點(diǎn)積和Softmax 的加權(quán)多尺度特征提取方法,并將其歸結(jié)為細(xì)化特征,突出交通標(biāo)志特征,提高交通標(biāo)志檢測的準(zhǔn)確性,也取得了不錯(cuò)的成績,但是模型參數(shù)量過大,有待優(yōu)化[4];PS Zaki 等人提出了一種利用快速遞歸卷積神經(jīng)網(wǎng)絡(luò)(F-RCNN)和單鏡頭多盒檢測器(SSD)等多目標(biāo)檢測系統(tǒng),結(jié)合MobileNet v1 和Inception v2 等多種特征提取器,解決交通標(biāo)志檢測問題,mAP 達(dá)到了0.86[5]。
交通標(biāo)志檢測相對于其它目標(biāo)檢測問題,有相當(dāng)多的特殊性:如雨雪天氣下、極端光照下或者遮擋污損下,如何保證在惡劣天氣狀況下準(zhǔn)確檢測出交通標(biāo)志;再比如當(dāng)前眾多的算法模型對交通標(biāo)志檢測會出現(xiàn)性能下降的情況,本文研究基于改進(jìn)YOLO 模型的交通標(biāo)志檢測方法,力求在檢測精度和速度之間達(dá)到平衡,做到又快又好。
YOLO 模型是華盛頓大學(xué)Joseph Redmon 最早構(gòu)建提出的一種端到端的目標(biāo)檢測模型,它的本質(zhì)實(shí)際上是對回歸問題進(jìn)行求解[6]。模型的入口就是原始待檢測圖像,而模型的出口就是目標(biāo)檢測的結(jié)果位置以及相應(yīng)類別,它與fast rcnn 等目標(biāo)檢測算法的區(qū)別是:YOLO 模型的訓(xùn)練迭代和目標(biāo)檢測都是在一個(gè)獨(dú)立網(wǎng)絡(luò)中工作,相較于多種模塊混合工作的方式,YOLO 模型擁有更加優(yōu)秀的檢測速度,但是過于“單一模塊”的工作方式,又讓它的檢測精度受到限制,圖1 為YOLO 模型的整體架構(gòu)。
圖1 YOLO 模型的整體架構(gòu)
如圖1 所示,YOLO 模型的卷冊層共計(jì)24 個(gè),全連接層共計(jì)2 個(gè)。YOLO 模型在訓(xùn)練過程中的損失函數(shù)如下所示:
CNN 卷積神經(jīng)網(wǎng)絡(luò)中感受野的值越小,卷積層對細(xì)節(jié)特征的提取能力就越強(qiáng),反之則變?nèi)鮗7]。而YOLO 模型中前部分網(wǎng)絡(luò)層的感受也較小,本文研究構(gòu)建一種特征加深模塊,加強(qiáng)YOLO模型中前部分網(wǎng)絡(luò)層對細(xì)節(jié)、局部特征的提取能力,從而增強(qiáng)對交通標(biāo)志的檢測能力。如圖2 所示,特征加深模塊包含前、中、后三個(gè)網(wǎng)絡(luò)層,每個(gè)網(wǎng)絡(luò)層都包含卷積核大小為1×1、3×3 的卷積層,且最終將加深的特征融合到批量標(biāo)準(zhǔn)化層(BN 層),以此完成細(xì)節(jié)特征加深的主要工作。
圖2 特征加深模塊
圖3 為改進(jìn)的YOLO 模型,添加的特征加深模塊中,卷積核、特征圖大小及層數(shù)都已在圖中標(biāo)明,值得注意的是,提出模塊使用Lanczos 插值算法[8],能夠進(jìn)一步加深細(xì)節(jié)和局部信息提取能力,且能有效控制模型計(jì)算的參數(shù)量。
本文提出的改進(jìn)模型和原YOLO 模型都在德國交通標(biāo)志公共數(shù)據(jù)集GTSDB 上進(jìn)行訓(xùn)練和評估。初始學(xué)習(xí)率設(shè)置為0.001,動量設(shè)置為0.7,權(quán)重衰減設(shè)置為0.0003,批量大小設(shè)置為28,數(shù)據(jù)集圖像輸入像素大小統(tǒng)一調(diào)整為448×448。本文選擇的實(shí)驗(yàn)數(shù)據(jù)集GTSDB 中有900 幅圖像,我們將其中的600 幅圖像用于訓(xùn)練,300 幅圖像用于本文提出方法的評價(jià)。我們在具有Intel Core i7-11700K CPU,32 GB RAM,NVIDIA GeForce GTX1080 GPU 和Ubuntu 18.04 的計(jì)算機(jī)上做實(shí)驗(yàn)。
將原YOLO 模型設(shè)為模型A,將添加特征加深模塊的YOLO 模型設(shè)為模型B,前期900 個(gè)迭代次數(shù)下,代價(jià)函數(shù)與迭代次數(shù)的關(guān)系,如圖4 所示。
圖4 模型代價(jià)函數(shù)與迭代次數(shù)的關(guān)系圖
無論是原YOLO 模型,還是改進(jìn)的YOLO 模型,隨著迭代次數(shù)的增加,模型都可以很快將代價(jià)函數(shù)值降下來,模型擁有非常優(yōu)秀的訓(xùn)練速度,較好控制了計(jì)算量。本文提出的改進(jìn)YOLO模型和當(dāng)前其他算法的mAP 對比,如表1 所示。
表1 與當(dāng)前其它方法的結(jié)果比較
通過和當(dāng)前較多方法實(shí)驗(yàn)結(jié)果的對比,本文提出的改進(jìn)YOLO 模型相較于原模型mAP 提升了13.3%,且優(yōu)于目前眾多算法模型。
本文提出了一種基于改進(jìn)YOLO 模型的交通標(biāo)志檢測方法,解決了原模型對交通標(biāo)志檢測出現(xiàn)性能下降的情況,能夠在控制計(jì)算量大小基礎(chǔ)上,獲得優(yōu)秀的檢測性能。下一步還將研究特征加深模塊對其它目標(biāo)檢測算法的幫助。