摘 要:在車(chē)路協(xié)同系統(tǒng)中,為了提升路側(cè)情況下汽車(chē)對(duì)外界環(huán)境信息的感知能力和對(duì)動(dòng)態(tài)車(chē)輛目標(biāo)行為的預(yù)測(cè)能力,本文提出一種基于改進(jìn)DeepSORT算法的車(chē)輛多目標(biāo)跟蹤算法。本文將YOLOv5作為檢測(cè)器,并結(jié)合優(yōu)化的DeepSORT跟蹤算法進(jìn)行動(dòng)態(tài)車(chē)輛多目標(biāo)跟蹤。在車(chē)輛特征匹配過(guò)程中,從匹配候選框中不斷去除匹配成功的檢測(cè)目標(biāo),以減少計(jì)算資源,并利用HOG特征對(duì)車(chē)輛信息進(jìn)行匹配,提升算法的實(shí)時(shí)性。同時(shí)引入投影矩陣,將圖像數(shù)據(jù)轉(zhuǎn)化為俯視圖,獲取檢測(cè)目標(biāo)的運(yùn)動(dòng)速度。試驗(yàn)結(jié)果表明,與傳統(tǒng)的DeepSORT算法相比,改進(jìn)算法的多目標(biāo)跟蹤精度(MOTA)提高了6.7%。
關(guān)鍵詞:車(chē)路協(xié)同;特征匹配;優(yōu)化DeepSort算法;目標(biāo)跟蹤
中圖分類號(hào):TP 391 " " " 文獻(xiàn)標(biāo)志碼:A
智能車(chē)路協(xié)同系統(tǒng)是一個(gè)綜合的交通運(yùn)輸管理與服務(wù)系統(tǒng),該系統(tǒng)將復(fù)雜的感知、跟蹤任務(wù)從車(chē)輛轉(zhuǎn)移到道路系統(tǒng)。目前,眾多基于深度學(xué)習(xí)和多傳感器融合的目標(biāo)跟蹤算法得到了廣泛應(yīng)用,常見(jiàn)的跟蹤目標(biāo)算法包括卡爾曼濾波算法和均值漂移算法等,這些算法通過(guò)估計(jì)目標(biāo)狀態(tài)來(lái)跟蹤目標(biāo)。SORT算法是開(kāi)創(chuàng)性的基于檢測(cè)的多目標(biāo)跟蹤系統(tǒng),但是其在物體被遮擋或快速移動(dòng)的情況下,鑒于ID切換和跟蹤丟失,其準(zhǔn)確性容易受到嚴(yán)重影響。
為了彌補(bǔ)SORT算法的不足,有學(xué)者對(duì)其進(jìn)行了擴(kuò)展,提出了DeepSORT算法[1]。該算法結(jié)合目標(biāo)的視覺(jué)信息,先進(jìn)行IOU相似性合并,為目標(biāo)提供最終的相似性度量,再進(jìn)行級(jí)聯(lián)匹配,在保持出色跟蹤精度的同時(shí),降低了遮擋情況下ID切換的頻率。金立生等[1]將跟蹤算法中的檢測(cè)器更換為Gaussian YOLOv3,并把原有的交叉熵函數(shù)替換為重識(shí)別網(wǎng)絡(luò)的中心損失函數(shù),車(chē)輛特征的提取與跟蹤網(wǎng)絡(luò)的關(guān)聯(lián)水平均有所提升。陳佳倩等[2]用YOLOv3代替DeepSORT算法的檢測(cè)器FasterR-CNN,從而提高了車(chē)輛跟蹤精度與速度。本文將YOLOv5作為檢測(cè)器,并結(jié)合優(yōu)化的DeepSORT跟蹤算法進(jìn)行動(dòng)態(tài)車(chē)輛多目標(biāo)跟蹤。
1 算法總體設(shè)計(jì)
DeepSORT采用匈牙利方法來(lái)解決全局分配問(wèn)題,利用外觀相似性測(cè)量,將每個(gè)檢測(cè)到的目標(biāo)與其預(yù)測(cè)目標(biāo)關(guān)聯(lián)起來(lái)。提高預(yù)測(cè)目標(biāo)和觀測(cè)目標(biāo)間的相關(guān)性,可以使跟蹤更精確和穩(wěn)定,更有效地滿足跟蹤多個(gè)目標(biāo)的需求。算法采用YOLOv5模型進(jìn)行交通流視頻圖像檢測(cè),將定位檢測(cè)框信息輸入跟蹤算法模塊。并利用優(yōu)化特征匹配后的DeepSORT跟蹤算法,根據(jù)跟蹤規(guī)則進(jìn)行卡爾曼濾波預(yù)測(cè)更新和級(jí)聯(lián)匹配,完成目標(biāo)跟蹤。在目標(biāo)跟蹤過(guò)程中引入投影矩陣進(jìn)行圖像坐標(biāo)變換,根據(jù)尺度信息計(jì)算車(chē)輛目標(biāo)的速度、軌跡方向信息。算法總體架構(gòu)如圖1所示。
2 YOLOv5車(chē)輛目標(biāo)檢測(cè)
YOLOv5網(wǎng)絡(luò)包括4個(gè)版本,YOLOv5s是參數(shù)最小、速度最快的網(wǎng)絡(luò)[3]。根據(jù)路側(cè)車(chē)輛識(shí)別算法的實(shí)時(shí)性需求,本文選取YOLOv5s網(wǎng)絡(luò)作為檢測(cè)的基準(zhǔn)網(wǎng)絡(luò)。其網(wǎng)絡(luò)結(jié)構(gòu)主要包括輸入端、特征提取網(wǎng)絡(luò)(Backbone)、特征融合網(wǎng)絡(luò)(Neck)和檢測(cè)頭(Prediction)4個(gè)部分。1)輸入端。YOLOv5s使用Mosaic增強(qiáng)技術(shù)對(duì)輸入網(wǎng)絡(luò)的圖像進(jìn)行數(shù)據(jù)增強(qiáng),、縮放、裁剪和拼接,豐富了圖像的背景信息。2)特征提取網(wǎng)絡(luò)。YOLOv5s改進(jìn)了YOLOv3中的主干網(wǎng)絡(luò)結(jié)構(gòu),將殘差模塊輸入的一部分與殘差組件保持堆疊,另一部分用作殘差邊,使各個(gè)網(wǎng)絡(luò)層能夠以截?cái)嗵荻攘鞯姆绞奖苊舛啻螌W(xué)習(xí)相同的梯度信息,從而提高神經(jīng)網(wǎng)絡(luò)的學(xué)習(xí)能力。為了加快網(wǎng)絡(luò)的檢測(cè)速度,引入Focus網(wǎng)絡(luò)結(jié)構(gòu),替代原方法的前3個(gè)卷積層。完成特征提取后引入SPP(空間金字塔池化)結(jié)構(gòu),以更好地適應(yīng)不同尺度的目標(biāo)。3)特征融合網(wǎng)絡(luò)。YOLOv5s的Neck利用上采樣傳輸和融合上層特征,檢索上層語(yǔ)義信息。為了進(jìn)一步增強(qiáng)網(wǎng)絡(luò)對(duì)淺層特征的檢測(cè)能力,YOLOv5的特征融合網(wǎng)絡(luò)引入了特征金字塔網(wǎng)絡(luò)(Feature Pyramid Networks,F(xiàn)PN)結(jié)構(gòu)。4)檢測(cè)頭。傳統(tǒng)神經(jīng)網(wǎng)絡(luò)模型中的標(biāo)準(zhǔn)全連接層利用卷積層進(jìn)行目標(biāo)檢測(cè),YOLOv5s算法則利用邏輯回歸、邊界框損失函數(shù)和非極大值抑制來(lái)確定目標(biāo)的邊界框[4]。使用DAIR-V2X數(shù)據(jù)集進(jìn)行訓(xùn)練,并使用訓(xùn)練后的權(quán)重來(lái)初始化YOLOv5s網(wǎng)絡(luò),不斷調(diào)整學(xué)習(xí)率,以保證模型的穩(wěn)定性和收斂效果。
3 改進(jìn)DeepSORT跟蹤算法
DeepSORT主要由卡爾曼濾波和級(jí)聯(lián)匹配組成??柭鼮V波能夠預(yù)測(cè)當(dāng)前狀態(tài),根據(jù)真實(shí)觀測(cè)狀態(tài)對(duì)預(yù)測(cè)狀態(tài)進(jìn)行修正、更新,在檢測(cè)到當(dāng)前幀中的邊界框后,利用卡爾曼濾波器生成預(yù)測(cè)軌跡框。該框?qū)@示目標(biāo)在下一幀中的位置[5]。經(jīng)過(guò)卡爾曼濾波預(yù)測(cè)后,軌跡路徑分為2種形態(tài),即確認(rèn)態(tài)和未確認(rèn)態(tài)。如果是確認(rèn)態(tài),那么會(huì)進(jìn)入級(jí)聯(lián)匹配進(jìn)行匹配;如果是未確認(rèn)態(tài),那么進(jìn)行IOU匹配,算法流程如圖2所示。
3.1 車(chē)輛跟蹤卡爾曼濾波設(shè)計(jì)
當(dāng)卡爾曼濾波算法應(yīng)用于車(chē)輛跟蹤時(shí)[6],該算法會(huì)先預(yù)測(cè)運(yùn)動(dòng)狀態(tài),再更新運(yùn)動(dòng)狀態(tài)。本文使用8維向量描述車(chē)輛的狀態(tài),如公式(1)所示。
Ct=(x,y,γ,h,,,,) (1)
式中:x、y分別為車(chē)輛預(yù)測(cè)軌跡框的中心點(diǎn)坐標(biāo);γ為車(chē)輛預(yù)測(cè)軌跡框的寬高比;h為軌跡框的高;,,和分別為上述變量的變化速度。
當(dāng)沒(méi)有獲得測(cè)量信息時(shí),計(jì)算先驗(yàn)狀態(tài)估計(jì)和先驗(yàn)估計(jì)誤差協(xié)方差矩陣Pk-,并進(jìn)行預(yù)測(cè),預(yù)測(cè)方程如公式(2)所示。
(2)
獲得檢測(cè)數(shù)據(jù)后,使用檢測(cè)數(shù)據(jù)更新公式完成數(shù)據(jù)更新,如公式(3)所示。
(3)
式中:為先驗(yàn)狀態(tài)估計(jì);Pk-為先驗(yàn)估計(jì)誤差協(xié)方差矩陣;R為噪聲協(xié)方差矩陣。
計(jì)算得到的后驗(yàn)狀態(tài)估計(jì)即需要的卡爾曼濾波值,進(jìn)而進(jìn)行級(jí)聯(lián)匹配。
3.2 級(jí)聯(lián)匹配優(yōu)化
采用CNN特征的匈牙利匹配,將第一幀中所有預(yù)測(cè)的目標(biāo)框與第二幀中所有檢測(cè)到的目標(biāo)框進(jìn)行匹配。再采用IOU匹配,將第一幀中預(yù)測(cè)的目標(biāo)框與第二幀中所有檢測(cè)到的目標(biāo)框進(jìn)行匹配。最后合并2個(gè)匹配的匹配集。由于要重新匹配已匹配的軌跡,因此這種方法的計(jì)算效率較低。
HOG特征通過(guò)統(tǒng)計(jì)圖像局部區(qū)域的梯度方向直方圖來(lái)構(gòu)成特征,計(jì)算效率高,適用于有實(shí)時(shí)性要求的場(chǎng)景,而且在部分遮擋的情況下也能保持較好的識(shí)別性能。HOG的實(shí)現(xiàn)過(guò)程包括對(duì)輸入圖像進(jìn)行分塊、計(jì)算每個(gè)塊的梯度方向直方圖、歸一化直方圖以及生成最終的特征向量。本文將候選式匹配方式作為新方案,在使用HOG特征匹配剩余的不匹配目標(biāo)之前,采用CNN進(jìn)行目標(biāo)匹配。匹配過(guò)程結(jié)束后,移除匹配成功的檢測(cè)框和跟蹤預(yù)測(cè)框,對(duì)剩下未匹配的預(yù)測(cè)目標(biāo)框和檢測(cè)到的目標(biāo)框使用HOG特征匹配,再次移除匹配成功的檢測(cè)框和跟蹤預(yù)測(cè)框。如果仍有未匹配的目標(biāo),那么使用基于IOU的匹配策略進(jìn)行最后一次匹配。如果匹配失敗,俺么將其視為新的目標(biāo)軌跡,并分配新的ID編號(hào),該算法流程如圖3所示。
3.3 方向與速度
在路側(cè)視角下,需要采用一定的角度計(jì)算和圖像變換來(lái)獲得跟蹤車(chē)輛的方向和速度。利用上一幀目標(biāo)和下一幀目標(biāo)的檢測(cè)框中心的連線方向,計(jì)算與路面平行線的夾角,并根據(jù)該角度獲得目標(biāo)此刻的運(yùn)動(dòng)方向。根據(jù)每n幀圖像間經(jīng)過(guò)的時(shí)間和每n幀圖像中同一目標(biāo)的檢測(cè)圖像中心距離,得到當(dāng)時(shí)目標(biāo)的速度。由于車(chē)輛由遠(yuǎn)及近分布,在圖像中呈現(xiàn)出多尺度特征,因此本文引入透視變換矩陣,將圖像數(shù)據(jù)轉(zhuǎn)換為俯視圖,并根據(jù)實(shí)地測(cè)量的道路距離信息,確定其與圖片間的比例尺關(guān)系,用以計(jì)算目標(biāo)的速度。透視變換矩陣如公式(4)所示,轉(zhuǎn)換前、后的圖像如圖4所示。
(4)
4 試驗(yàn)結(jié)果與分析
為了評(píng)估目標(biāo)跟蹤算法的性能,選取3種測(cè)試場(chǎng)景,見(jiàn)表1。本文利用視頻傳感器采集的路側(cè)數(shù)據(jù),并基于Pytorch深度學(xué)習(xí)框架,在CPU為i9-13900、RAM為32G和GPU為RTXGPU3060的硬件平臺(tái)上進(jìn)行訓(xùn)練和測(cè)試。
目標(biāo)追蹤效果如圖5所示。從圖5可以看出,從車(chē)輛質(zhì)心點(diǎn)開(kāi)始形成的跟蹤軌跡點(diǎn)顯示出跟蹤目標(biāo)的歷史軌跡,方框顯示出目標(biāo)跟蹤位置,并顯示對(duì)應(yīng)的ID編號(hào)和目標(biāo)速度信息。
統(tǒng)計(jì)3種情況下的交通目標(biāo)數(shù)據(jù),采用跟蹤準(zhǔn)確率MOTA、跟蹤精確率MOTP和FPS這3種指標(biāo)來(lái)衡量跟蹤效果,數(shù)值越大表明效果越好。3個(gè)不同測(cè)試場(chǎng)景的試驗(yàn)結(jié)果見(jiàn)表2。
檢測(cè)結(jié)果顯示,對(duì)特征匹配進(jìn)行優(yōu)化后,檢測(cè)實(shí)時(shí)性在3種不同場(chǎng)景下分別提升了4.2Hz、3.6Hz和1.6Hz,與基準(zhǔn)DeepSORT算法相比,MOTA指標(biāo)平均提升了6.7%,MOTP指標(biāo)平均提升了7.4%。
5 結(jié)論
本文在DeepSORT算法的基礎(chǔ)上進(jìn)行了改進(jìn),針對(duì)路測(cè)跟蹤系統(tǒng)對(duì)實(shí)時(shí)性的要求,改進(jìn)匹配策略,提升檢測(cè)速度。試驗(yàn)結(jié)果表明,與原始跟蹤算法相比,特征優(yōu)化后的跟蹤算法提高了實(shí)時(shí)性和目標(biāo)跟蹤精確率。
參考文獻(xiàn)
[1]金立生,華強(qiáng),郭柏蒼,等.基于優(yōu)化DeepSort的前方車(chē)輛多目標(biāo)跟蹤[J].浙江大學(xué)學(xué)報(bào)(工學(xué)版),2021,55(6):1056-1064.
[2]陳佳倩,金距宏,王文遠(yuǎn),等.基于YOLOv3和DeepSort的車(chē)流量檢測(cè)[J].計(jì)量學(xué)報(bào),2021,42(6):718-723.
[3]XIE T,YAO X.Smart logistics warehouse moving-object tracking
based on YOLOv5 and DeepSORT[J].Applied sciences,2023,13(17):9895.
[4]羅茜,趙睿,莊慧珊,等.YOLOv5與Deep-SORT聯(lián)合優(yōu)化的無(wú)人機(jī)多目標(biāo)跟蹤算法[J].信號(hào)處理,2022,38(12):2628-2638.
[5]黃凱文,凌六一,王成軍,等.基于改進(jìn)YOLO和Deep-
SORT的實(shí)時(shí)多目標(biāo)跟蹤算法[J].電子測(cè)量技術(shù),2022,45(6):7-13.
[6]王瑞,林志堅(jiān),陳平平.基于改進(jìn)DeepSort的行人跟蹤方法研究[J].無(wú)線電通信技術(shù),2023,49(6):1117-1124.