一種改進(jìn)的YOLOv4-tiny車輛目標(biāo)檢測方法*
*基金項(xiàng)目:湖南省省市聯(lián)合基金(2019JJ60060),多功能機(jī)組絕緣故障診斷關(guān)鍵技術(shù)研究
本文引用地址:http://www.ex-cimer.com/article/202109/428434.htm作者簡介:趙家琪(1996—),男,河南,碩士研究生,主要研究方向?yàn)闄C(jī)器學(xué)習(xí)、深度學(xué)習(xí)、計(jì)算機(jī)視覺。E-mail:1262085026@qq.com。
高貴(1981—),男,湖南,西南交通大學(xué)地球科學(xué)與環(huán)境工程學(xué)院教授,博士生導(dǎo)師,國家優(yōu)秀青年科學(xué)基金獲得者,主要研究方向?yàn)閿z影測量與遙感、雷達(dá)信號(hào)處理等。
摘要:伴隨深度學(xué)習(xí)的不斷發(fā)展,深度學(xué)習(xí)的目標(biāo)檢測方法被廣泛應(yīng)用?;?a class="contentlabel" href="http://www.ex-cimer.com/news/listbylabel/label/特征融合">特征融合的思想,本文提出了一種改進(jìn)的YOLOv4-tiny目標(biāo)檢測方法,通過添加卷積模塊及調(diào)整部分超參數(shù)對(duì)其網(wǎng)絡(luò)架構(gòu)進(jìn)行優(yōu)化,以實(shí)現(xiàn)對(duì)道路車輛目標(biāo)的快速檢測、識(shí)別和定位。首先為了改善YOLOv4-tiny網(wǎng)絡(luò)對(duì)小目標(biāo)類型檢測精度差的問題,基于特征金字塔網(wǎng)絡(luò)對(duì)第二標(biāo)度輸出層的最后一個(gè)CBL輸出特征與網(wǎng)絡(luò)中第二個(gè)CSP輸出特征進(jìn)行融合,并在原有網(wǎng)絡(luò)的基礎(chǔ)上增加52×52的標(biāo)度輸出;其次,利用遷移學(xué)習(xí)權(quán)重在自己采集的數(shù)據(jù)集上進(jìn)行實(shí)驗(yàn),訓(xùn)練得出合適的權(quán)重進(jìn)行測試。實(shí)驗(yàn)結(jié)果表明,與YOLOv4-tiny相比,改進(jìn)后的網(wǎng)絡(luò)結(jié)構(gòu)相對(duì)YOLOv4-tiny的AP提升4.4%、召回率(Recall)提升4.6%、準(zhǔn)確率(Precision)提升8.4%,且可以準(zhǔn)確檢測并定位車輛的位置。
0 引言
伴隨近幾年人工智能的快速發(fā)展,以及深度學(xué)習(xí)技術(shù)的不斷突破創(chuàng)新,智能交通系統(tǒng)已經(jīng)成為社會(huì)的發(fā)展趨勢。國家要實(shí)現(xiàn)交通系統(tǒng)的智能化和自動(dòng)化運(yùn)行,就要將大量的交通信息利用計(jì)算機(jī)視覺技術(shù)進(jìn)行處理,例如車牌識(shí)別、車輛識(shí)別與流量統(tǒng)計(jì)、無人駕駛等[1]。目前,深度學(xué)習(xí)技術(shù)被廣泛運(yùn)用到目標(biāo)檢測領(lǐng)域。為了提高駕駛的便捷性和安全性,自動(dòng)駕駛技術(shù)被廣泛重視并推向了商業(yè)化,高級(jí)駕駛輔助系統(tǒng)(ADAS)得到了廣泛的應(yīng)用,ADAS 可以實(shí)現(xiàn)道路檢測與車輛目標(biāo)檢測等多種功能。因此,高效準(zhǔn)確的車輛目標(biāo)檢測技術(shù)對(duì)智慧交通系統(tǒng)的發(fā)展起到了至關(guān)重要的作用。目前,基于計(jì)算機(jī)視覺的目標(biāo)檢測算法分為傳統(tǒng)的目標(biāo)檢測算法和基于深度學(xué)習(xí)的目標(biāo)檢測算法[2]。傳統(tǒng)的目標(biāo)檢測算法是基于機(jī)器學(xué)習(xí)的分類器與人工提取的局部特征相結(jié)合的算法,主要包括提取特征和分類兩個(gè)方面,提取的特征通常是梯度方向直方圖或類harr 特征,結(jié)合支持向量機(jī)或AdaBoost 進(jìn)行目標(biāo)檢測。使用傳統(tǒng)的基于機(jī)器學(xué)習(xí)的方法提取特征需要人為設(shè)計(jì)特征,容易損失信息從而造成誤差,不能滿足高精度和高檢測速度的場景。與傳統(tǒng)的目標(biāo)檢測算法相比,基于深度學(xué)習(xí)的目標(biāo)檢測算法具有更高的準(zhǔn)確率、更快的檢測速度和更強(qiáng)的魯棒性。因此,越來越多的深度學(xué)習(xí)方法被不斷應(yīng)用到目標(biāo)檢測領(lǐng)域[3-6]?;谏疃葘W(xué)習(xí)的目標(biāo)檢測方法包括兩階段(Two stage)目標(biāo)檢測算法[7] 和單階段(One stage)目標(biāo)檢測算法[8],兩階段算法是對(duì)圖像生成可能包含目標(biāo)的候選區(qū)域(region)用卷積神經(jīng)網(wǎng)絡(luò)(CNN)對(duì)候選區(qū)域進(jìn)行分類,精度很高,但速度方面欠佳。兩階段目標(biāo)檢測算法包括R-CNN、Fast R-CN、Faster R-CNN、基于區(qū)域的全卷積網(wǎng)絡(luò)(R-FCN) 等,雖然兩階段法比一階段法具有更高的精度,但一階段法比兩階段法具有更快的檢測速度[9-10]。單階段檢測算法目標(biāo)檢測以整張圖作為輸入,在特征層輸出邊框位置和所屬的類別,從而轉(zhuǎn)變?yōu)橐粋€(gè)回歸問題。YOLO(The You Only Look Once)[11]算法是Redmon 等人提出的第一個(gè)基于回歸的單階段算法,之后Redmon 等人又提出了基于YOLO 算法的YOLOv2算法 [12],刪除了完全連通層和最后一個(gè)匯集層,使用錨點(diǎn)框來預(yù)測邊界框,并設(shè)計(jì)出DarkNet-19 的新基礎(chǔ)網(wǎng)絡(luò)。YOLOv3[13] 是Redmon 等人提出的YOLO 方法的最后一個(gè)版本。它引入了特征金字塔網(wǎng)絡(luò)、更好的基本網(wǎng)絡(luò)darknet-53 和二進(jìn)制交叉熵?fù)p失,以提高檢測精度和檢測較小目標(biāo)的能力。由于YOLOv3 采用的信息融合類型沒有充分利用低級(jí)信息,這是限制其在工業(yè)中潛在應(yīng)用的一個(gè)弱點(diǎn)。因此,Alexey 等人提出了YOLOv4 算法,它使用CSPDarknet53 主干、空間金字塔池模塊、PANet 路徑聚合頸和YOLOv3( 基于錨點(diǎn)) 頭作為YOLOv4 的架構(gòu)。以上基于深度學(xué)習(xí)的目標(biāo)檢測算法在目標(biāo)檢測領(lǐng)域雖然取得一定效果,但其在智能交通領(lǐng)域針對(duì)小目標(biāo)的檢測仍然不夠精準(zhǔn)。本文通過對(duì)道路車輛目標(biāo)圖像進(jìn)行分析,結(jié)合最新的YOLOv4-tiny 算法并對(duì)其模型進(jìn)行合理優(yōu)化,實(shí)現(xiàn)了對(duì)道路圖像車輛目標(biāo)的快速準(zhǔn)確檢測。
1 YOLOv4-tiny方法改進(jìn)
1.1 YOLOv4-tiny模型
Yolov4-tiny[14](You Only Look Once vision4-tiny) 算法是在Yolov4 算法的基礎(chǔ)上設(shè)計(jì)的,使其具有更快的目標(biāo)檢測速度,使用1080Ti GPU, Yolov4-tiny 的目標(biāo)檢測速度可達(dá)到371 幀/s,精度可以滿足實(shí)際應(yīng)用的要求。Yolov4-tiny 算法使用CSP Darknet53-tiny 網(wǎng)絡(luò)作為骨干網(wǎng)絡(luò)來代替Yolov4 算法中使用的CSPDarknet53網(wǎng)絡(luò),空間金字塔池(SPP) 和路徑聚合網(wǎng)絡(luò)(PANet) 也由特征金字塔網(wǎng)絡(luò)(FPN) 代替,以減少檢測時(shí)間。此外,它還使用了兩個(gè)尺度的預(yù)測(26×26 和13×13),而不是3 個(gè)尺度的預(yù)測。CSPDarknet53-tiny 網(wǎng)絡(luò)在跨級(jí)部分網(wǎng)絡(luò)中使用了CSPBlock 模塊,在剩余網(wǎng)絡(luò)中使用了ResBlock 模塊。CSPBlock 模塊將特征映射分成兩部分,通過跨階段殘差邊緣將兩部分進(jìn)行組合,這使得梯度流可以在兩種不同的網(wǎng)絡(luò)路徑上傳播,增加梯度信息的相關(guān)性差異。與ResBlock 模塊相比,CSPBlock 模塊不僅可以提高卷積網(wǎng)絡(luò)的學(xué)習(xí)能力、計(jì)算精度,而且還可以減少計(jì)算量。消除了ResBlock 模塊中計(jì)算量較大的計(jì)算瓶頸,提高了Yolov4-tiny 方法在常數(shù)情況下的精度,減少了計(jì)算量。為了進(jìn)一步簡化計(jì)算過程,Yolov4-tiny 方法在CSPDarknet53-tiny 網(wǎng)絡(luò)中使用Leaky ReLU 函數(shù)作為激活函數(shù),而不使用Yolov4 中使用的Mish 激活函數(shù)。在特征融合部分,Yolov4-tiny 方法使用特征金字塔網(wǎng)絡(luò)提取不同尺度的特征地圖,提高了目標(biāo)檢測速度,而不使用Yolov4 方法中使用的空間金字塔池化和路徑聚合網(wǎng)絡(luò)。與此同時(shí),Yolov4-tiny 使用了13×13和26×26 這兩種不同尺度的特征地圖來預(yù)測檢測結(jié)果。假設(shè)輸入圖的大小為416×416,特征分類為80,Yolov4-tiny 網(wǎng)絡(luò)結(jié)構(gòu)如圖1 所示。Yolov4-tiny 方法的預(yù)測過程與Yolov4 方法相同。首先調(diào)整輸入圖像的大小,使所有輸入圖像具有相同的固定大??;其次將輸入圖像劃分為大小為S×S 的網(wǎng)格,每個(gè)網(wǎng)格使用B 個(gè)邊界框檢測目標(biāo),因此輸入圖像會(huì)生成S×S×B 的邊界框,生成的邊界框覆蓋了整個(gè)輸入圖像。如果某個(gè)對(duì)象的中心落在某個(gè)網(wǎng)格中,網(wǎng)格中的邊界框?qū)㈩A(yù)測該對(duì)象,為了減少預(yù)測過程中邊界框的冗余,提出了置信閾值。如果邊界框的置信值高于置信閾值,則邊界框保持不變;否則邊框?qū)⒈粍h除。包圍盒的置信值可得如下:
其中代表第i 個(gè)網(wǎng)格中第j 個(gè)邊界框的置信度,pi, j是目標(biāo)函數(shù)。如果目標(biāo)在第i個(gè)網(wǎng)格的第j個(gè)方格中,則pi, j =1,否則pi, j =0。表示預(yù)測框與真實(shí)框在并集上的交集??杀刃缘梅衷酱?,預(yù)測框就越接近地面真相框。Yolov4-tiny 的損耗函數(shù)與Yolov4 相同,都是由目標(biāo)框損失Lcoord 、置信度損失Lcoin 和分類損失Lclass 三部分組成,公式如下所示:
loss=loss1+loss2+loss3
loss1 ,loss2 ,loss3分別代表置信度損失、分類損失、目標(biāo)框回歸損失。
置信度損失函數(shù):
圖1 YOLOv4-tiny網(wǎng)絡(luò)框架
這里S2 是輸入圖像的格子的個(gè)數(shù), B 是格子里邊框的個(gè)數(shù),是一個(gè)目標(biāo)函數(shù)。如果jth 邊框是ith 格子里檢測的正確目標(biāo),否則和分別是預(yù)測框的置信度分?jǐn)?shù)和真實(shí)框的置信度分?jǐn)?shù),λnoobj是一個(gè)權(quán)重參數(shù)。
分類損失函數(shù):
這里的和分別代表預(yù)測框和真實(shí)框目標(biāo)屬于c 類目標(biāo)在jth 邊框中是ith 格子里的概率。
位置回歸損失:
其中IOU 是預(yù)測框和真實(shí)框之間的交集并集, wgt和hgt分別為真實(shí)框的寬度和高度,W和h分別為預(yù)測框的寬度和高度,ρ 2 (b,bgt )為預(yù)測框中心點(diǎn)與真實(shí)框中心點(diǎn)之間的歐氏距離,C是能包含預(yù)測邊界盒和真值邊界盒的最小對(duì)角線距離。
2.2 YOLOv4-tiny改進(jìn)模型
對(duì)于卷積神經(jīng)網(wǎng)絡(luò),不同深度的卷積層對(duì)應(yīng)不同級(jí)別的特征信息。低級(jí)網(wǎng)絡(luò)具有更高的分辨率和更詳細(xì)的特征,而高級(jí)網(wǎng)絡(luò)具有更低的分辨率和更多的語義特征。為了使更深層次的網(wǎng)絡(luò)同時(shí)包含豐富的語義特征和圖像表面特征,我們基于特征融合思想改進(jìn)了YOLOv4-tiny的網(wǎng)絡(luò)架構(gòu),在原有的框架基礎(chǔ)上增加了52×52 比例的輸出,使分割圖像的像元變小,這有助于提高小尺寸物體檢測的精度。改進(jìn)的YOLOv4-tiny 網(wǎng)絡(luò)架構(gòu)如圖2 所示。其中實(shí)線代表YOLOv4-tiny 網(wǎng)絡(luò)架構(gòu),虛線代表我們改進(jìn)后的網(wǎng)絡(luò)。
1)增加52×52 的標(biāo)度輸出
①提取高層語義信息和淺層表面信息
我們提取了距離第二輸出最近的CSPBlock 卷積層的輸出信息,由于在網(wǎng)絡(luò)中的深層位置,其包含了豐富的語義信息。此外,提取包含圖像豐富表面信息的淺層CSPBlock 的輸出。
②特征融合
將A 部分提取的兩個(gè)輸出送入1×1×128 的CBL,輸出大小為26×26×128,之后是上采樣層,將其大小改為52×52×128。然后將輸出結(jié)果送入concat層進(jìn)行融合,融合后的特征圖大小為52×52×256。這些融合的特征圖被處理成3×3×256 的CBL,用于進(jìn)一步的信息提取。
③增加一個(gè)輸出尺度將B 節(jié)中獲得的融合特征圖通過1×1×255 的Conv層,再增加一個(gè)52×52×255 的輸出。在YOLOv4-tiny中, 網(wǎng)絡(luò)具有13×13 和26×26 的輸出。在改良的YOLOv4-tiny 中,我們?cè)黾恿?2×52 比例的輸出,使分割圖像的像元變小,這有助于提高小尺寸物體檢測的精度。
圖2 改進(jìn)的YOLOv4-tiny網(wǎng)絡(luò)框架
2)損失函數(shù)優(yōu)化
YOLOv4-tiny 優(yōu)化后的損失函數(shù)由目標(biāo)框損失Lcoord 、置信度損失Lcoin 和分類損失Lclass 組成:
式中: L(c,x, y,w,h)為優(yōu)化后的 YOLOv4-tiny 損失函數(shù); N 為匹配到目標(biāo)區(qū)域的Default Box 的數(shù)量; α 為用于調(diào)整目標(biāo)框損失Lcoord 的比例(α初=1 )。目標(biāo)檢測算法流程如圖3 所示:
2 實(shí)驗(yàn)結(jié)果與分析
本次實(shí)驗(yàn)的環(huán)境為: 英特爾酷睿TM i7-8700 CPU@3.20 GHz;Window10 帶有Pytorch1.6.0 和Python3.6;GPU是NVIDIA Geforce GTX 3090,計(jì)算機(jī)配置如表1 所示。
本文使用的車輛目標(biāo)數(shù)據(jù)集是利用攝像裝置在道路上采集得到,并使用圖片標(biāo)志工具(label Img)對(duì)數(shù)據(jù)集進(jìn)行標(biāo)注。通過對(duì)圖像中的車輛目標(biāo)用矩形框標(biāo)記,標(biāo)記后的圖片將以XML 文件存儲(chǔ),作為對(duì)應(yīng)訓(xùn)練圖片的標(biāo)簽。數(shù)據(jù)由訓(xùn)練集、測試集、驗(yàn)證集3 部分組成(如圖表2 所示),共使用8 000 張圖片進(jìn)行訓(xùn)練,對(duì)已標(biāo)記好的圖像進(jìn)行整理,以XML 文件作為對(duì)應(yīng)圖片訓(xùn)練的標(biāo)簽,存儲(chǔ)了3 個(gè)屬性:Label、Pixels、Usage。
2.1 實(shí)驗(yàn)結(jié)果展示
在這篇文章中,我們所用的數(shù)據(jù)集都是自己在道路中采集的,之后對(duì)數(shù)據(jù)集進(jìn)行標(biāo)簽處理。該數(shù)據(jù)集包含6 500 張訓(xùn)練集和1 200 張驗(yàn)證集,最后從300 張測試集中隨機(jī)抽取2 張圖像分別用YOLOv4-tiny 和改進(jìn)后的YOLOv4-tiny 模型進(jìn)行測試,測試效果如圖4 和圖5 所示。從圖4、圖5 可以看出,通過對(duì)YOLOv4-tiny 與改進(jìn)后的YOLOv4-tiny 模型進(jìn)行檢測效果對(duì)比,YOLOv4-tiny沒有將圖像中的小目標(biāo)檢測出來,改進(jìn)后的YOLOv4-
圖4 YOLOv4-tiny模型檢測結(jié)果
圖5 改進(jìn)的YOLOv4-tiny模型檢測結(jié)果
2.2 實(shí)驗(yàn)對(duì)比與評(píng)估
文章將提出的方法與YOLOv4、YOLOv4-tiny 進(jìn)行比較,測試它們?cè)跈z測效果精確率P(Precision)、召回率R(Recall)、AP 的性能。其公式可表示為:
其中,F(xiàn)P(False Positive)是真實(shí)類別為負(fù),預(yù)測類別為正;FN(False Negative)是樣本真實(shí)類別為負(fù),預(yù)測類別為負(fù);TP(True Positive)是樣本真實(shí)類別為正,預(yù)測類別為正;TN(True Negative)是真實(shí)類別為正,預(yù)測類別為負(fù)。
3 結(jié)束語
為了提高對(duì)小目標(biāo)的檢測效果,文章提出了一種改進(jìn)的YOLOv4-tiny,將YOLOv4-tiny 提取的高級(jí)卷積特征和低級(jí)卷積特征進(jìn)行融合,增加52×52 尺度的輸出,并使用K-means 聚類方法在數(shù)據(jù)集上生成檢測框架的錨框。通過將數(shù)據(jù)集在改進(jìn)前后的網(wǎng)絡(luò)上訓(xùn)練,并進(jìn)行對(duì)比測試。實(shí)驗(yàn)結(jié)果表明,改進(jìn)后的YOLOv4-tiny 與YOLOv4 相比,各項(xiàng)指標(biāo)表都比較低;改進(jìn)后的YOLOv4-tiny 與YOLOv4-tiny 相比,準(zhǔn)確率(Precision)提高了8.4%,召回率(Recall)提高了4.6%,AP 值提高了4.4%。與YOLOv4-tiny 相比,改進(jìn)后的YOLOv4-tiny可以較好地檢測出圖像中存在的小目標(biāo)。
參考文獻(xiàn):
[1] 徐子睿,劉猛,談雅婷.基于YOLOv4的車輛檢測與流量統(tǒng)計(jì)研究[J].現(xiàn)代信息科技,2020,4(15):98-100+103.
[2] 王永平,張紅民,彭闖,等.基于YOLO v3的高壓開關(guān)設(shè)備異常發(fā)熱點(diǎn)目標(biāo)檢測方法[J].紅外技術(shù),2020,42(10):983-987.
[3] REDMON J,FARHADI A.YOLOv3:An Incremental Improvement[Z].arXive -prints,2018.
[4] REDMON J,FARHADI A.YOLOv3:An incremental improvement[Z].arXiv preprint,2018.
[5] SIMONYAN K,ZISSERMAN A.Very deep convolutional networks for large scale image recognition[Z].arXiv preprint,2014.
[6] REDMON J,DIVVALA S,GIRSHICK R,et al.You only look once:Unified,real-time object detection[C].In Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition (CVPR),2016:779-788.
[7] ZHANG Y,SONG C,ZHANG D.Deep Learning-Based Object Detection Improvement for Tomato Disease[J].IEEE Access,2020(8):56607-56614.
[8] ALGABRI M,MATHKOUR H,BENCHERIF M A,et al.Towards Deep Object Detection Techniques for Phoneme Recognition[J].IEEE Access,2020(8):54663-54680.
[9] ZHOU L,MIN W, ,LIN D, ,et al. .Detecting Motion Blurred Vehicle Logo in IoV Using Filter-Deblur GAN and VL-YOLO[J]. .IEEE Transactions on Vehicular Technology, 2020, ,69(4)::3604-3614. .
[10] ZHANG H,QIN L,LI J,et al.Real-Time Detection Method for Small Traffic Signs Based on Yolov3[J].IEEE Access,2020(8):64145-64156
[11] REDMON J,DIVVALA S,GIRSHICK R,et al.You Only Look Once:Unified,Real-Time Object Detection[C].In Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition,Las Vegas,NV,USA,2016:779-788.
[12] REDMON J,FARHADI A.YOLO9000:Better,Faster, Stronger[J].IEEE Trans.Pattern Anal.2017,29:6517–6525.
[13] REDMON J,FARHADI A.YOLOv3:An Incremental Improvement[J].IEEE Trans.Pattern Anal.2018,15:1125–1131.
[14] HOU X,MA J,ZANG S.Airborne infrared aircraft t a r g e t d e t e c t i o n a l g o r i t h m b a s e d o n Y O L O v 4 -tiny[J].2021 International Conference on Advances i n Opticsand Computational Sciences (ICAOCS) 2021,Ottawa,Canada,IOP Publishing Ltd.
(本文來源于《電子產(chǎn)品世界》雜志2021年9月期)
評(píng)論