董恒祥,潘江如,董芙楠,趙晴,郭鴻鑫
(1.新疆農(nóng)業(yè)大學(xué) 交通與物流工程學(xué)院,新疆 烏魯木齊 830000;2.新疆工程學(xué)院 控制工程學(xué)院,新疆 烏魯木齊 830000)
近年來(lái),基于目標(biāo)檢測(cè)算法的非入侵性、檢測(cè)速度快和準(zhǔn)確率高等優(yōu)點(diǎn),使其在各個(gè)領(lǐng)域得到了廣泛應(yīng)用。根據(jù)其處理方式,可以將其分為One-stage(單階段)和Two-stage(兩階段)兩類[1]。One-stage 目標(biāo)檢測(cè)算法直接對(duì)目標(biāo)進(jìn)行檢測(cè),檢測(cè)速度快,但準(zhǔn)確率較低。典型的One-stage 目標(biāo)檢測(cè)算法包括YOLO(You Only Look Once)[2-5]、SSD(Single Shot Detector)[6]和Retina Net[7]等。Two-stage 目標(biāo)檢測(cè)算法首先生成候選區(qū)域,然后對(duì)候選區(qū)域內(nèi)的目標(biāo)進(jìn)行檢測(cè),檢測(cè)速度較慢,但準(zhǔn)確率較高。典型的Two-stage 目標(biāo)檢測(cè)算法包括R-CNN[8]、Fast R-CNN[9]、Faster R-CNN[10]和Cascade RCNN[11]等。
現(xiàn)階段,目標(biāo)檢測(cè)算法仍存在檢測(cè)精度低、漏檢、誤檢等問(wèn)題。針對(duì)此問(wèn)題,文獻(xiàn)[12]提出了基于改進(jìn)YOLOv3 模型和Deep-SORT 算法的車輛檢測(cè)方法,有效解決了道路車輛實(shí)時(shí)檢測(cè)遮擋嚴(yán)重與小目標(biāo)車輛漏檢率高的問(wèn)題,但改進(jìn)模型的計(jì)算量大幅提升,相比于YOLOv3 模型識(shí)別幀率有所降低。文獻(xiàn)[13]針對(duì)YOLOv3 對(duì)中小目標(biāo)檢測(cè)效果不理想的問(wèn)題,對(duì)特征提取網(wǎng)絡(luò)進(jìn)行改進(jìn),提高了對(duì)中等目標(biāo)和小目標(biāo)的平均檢測(cè)精度。文獻(xiàn)[14]針對(duì)違反交通規(guī)則車輛,提出一種基于YOLOv3 的違反道路規(guī)則的車輛檢測(cè)改進(jìn)算法。該算法首先為每輛檢測(cè)到的車生成一個(gè)邊界框,然后將邊界框輸入基于質(zhì)心的運(yùn)動(dòng)物體跟蹤算法中,最后,通過(guò)計(jì)算每幀中質(zhì)心高度來(lái)確定車輛的方向,并檢測(cè)其是否違反道路規(guī)則。雖然識(shí)別率接近100%,但只聚焦于道路一側(cè)檢測(cè)逆行車輛。
綜上,目標(biāo)檢測(cè)算法的改進(jìn)主要集中于對(duì)模型框架的改進(jìn),缺乏對(duì)于邊界框回歸損失函數(shù)的研究。因此,本文基于YOLOv5s 模型在UA-DETRA[15]、VisDrone2019[16]、KITTI[17]數(shù)據(jù)集上針對(duì)4 種有代表性的邊界框回歸損失函數(shù)進(jìn)行對(duì)比實(shí)驗(yàn),深入研究其對(duì)不同尺度目標(biāo)的檢測(cè)性能。
2016 年Joseph Redmon 等人首次提出YOLO 目標(biāo)檢測(cè)算法,該方法可以實(shí)現(xiàn)實(shí)時(shí)物體檢測(cè),即識(shí)別圖像中所有物體的位置和類別,并以較高的幀率(FPS)輸出結(jié)果。YOLOv5 是YOLO 系列中較為成熟且穩(wěn)定的模型,具有較高的速度、準(zhǔn)確性和靈活性,已經(jīng)廣泛應(yīng)用于道路車輛的實(shí)時(shí)檢測(cè)。YOLOv5 共包含五種模型:YOLOv5n、YOLOv5s、YOLOv5m、YOLOv5l 和YOLOv5x,其中較小的模型具有更快的速度但其精度較低,較大的模型擁有較高的精度但其運(yùn)行速度慢。因此,為滿足道路交通目標(biāo)檢測(cè)的實(shí)時(shí)性要求,本文以YOLOv5 7.0 版本中的YOLOv5s 模型為基礎(chǔ),對(duì)4 種不同的邊界框回歸損失函數(shù)進(jìn)行對(duì)比實(shí)驗(yàn),其體系結(jié)構(gòu)如圖1 所示,其預(yù)測(cè)邊界框和真實(shí)邊界框相交類型可分為5種,其中最理想狀態(tài)為完全相交(第五種),邊界框相交類型如圖2 所示(虛線為真實(shí)預(yù)測(cè)框,實(shí)線為預(yù)測(cè)邊界框)。
圖1 YOLOv5s 體系結(jié)構(gòu)圖
圖2 邊界框相交類型
本文基于YOLOv5s 模型對(duì)4 種代表性的邊界框回歸損失函數(shù)(CIoU、SIoU、Focal-EIoU 和WIoU)進(jìn)行對(duì)比研究。
CIoU(Complete IoU)[18]是YOLOv5s 模型自身的IoU版本,相比傳統(tǒng)的IoU 指標(biāo),CIoU 考慮了目標(biāo)之間的重疊面積、歸一化中心點(diǎn)距離和長(zhǎng)寬比等因素,更加全面地評(píng)估了目標(biāo)檢測(cè)結(jié)果的準(zhǔn)確度。其計(jì)算公式為:
式中:S為相似性分?jǐn)?shù);IoU 為真實(shí)框與預(yù)測(cè)框交并比;D為距離;ρ為歐幾里德距離;p為預(yù)測(cè)邊界框參數(shù);pgt為真實(shí)邊界框參數(shù);c為覆蓋兩個(gè)框的最小外接矩形的對(duì)角線長(zhǎng)度(如圖2 所示);V為長(zhǎng)寬比;w和h分別表示預(yù)測(cè)邊界框的寬度和高度;wgt和hgt分別表示真實(shí)邊界框的寬度和高度;α為權(quán)衡參數(shù)。
由式(1)可以看出,S、D和V不受回歸尺度的影響,并且被歸一化到[0,1]。
歸一化中心點(diǎn)距離如圖3 所示。
圖3 歸一化中心點(diǎn)距離
權(quán)衡參數(shù)α定義為:
由式(2)可知:當(dāng)IoU<0.5時(shí),CIoU 損失將退化為DIoU[19]損失,即當(dāng)兩個(gè)框重疊面積較小時(shí),將長(zhǎng)寬比權(quán)重變?yōu)?,去除長(zhǎng)寬比大小對(duì)損失的影響;當(dāng)IoU≥0.5時(shí),兩個(gè)框的重疊面積較大,長(zhǎng)寬比對(duì)損失的影響較大,通過(guò)長(zhǎng)寬比對(duì)損失進(jìn)行重新定義,提高檢測(cè)精度。
SIoU 是由Gevorgyan[20]提出,通過(guò)回歸矢量的角度對(duì)損失指標(biāo)重新定義。
SIoU 首先引入角度損失,其定義為:
其中:
角度損失如圖4 所示。
圖4 角度損失
距離損失根據(jù)角度損失重新進(jìn)行定義,其公式為:
其中:
形狀損失定義公式為:
其中:
綜上,損失函數(shù)公式為:
可以看出:當(dāng)α趨于0時(shí),角度成本Λ也將趨于0,即Λ對(duì)SIoU 的影響大幅降低;當(dāng)α趨于π/4時(shí),Λ取最大值,即對(duì)SIoU 的影響最大。
針對(duì)目標(biāo)檢測(cè)中BBR(Bounding Box Regression)收斂速度緩慢、回歸結(jié)果不準(zhǔn)確和不平衡的問(wèn)題,文獻(xiàn)[21]提出了一種高效的交并比損失(EIoU),并提出了一種回歸損失,使其聚焦于高質(zhì)量的錨框。得到一個(gè)新的損失函數(shù),即Focal-EIoU 損失。
EIoU 定義如下:
其中:LIoU為IoU 損失;Ldis為距離損失;Lasp為縱橫比損失;wc和hc是覆蓋兩個(gè)框的最小包圍框的寬度和高度。
Focal-EIoU 定義如下:
式中γ是控制異常值抑制程度的參數(shù)。
可以看出:EIoU 損失直接最小化目標(biāo)框和錨定框的寬度和高度之間的差異,導(dǎo)致更快的收斂速度和更好的定位結(jié)果[21]。為了使EIoU 損失專注于高質(zhì)量的目標(biāo)框,使用IoU 的值對(duì)EIoU 損失進(jìn)行重新加權(quán),其性能得到了進(jìn)一步提升。
由于 Focal-EIoU 使用靜態(tài)FM(Focusing Mechanism),非單調(diào)FM 的潛力沒(méi)有被完全利用。基于此,文獻(xiàn)[22]采用了動(dòng)態(tài)非單調(diào)FM,這使得WIoU 能夠?qū)W⒂谄胀ㄙ|(zhì)量的錨框并改善目標(biāo)檢測(cè)的整體性能。WIoU 共三個(gè)版本(WIoUv1、WIoUv2、WIoUv3),本文中使用WIoUv3,因此只對(duì)WIoUv3 進(jìn)行分析。其計(jì)算公式為:
其中:
式中:r為梯度增益;β為異常度;α和δ為超參數(shù)(此處取值為1.9 和3);“*”表示將wc和hc從計(jì)算圖中分離出來(lái),防止產(chǎn)生阻礙收斂的梯度。
可以看出:當(dāng)β=δ時(shí),r=1,WIoUv3 退化為v1 版本。由于LIoU是動(dòng)態(tài)的,錨框的質(zhì)量劃分標(biāo)準(zhǔn)也是動(dòng)態(tài)的,這使得WIoUv3 能夠根據(jù)每個(gè)時(shí)刻的情況制定最符合當(dāng)前情況的梯度增益分配策略,從而提高目標(biāo)檢測(cè)的整體性能[22]。
3.1.1 KITTI
KITTI 數(shù)據(jù)集由德國(guó)卡爾斯魯厄理工學(xué)院和豐田美國(guó)技術(shù)研究院聯(lián)合創(chuàng)辦,該數(shù)據(jù)集是在德國(guó)卡爾斯魯厄及其周圍進(jìn)行拍攝獲得,包含市區(qū)、鄉(xiāng)村和高速公路等場(chǎng)景。原始數(shù)據(jù)集包含類別有:Car(汽車)、Van(面包車)、Truck(卡車)、Pedestrian(行人)、Person(sitting)(人坐著)、Cyclist(騎自行車的)、Tram(有軌電車)和Misc(雜項(xiàng),例如:拖車)。經(jīng)數(shù)據(jù)預(yù)處理將原來(lái)的8 種類別轉(zhuǎn)換為4 類:Pedestrian、Car、Van、Cyclist。將原來(lái)的Pedestrian、Person(sitting)合并為Pedestrian類,把原來(lái)的Car、Truck、Tram 合并為Car類,原來(lái)的Van、Cyclist 類保持不變,將其余類刪除。KITTI數(shù)據(jù)集共包含7 481 張圖像,本文按照8∶1∶1(5 987∶747∶747)的比例將其隨機(jī)劃分為訓(xùn)練集、驗(yàn)證集和測(cè)試集。
此數(shù)據(jù)集在同一水平面下對(duì)車輛進(jìn)行拍攝,適用于自動(dòng)駕駛領(lǐng)域。其中Pedestrian 實(shí)例共3 619個(gè),Car實(shí)例共24 227個(gè),Van 實(shí)例共2 343個(gè),Cyclist實(shí)例共1 311 個(gè)。
3.1.2 VisDrone2019
VisDrone2019 數(shù)據(jù)集由天津大學(xué)機(jī)器學(xué)習(xí)和數(shù)據(jù)挖掘?qū)嶒?yàn)室AISKYEYE 團(tuán)隊(duì)收集。基準(zhǔn)數(shù)據(jù)集由10 209 幅靜態(tài)圖像組成,是在不同的場(chǎng)景、不同的天氣和光照條件下收集的,涵蓋Pedestrian(行人)、People(人)、Bicycle(自行車)、Car(汽車)、Van(面包車)、Truck(卡車)、Tricycle(三輪車)、Awning-tricycle(遮陽(yáng)棚-三輪車)、Bus(巴士)、Motor(摩托車)10 類目標(biāo)檢測(cè)類別。經(jīng)數(shù)據(jù)分析處理,將Pedestrian、People 類合并為Pedestrian類,將Car、Truck 類合并為Car類,Van、Bus 類保持不變,其余類別刪除。最終保留了道路常見(jiàn)的Pedestrian、Car、Van 和Bus 類共7 017 張圖片,按照8∶1∶1(5 615∶701∶701)隨機(jī)將其分為訓(xùn)練集、驗(yàn)證集以及測(cè)試集。
此數(shù)據(jù)集為航拍圖像,具有小目標(biāo)、目標(biāo)重疊、背景復(fù)雜等特點(diǎn)。其中Pedestrian 實(shí)例共95 815個(gè),Car 實(shí)例共138 449個(gè),Van實(shí)例共21 522個(gè),Bus實(shí)例共4 967個(gè)。
3.1.3 UA-DETRA
UA-DETRA 數(shù)據(jù)集由100 個(gè)視頻組成,視頻是利用佳能EOS 550D 相機(jī)在中國(guó)北京和天津不同天氣下(多云、夜間、晴天和雨天)采集的,包含城市高速公路、交通路口和T 形路口,拍攝時(shí)長(zhǎng)超過(guò)10 h。視頻以25 f/s 的速度錄制,JPEG 圖像分辨率為960×540 像素,涵蓋Car(汽車)、Bus(巴士)、Van(面包車)和Others(例如:卡車、油罐車)4 類。經(jīng)數(shù)據(jù)分析處理將Car、Others 類合并為Car類,Van、Bus 類保持不變,最終保留10 870 張圖片,并按照8∶1∶1(8 696∶1 087∶1 087)隨機(jī)將其分為訓(xùn)練集、驗(yàn)證集以及測(cè)試集。
此數(shù)據(jù)集為道路監(jiān)控視頻,適用于智慧交通領(lǐng)域。其中Car實(shí)例共73 154個(gè),Van 實(shí)例共7 166個(gè),Bus 實(shí)例共6 195 個(gè)。
本文所使用的實(shí)驗(yàn)環(huán)境配置及參數(shù)設(shè)定如表1所示。
表1 實(shí)驗(yàn)環(huán)境配置及參數(shù)設(shè)定
本文以漏檢率(Miss rate)、誤檢率(False alarm)、準(zhǔn)確率(Precision)、召回率(Recall)、精度(mAP@0.5)指標(biāo)對(duì)模型進(jìn)行評(píng)估。
漏檢率:正樣本被判定為負(fù)樣本的個(gè)數(shù)占總正樣本的比例。
誤檢率:負(fù)樣本被判定為正樣本的個(gè)數(shù)占總負(fù)樣本的比例。
Precision:判定為正樣本中真實(shí)為正樣本的個(gè)數(shù)占判定為正樣本總數(shù)的比例。
Recall:正樣本被判定為正樣本的個(gè)數(shù)占總正樣本的比例。
式中:TP 為將正樣本判定為正樣本的個(gè)數(shù);TN 為將負(fù)樣本判定為負(fù)樣本的個(gè)數(shù);FP 為將負(fù)樣本判定為正樣本的個(gè)數(shù);FN 為將正樣本判定為負(fù)樣本的個(gè)數(shù)。
mAP@0.5:數(shù)據(jù)集的平均準(zhǔn)確率。
式中:AP 為單類別的平均準(zhǔn)確率;k為類別數(shù)量。
3.4.1 實(shí)驗(yàn)結(jié)果分析
本文主要對(duì)邊界框回歸損失函數(shù)進(jìn)行對(duì)比,為分析其適用環(huán)境及有效性,利用KITTI、VisDrone2019、UADETRA 測(cè)試數(shù)據(jù)集進(jìn)行驗(yàn)證。每組實(shí)驗(yàn)使用相同的實(shí)驗(yàn)環(huán)境配置及參數(shù),每次實(shí)驗(yàn)只對(duì)算法的一個(gè)變量進(jìn)行更改,實(shí)驗(yàn)結(jié)果如表2 所示。
表2 實(shí)驗(yàn)結(jié)果 %
由表2可知:對(duì)于UA-DETRA 道路監(jiān)控?cái)?shù)據(jù)集(大目標(biāo)),F(xiàn)ocal-EIoU 準(zhǔn)確率指標(biāo)最高,但召回率和mAP@0.5指標(biāo)無(wú)提升;SIoU 和WIoU 的召回率指標(biāo)最高,但SIoU準(zhǔn)確率指標(biāo)較低,WIoU 的mAP@0.5 指標(biāo)最高,即WIoU整體性能最好。VisDrone2019 航拍數(shù)據(jù)集(小目標(biāo))中WIoU 準(zhǔn)確率指標(biāo)最高,達(dá)到了66.2%,但mAP@0.5 指標(biāo)最低,只有51.7%;Focal-EIoU 的召回率和mAP@0.5 指標(biāo)最高,整體性能最好。KITTI 自動(dòng)駕駛數(shù)據(jù)集(中型目標(biāo))中SIoU 準(zhǔn)確率指標(biāo)最高,但召回率指標(biāo)較低,mAP@0.5 指標(biāo)略微提升;WIoU 的召回率和mAP@0.5 指標(biāo)最高,但準(zhǔn)確率指標(biāo)較低只有92.9%,即SIoU 和WIoU整體性能較好。證明了SIoU 適用于中型目標(biāo)檢測(cè)任務(wù),F(xiàn)ocal-EIoU 適用于小型目標(biāo)檢測(cè)任務(wù),WIoU 適用于大型目標(biāo)和中型目標(biāo)檢測(cè)任務(wù),且均優(yōu)于原始邊界框回歸損失函數(shù)(CIoU)。其邊界框損失迭代過(guò)程可視化如圖5 所示(左側(cè)為訓(xùn)練集迭代過(guò)程,右側(cè)為驗(yàn)證集迭代過(guò)程)。
圖5 邊界框損失迭代過(guò)程可視化
由圖5 可知:UA-DETRA 訓(xùn)練迭代過(guò)程中Focal-EIoU 收斂速度快,迭代前250 次損失優(yōu)于其他三種損失函數(shù),迭代250 次之后WIoU 與其損失最小,驗(yàn)證迭代過(guò)程中Focal-EIoU 損失最優(yōu);VisDrone2019 訓(xùn)練以及驗(yàn)證迭代過(guò)程Focal-EIoU 損失遠(yuǎn)優(yōu)于其他損失函數(shù)。KITTI訓(xùn)練以及驗(yàn)證迭代過(guò)程Focal-EIoU 和WIoU 損失最小;CIoU 和SIoU 在三種數(shù)據(jù)集中損失基本持平,除在VisDrone2019 數(shù)據(jù)集,損失值均高于其他損失函數(shù)。證明了Focal-EIoU 在檢測(cè)小目標(biāo)時(shí)遠(yuǎn)優(yōu)于其他損失函數(shù),且在三種數(shù)據(jù)集中損失均處于最優(yōu);WIoU 在中大型目標(biāo)檢測(cè)任務(wù)中損失較低;SIoU 損失結(jié)果與表2 分析結(jié)果相違背,為進(jìn)一步分析其有效性,對(duì)檢測(cè)結(jié)果進(jìn)行對(duì)比研究。
3.4.2 檢測(cè)結(jié)果分析
為對(duì)4 種邊界框損失函數(shù)的有效性進(jìn)一步分析,對(duì)KITTI、VisDrone2019、UA-DETRA 測(cè)試數(shù)據(jù)集的實(shí)際檢測(cè)效果進(jìn)行對(duì)比,對(duì)比結(jié)果如圖6 所示(從左到右依次為:原始、CIoU、SIoU、Focal-EIoU 和WIoU 圖像),可以看出:在三種類型數(shù)據(jù)集下4 種邊界框損失函數(shù)檢測(cè)結(jié)果無(wú)明顯差別。因此,對(duì)其漏檢率以及召回率指標(biāo)進(jìn)行對(duì)比,實(shí)驗(yàn)結(jié)果如表3 所示。
表3 實(shí)驗(yàn)結(jié)果 %
圖6 檢測(cè)結(jié)果
由表3 可知:在UA-DETRA 數(shù)據(jù)集中WIoU 漏檢率最低,但誤檢率較高;Focal-EIoU 誤檢率最低,但漏檢率較高;但相比于另外兩種損失函數(shù),WIoU 和Focal-EIoU整體性能較優(yōu)。在VisDrone2019 數(shù)據(jù)集中Focal-EIoU漏檢率最高,但其誤檢率遠(yuǎn)優(yōu)于其他損失函數(shù),整體性能最優(yōu)。在KITTI 數(shù)據(jù)集中,SIoU 和WIoU 漏檢率最低,但WIoU 誤檢率較高;Focal-EIoU 雖然漏檢率較高,但其誤檢率遠(yuǎn)低于其他損失函數(shù);綜合比較,SIoU 和Focal-EIoU 性能優(yōu)于CIoU 和WIoU。
本文基于YOLOv5s 模型對(duì)4 種代表性的邊界框回歸損失函數(shù)進(jìn)行對(duì)比研究,通過(guò)漏檢率、誤檢率、準(zhǔn)確率、召回率、mAP@0.5、迭代過(guò)程的邊界框損失值以及目標(biāo)檢測(cè)結(jié)果對(duì)其進(jìn)行分析研究。
1)在準(zhǔn)確率、召回率和mAP@0.5 的對(duì)比實(shí)驗(yàn)中顯示:CIoU 性能最差,SIoU 適用于中型目標(biāo)檢測(cè)任務(wù),F(xiàn)ocal-EIoU 適用于小型目標(biāo)檢測(cè)任務(wù),WIoU 適用于大型目標(biāo)和中型目標(biāo)檢測(cè)任務(wù)。
2)在迭代過(guò)程的邊界框損失值對(duì)比實(shí)驗(yàn)中顯示:CIoU 和SIoU 在三種數(shù)據(jù)集下邊界框損失值均較高;Focal-EIoU 在小型目標(biāo)檢測(cè)任務(wù)中邊界框損失值最??;WIoU 在中大型目標(biāo)檢測(cè)任務(wù)中損失值較低。
3)在目標(biāo)檢測(cè)結(jié)果對(duì)比實(shí)驗(yàn)中顯示:4 種邊界框回歸損失函數(shù)對(duì)不同目標(biāo)的識(shí)別效果無(wú)明顯差異。
4)在漏檢率和誤檢率對(duì)比實(shí)驗(yàn)中顯示:在UADETRA 數(shù)據(jù)集中WIoU 和Focal-EIoU 整體性能較優(yōu);在VisDrone2019 數(shù)據(jù)集中Focal-EIoU 整體性能最優(yōu),在KITTI 數(shù)據(jù)集中,SIoU 和Focal-EIoU 整體性能較優(yōu)。
5)當(dāng)檢測(cè)目標(biāo)為小尺度時(shí),優(yōu)先選用Focal-EIoU損失函數(shù);當(dāng)檢測(cè)目標(biāo)為中尺度時(shí),優(yōu)先選用SIoU 損失函數(shù);當(dāng)檢測(cè)目標(biāo)為大尺度時(shí),優(yōu)先選用WIoU 損失函數(shù);若檢測(cè)目標(biāo)繁雜,優(yōu)先選用Focal-EIoU 損失函數(shù)。