張麗娟, 張紫薇, 姜雨彤, 李東明, 胡夢達(dá), 劉英雪
(1.無錫學(xué)院 物聯(lián)網(wǎng)工程學(xué)院, 江蘇 無錫 214105;2.長春工業(yè)大學(xué) 計算機(jī)科學(xué)與工程學(xué)院, 吉林 長春 130012;3.中國北方車輛研究所, 北京 100072;4.吉林農(nóng)業(yè)大學(xué) 信息技術(shù)學(xué)院, 吉林 長春 130118)
多目標(biāo)跟蹤(Multiple Object Tracking, MOT)是指輸入一段視頻,在沒有任何對目標(biāo)的先驗知識(外形或數(shù)量)的前提下,追蹤其中一類或多類物體的運動軌跡。多目標(biāo)跟蹤作為計算機(jī)視覺中的一項重要任務(wù),在智能監(jiān)視、自動駕駛、醫(yī)療診斷和軍事視覺引導(dǎo)等方面具有極其重要的應(yīng)用價值[1]。Aydogan Ozcan等人[2]提出一種全新的方法,無需計算機(jī)和任何數(shù)字處理即可立即透過未知、隨機(jī)生成的相位漫射介質(zhì),全光學(xué)重建被扭曲的物體圖像。本文主要研究行人多目標(biāo)跟蹤任務(wù)。
在多目標(biāo)跟蹤問題中,首先需要通過目標(biāo)檢測器如Faster R-CNN[3]、YOLOv3[4]、SSD[5]等對輸入幀完成目標(biāo)檢測;進(jìn)行ROI區(qū)域特征提取;然后進(jìn)行相似度計算,計算前后兩幀目標(biāo)之間的匹配程度(前后屬于同一目標(biāo)的之間的距離比較小,不同目標(biāo)的距離比較大);最后進(jìn)行數(shù)據(jù)關(guān)聯(lián),為每個對象分配目標(biāo)的ID。基于上述步驟的算法可以歸為基于檢測算法(Tracking by Detection, TBD)的跟蹤,此類跟蹤算法的準(zhǔn)確率依賴于檢測器精度。在Bewley A等人[6]的研究中提到,僅換一個更好的檢測器就可將目標(biāo)跟蹤表現(xiàn)提升18.9%。
目前有許多相關(guān)方法用于實時多目標(biāo)的檢測跟蹤,但是仍存在很多問題。首先,多目標(biāo)跟蹤精度還有待提高。當(dāng)視頻中出現(xiàn)遮擋或者目標(biāo)框的特征不明確時,易造成誤檢、漏檢或匹配錯誤,這些會大幅削弱模型跟蹤的精度,應(yīng)著眼目標(biāo)檢測的精度以及檢測框和軌跡的匹配兩部分來提升多目標(biāo)跟蹤的精度。其次,多目標(biāo)跟蹤的速度仍需提升?;谏疃葘W(xué)習(xí)的方法相比于傳統(tǒng)的跟蹤方法,雖然精度有明顯的優(yōu)勢,但深度學(xué)習(xí)的運行速度較慢,尤其Re-identification(Re-ID)極大地增加了模型的復(fù)雜度和時間成本,跟蹤的幀率較低。
為了解決上述問題,本文基于Deep SORT[7]的框架提出了改進(jìn)的行人多目標(biāo)跟蹤算法。首先給定視頻初始幀;然后使用目標(biāo)檢測器進(jìn)行檢測,本文使用YOLOv5來提取檢測框;將檢測框中對應(yīng)的目標(biāo)進(jìn)行特征提?。贿M(jìn)行相似度計算,計算前后兩幀目標(biāo)之間的匹配程度,這里會設(shè)定一個閾值,大于這個閾值的認(rèn)為匹配成功,將更新這個軌跡;最后為每個對象分配ID。
本文算法的貢獻(xiàn)如下:
(1)在檢測分支的主干網(wǎng)絡(luò)設(shè)計融入注意力機(jī)制,幫助模型更加精準(zhǔn)地定位和識別感興趣的目標(biāo),進(jìn)而提升目標(biāo)跟蹤的精度。
(2)數(shù)據(jù)關(guān)聯(lián)部分設(shè)計預(yù)測軌跡算法并行,該機(jī)制配合Deep SORT中的級聯(lián)匹配形成了預(yù)測-跟蹤-校準(zhǔn)體系。
(3)在MOT16、MOT17數(shù)據(jù)集上評估本文算法,并在MOT16(MOTA達(dá)到66.5%,IDF1達(dá)到64.2%,IDSW達(dá)到641)和MOT17(MOTA達(dá)到65.7%,IDF1達(dá)到62.8%,IDSW達(dá)到2072)上獲得了競爭性的結(jié)果。
在相關(guān)濾波和深度學(xué)習(xí)出現(xiàn)之前,傳統(tǒng)的視覺跟蹤方法研究進(jìn)展較慢且跟蹤精度差。相關(guān)濾波的跟蹤方法打破了當(dāng)時算法研究的局限性,成為該領(lǐng)域最被認(rèn)可的算法研究方向之一。MOSSE算法[8]利用快速傅里葉變換(Fast Fourier Transform,F(xiàn)FT)處理圖像和濾波器,跟蹤速度極快并且在實時跟蹤下也能保持良好的魯棒性。核相關(guān)濾波算法(Kernelized Correlation Filters, KCF)[9]第一次證明了脊回歸與周期性變化的樣本和經(jīng)典相關(guān)濾波器之間的聯(lián)系。KCF使用循環(huán)矩陣采集樣本,使用FFT加速算法運算。KCF不論在跟蹤效果還是在跟蹤速度上都有十分亮眼的表現(xiàn)。李等人[10]提出了自適應(yīng)多濾波器的目標(biāo)跟蹤算法。
近些年,深度學(xué)習(xí)受到了廣泛關(guān)注。左超等人[11]認(rèn)為深度學(xué)習(xí)在光學(xué)計量中受到越來越多的關(guān)注,為光學(xué)計量技術(shù)的概念帶來了顛覆性的變革。司徒等人[12]認(rèn)為深度神經(jīng)網(wǎng)絡(luò)(DNN)已經(jīng)成為解決許多在不同的領(lǐng)域具有挑戰(zhàn)性問題的方法。隨著目標(biāo)檢測領(lǐng)域深度學(xué)習(xí)算法的不斷發(fā)展,更多的跟蹤算法采用基于檢測跟蹤的框架,即先對視頻的每一幀進(jìn)行目標(biāo)的檢測,再對不同幀的檢測對象之間建立對應(yīng)關(guān)系以獲得軌跡。
基于TBD范式,Bewley A等人[6]提出的在線實時跟蹤算法SORT是最早利用卷積神經(jīng)網(wǎng)絡(luò)檢測行人的多目標(biāo)跟蹤算法之一。該算法將多目標(biāo)跟蹤問題分為目標(biāo)檢測部分、狀態(tài)預(yù)測部分和數(shù)據(jù)關(guān)聯(lián)部分。該算法經(jīng)過目標(biāo)檢測部分得到目標(biāo)的位置和類別,再通過卡爾曼濾波對每個檢測目標(biāo)預(yù)測和更新,最后使用匈牙利算法求解預(yù)測后的目標(biāo)和當(dāng)前幀中檢測到的目標(biāo)IOU匹配的代價矩陣。SORT運行速度極快,但易出現(xiàn)漏跟蹤或誤跟蹤的情況。Wojke等人[7]對SORT算法進(jìn)行了改進(jìn),提出了DeepSORT算法。DeepSORT算法在SORT算法基礎(chǔ)上加入卷積神經(jīng)網(wǎng)絡(luò)來提取外觀特征,并加入級聯(lián)匹配策略。DeepSORT算法在精度上有所提升,但運行速度較慢。Bergmann等人[13]提出了一種基于錨框和檢測器回歸的方式進(jìn)行下一幀的跟蹤預(yù)測的模型Tracktor。同時,提出的跟蹤器甚至不需要額外的跟蹤數(shù)據(jù)訓(xùn)練、僅僅依靠訓(xùn)練好的兩階段(Two-stage)檢測器就能實現(xiàn)。其次,通過添加ReID模型和CMC相機(jī)補(bǔ)償模型將提出的模型擴(kuò)展為Tracktor++。但該算法仍有許多局限,跟蹤中若存在嚴(yán)重的遮擋時不能較好地處理,對尺寸較小的目標(biāo)的跟蹤沒有較好的魯棒性。賀等人[14]改進(jìn)外觀模型,將原始的寬殘差網(wǎng)絡(luò)更換為ResNeXt網(wǎng)絡(luò),在主干網(wǎng)絡(luò)上引入卷積注意力機(jī)制,構(gòu)造新的行人重識別網(wǎng)絡(luò)。席等人[15]針對復(fù)雜場景下目標(biāo)之間遮擋造成跟蹤精度降低的問題,提出基于Fairmot框架的多目標(biāo)跟蹤改進(jìn)算法。
目前的跟蹤算法的檢測分支分為二步檢測和一步到位檢測兩種。其中二步檢測需要先生成建議框,然后再進(jìn)行細(xì)致的目標(biāo)檢測和分類;一步檢測會直接在網(wǎng)絡(luò)中提取特征來預(yù)測目標(biāo)位置,僅送入網(wǎng)絡(luò)一次就可以預(yù)測出所有的檢測框。顯然,目標(biāo)檢測中二步檢測算法相較于一步到位算法的速度會較慢,所以本文用YOLOv5來作為我們的檢測器。
本文采用的多目標(biāo)跟蹤算法是基于檢測的跟蹤范式,在復(fù)雜環(huán)境下對行人可以進(jìn)行在線跟蹤且滿足實時性的要求。如圖1所示,軌跡預(yù)測分支采用卡爾曼濾波和核相關(guān)濾波并行預(yù)測軌跡。目標(biāo)檢測分支采用YOLOv5框架完成行人檢測,數(shù)據(jù)關(guān)聯(lián)分支采用Deep SORT算法的框架實現(xiàn)行人跟蹤。
圖1 本文提出的行人多目標(biāo)算法框架Fig.1 Pedestrian multi-objective algorithm framework proposed in this paper
多目標(biāo)跟蹤首先需要通過目標(biāo)檢測器YOLOv5對輸入幀完成目標(biāo)檢測;進(jìn)行ROI區(qū)域特征提??;然后進(jìn)行相似度計算,計算前后兩幀目標(biāo)之間的匹配程度;最后進(jìn)行數(shù)據(jù)關(guān)聯(lián),為每個對象分配目標(biāo)的ID。本文提出的算法在YOLOv5檢測器中引入了注意力機(jī)制,并采用多任務(wù)并行的數(shù)據(jù)關(guān)聯(lián)來實現(xiàn)行人多目標(biāo)跟蹤。首先通過得到的跟蹤序列(第一幀得到的檢測框默認(rèn)為跟蹤序列)通過卡爾曼濾波和核相關(guān)濾波兩種算法并行預(yù)測視頻跟蹤序列得到預(yù)測軌跡,預(yù)測軌跡和這一幀的檢測框進(jìn)行級聯(lián)匹配或者IOU匹配成功后的軌跡和新軌跡納入跟蹤序列,若不確定軌跡連續(xù)匹配失敗且超出最大時間則刪除該軌跡。
本文的跟蹤場景定義在八維狀態(tài)空間(u,v,γ,h,x',y',γ',h')上,其中(u,v)是檢測框中心點坐標(biāo),γ是長寬比,h為檢測框高度,(x',y',γ',h')是在圖像坐標(biāo)中的各自速度。然后使用卡爾曼濾波更新,其觀測變量為(u,v,γ,h)。預(yù)測部分的完整表達(dá)式如式(1)所示:
匹配成功的軌跡將更新為檢測框的信息,卡爾曼濾波更新公式如式(2)所示:
其中:Pk是協(xié)方差矩陣,K是卡爾曼增益矩陣,H是測量矩陣,I是單位矩陣,R是噪聲,z是測量值。
目標(biāo)跟蹤中實時性是非常重要的。為了保證一定的幀率,我們考慮將核相關(guān)濾波和卡爾曼濾波并行預(yù)測軌跡序列。因為目標(biāo)跟蹤中目標(biāo)和背景是非線性的,在二維圖像我們不能做到將目標(biāo)和背景相分離,所以我們使用核函數(shù)k將圖像從低維轉(zhuǎn)換到高維,將目標(biāo)和背景線性可分,如式(3)所示:
其中:(xi,xj)是訓(xùn)練樣本,測試集z轉(zhuǎn)換成線性的?(z)。假設(shè)要預(yù)測第二幀圖中目標(biāo)的位置,就在上一幀框的附近劃分一個感興趣區(qū)域z,對這個感興趣區(qū)域進(jìn)行移位操作。KCF中引入了循環(huán)矩陣,巧妙地規(guī)避了矩陣的逆運算,大幅減少了運算量。并引入高斯核函數(shù),可以將非線性問題轉(zhuǎn)換為高維空間中的線性問題,如式(4)所示,使算法更具有一般性。
其中:α∈n×1,?(x)∈n×n。
選擇f(z)值最大的區(qū)域作為新目標(biāo)區(qū)域,由z可知目標(biāo)移動的位置,由此得到α=(K+λI)-1y。K是所有訓(xùn)練樣本的和相關(guān)矩陣,通過傅里葉變換FFT得到式(5),其中是核相關(guān)矩陣第一行。
接下來使用HOG來提取特征。將樣本區(qū)域劃分若干區(qū)域,并在每個區(qū)域提取32維特征。同樣對f(z)進(jìn)行傅里葉變換得到式(6):
其中:λ是權(quán)重,y是維度輸入,kxz是高斯核函數(shù),x、z是任意兩組循環(huán)移位得到的樣本集,F(xiàn)是循環(huán)矩陣。
KCF使用目標(biāo)周圍區(qū)域的循環(huán)矩陣采集正負(fù)樣本,利用脊回歸訓(xùn)練目標(biāo)檢測器,并利用循環(huán)矩陣在傅里葉空間可對角化的性質(zhì)將矩陣的運算轉(zhuǎn)化為向量的Hadamad積,降低了運算量,提高了跟蹤速度,使算法滿足實時性要求[16]。
檢測和跟蹤是兩個相輔相成的問題,良好的跟蹤可以彌補(bǔ)檢測的漏檢,良好的檢測可以防止跟蹤的軌跡偏離。所以我們考慮加入預(yù)測來解決目標(biāo)軌跡丟失、目標(biāo)編號跳轉(zhuǎn)等問題,提升目標(biāo)跟蹤的穩(wěn)定性。
KCF中用到的是HOG特征,主要包括高空間分辨率和高目標(biāo)定位精度的紋理信息。但是在復(fù)雜的跟蹤背景下,僅依靠HOG特征無法實現(xiàn)精確的目標(biāo)跟蹤。考慮到復(fù)雜背景和光照變化情況下的深度特征,CNN特征具有豐富的紋理信息和較強(qiáng)的魯棒性,但對目標(biāo)的空間分辨率和定位精度較低,所以融合手工制作和深度特征相應(yīng),利用它們的互補(bǔ)性來提升跟蹤的魯棒性。HOG表示的是梯度特征,可以表示局部的形狀信息。位置和方向空間的量化可以限制平移和旋轉(zhuǎn)的負(fù)面影響,所以HOG特征在跟蹤具有明顯邊沿輪廓的運動目標(biāo),比如行人時效果較優(yōu)。KCF在目標(biāo)的一些規(guī)則運動中對目標(biāo)也能穩(wěn)定跟蹤,彌補(bǔ)了DeepSORT中使用馬氏距離處理運動信息的缺陷。KCF跟蹤速度較快,不會對實時跟蹤處理過程造成太大壓力。
本文使用YOLOv5模型完成目標(biāo)檢測。YOLOv5的網(wǎng)絡(luò)結(jié)構(gòu)如圖2所示,主要包括特征提取網(wǎng)絡(luò)、加強(qiáng)特征提取網(wǎng)絡(luò)和預(yù)測網(wǎng)絡(luò)。其中,主干特征提取網(wǎng)絡(luò)(圖2中Backbone)的功能是進(jìn)行初步特征提取,利用主干網(wǎng)絡(luò)得到3個有效特征層;加強(qiáng)特征提取網(wǎng)絡(luò)(圖2中Neck)的功能是進(jìn)行進(jìn)一步的特征提取,利用特征金字塔加強(qiáng)特征提取網(wǎng)絡(luò),YOLOv5對從主干網(wǎng)絡(luò)中得到的有效特征層進(jìn)行特征融合,提取更有效的特征,獲得3個更加有效的特征層;預(yù)測網(wǎng)絡(luò)(圖2中Head)的功能是利用更有效的有效特征層獲得預(yù)測結(jié)果。YOLOv5主干網(wǎng)絡(luò)使用的是Focus結(jié)構(gòu)和跨階段局部網(wǎng)絡(luò)(CSPDarkNet),加強(qiáng)特征提取網(wǎng)絡(luò)采用路徑聚合網(wǎng)絡(luò)(PANet),預(yù)測網(wǎng)絡(luò)是YOLOv5通用檢測層。
圖2 YOLOv5框架Fig.2 YOLOv5 framework
視頻跟蹤中往往存在攝像頭的運動和行人運動。運動的不確定性會導(dǎo)致目標(biāo)跟蹤的精度大幅降低。YOLOv5網(wǎng)絡(luò)的特點是精度高、速度快。但視頻中若是人流量密度較高或是跟蹤背景復(fù)雜,跟蹤中會出現(xiàn)一定的漏檢、誤檢等情況。尤其是目標(biāo)被遮擋或目標(biāo)特征信息較少時,YOLOv5很難將目標(biāo)的位置檢測準(zhǔn)確。
通道注意力給模型帶來顯著的性能提升,但通道注意力通常會忽略位置信息。因此,Hou等人[17]設(shè)計了一種新的注意力機(jī)制(Coordinate Attention,CA),將位置信息嵌入到通道注意力。
CA模塊可以看作是一個用來增強(qiáng)特征表示能力的計算單元。如圖3所示,CA模塊進(jìn)行了平均池化、拼接、卷積等操作后輸出同尺寸的張量。CA模塊簡單靈活而且高效,可在幾乎不帶來額外計算開銷的前提下提升網(wǎng)絡(luò)的精度。
圖3 CA模塊結(jié)構(gòu)圖架Fig.3 Coordinate attention structure diagram
為了改善目標(biāo)檢測中的誤檢漏檢,在YOLOv5網(wǎng)絡(luò)中考慮采用添加注意力機(jī)制(CA)的方法來強(qiáng)化目標(biāo)對象的位置信息,增強(qiáng)特征表示能力,如圖4所示。注意力機(jī)制(CA)不僅可以捕獲跨通道信息,還可以捕獲方向感知和位置敏感信息,這可以幫助模型更準(zhǔn)確地定位和識別目標(biāo)并且可以輕松插入移動網(wǎng)絡(luò)的經(jīng)典構(gòu)建塊。除此之外,作為預(yù)訓(xùn)練模型還可以有效提升模型的精度,并為下游的跟蹤任務(wù)帶來顯著的性能提升。坐標(biāo)注意力機(jī)制將通道注意力分解為兩個并行的一維特征編碼過程,可以有效地將空間坐標(biāo)信息整合到生成的注意力圖中。在實時目標(biāo)跟蹤中,盡管精度是我們一直努力追求的目標(biāo),但是能夠?qū)崟r跟蹤保持畫面流暢度是第一前提,所以我們將坐標(biāo)注意力機(jī)制融合進(jìn)檢測模型,在不大量降低跟蹤速度的前提下提升檢測的精度。
圖4 YOLOv5主干網(wǎng)絡(luò)Fig.4 Improved YOLOv5 backbone network
在對被測圖元進(jìn)行測量之前,本文的跟蹤場景定義在八維狀態(tài)空間(u,v,γ,h,x',y',γ',h')上,其中(u,v)是檢測框中心點坐標(biāo),γ是長寬比,h為檢測框高度,(x',y',γ',h')是它們在圖像坐標(biāo)中的各自速度。然后使用卡爾曼濾波預(yù)測更新,其觀測變量為(u,v,γ,h)。DeepSORT首先采用卡爾曼濾波來預(yù)測已經(jīng)存在的軌跡,對預(yù)測得到的預(yù)測框和當(dāng)前幀的檢測框進(jìn)行級聯(lián)匹配和IOU匹配,圖5所示為匹配成功的軌跡序列。
圖5 成功匹配的軌跡Fig.5 Successfully matched tracks
如圖6所示,級聯(lián)匹配主要分為兩部分,一部分主要是使用外觀模型和運動模型來計算相似度,得到代價矩陣,并通過門控矩陣來限制代價矩陣中的最大值,經(jīng)多次實驗,本文將閾值設(shè)置為9.487 7。
圖6 DeepSORT中的級聯(lián)匹配Fig.6 Cascade matching in DeepSORT
馬氏距離度量如式(7)所示:
其中:dj代表第j個檢測框信息(u,v,y,h),Si是軌跡卡爾曼濾波器在當(dāng)前時刻觀測空間的協(xié)方差矩陣。yi是軌跡在當(dāng)前時刻的預(yù)測觀測量。式(7)表示第j個預(yù)測結(jié)果與第i條軌跡的適配度。使用馬氏距離可以考慮狀態(tài)估計的不確定度,通過閾值來排除不可能的關(guān)聯(lián)。如果第i個軌跡和第j個預(yù)測之間的關(guān)聯(lián)是可接受的,則其計算結(jié)果為1。
除馬氏距離外,使用余弦距離衡量外觀差異。對于每個檢測框dj,計算外觀描述符rj,其中||rj||=1。此外,對于每個軌跡k,存放最近的100個外觀描述符。最后,度量第i個軌跡和第j個探測之間的最小余弦距離,如式(8)所示:
如果第i個軌跡和第j個預(yù)測之間的關(guān)聯(lián)是可接受的,則其計算結(jié)果為1。
上述兩個度量是相互補(bǔ)充的。馬氏距離提供了目標(biāo)的可能位置信息,對短期預(yù)測有用;余弦距離更多考慮預(yù)測信息和軌跡的外觀特征。將二者加權(quán)相加,得到代價矩陣,如式(9)所示:
其中λ是權(quán)重系數(shù),可以有效控制兩者的占比。
當(dāng)目標(biāo)被長時間遮擋、卡爾曼濾波的預(yù)測較長時間不更新時,僅進(jìn)行匈牙利算法匹配具有不準(zhǔn)確性。DeepSORT中的級聯(lián)匹配有效避免了這種情況,提升了軌跡的精準(zhǔn)度。但是,當(dāng)目標(biāo)在遠(yuǎn)距離快速移動時,目標(biāo)可能會發(fā)生尺度變化或被遮擋,而這時跟蹤的軌跡將不再準(zhǔn)確。
本文設(shè)計了KCF和KF雙軌道預(yù)測機(jī)制,該機(jī)制配合DeepSORT中的級聯(lián)匹配形成了預(yù)測-跟蹤-校準(zhǔn)體系。當(dāng)跟蹤過程中卡爾曼濾波出現(xiàn)跟蹤目標(biāo)軌跡與檢測框位置差別較大時,這個預(yù)測軌跡則被認(rèn)為是未被匹配的軌跡。若KCF中此目標(biāo)軌跡的預(yù)測框和當(dāng)前幀的檢測框匹配成功,那么目標(biāo)軌跡在當(dāng)前幀被認(rèn)為是仍存在的軌跡,同時跟蹤框更新為當(dāng)前幀的檢測框,并學(xué)習(xí)框內(nèi)目標(biāo)的特征返回給卡爾曼濾波進(jìn)行更新。否則,目標(biāo)軌跡在當(dāng)前幀跟蹤失敗,設(shè)定為非確定的軌跡,但仍舊保存軌跡70幀且進(jìn)行軌跡的預(yù)測操作。這段時間內(nèi)若有任何一幀目標(biāo)的預(yù)測框和檢測框匹配成功,目標(biāo)軌跡則被重新認(rèn)為是確認(rèn)的軌跡。預(yù)測軌跡的準(zhǔn)確連續(xù)是跟蹤算法穩(wěn)定跟蹤目標(biāo)的前提,而這種預(yù)測與跟蹤并行的機(jī)制極大地提升了預(yù)測軌跡的準(zhǔn)確性和連續(xù)性。
實驗環(huán)境為Ubantu16.04操作系統(tǒng),Nvidia GeForce RTX 2080Ti顯卡,運行內(nèi)存為64 GB,采用Pytorch1.5.0深度學(xué)習(xí)框架,在python3.7的服務(wù)器上實現(xiàn)。本文算法目標(biāo)檢測訓(xùn)練數(shù)據(jù)集使用CrowdHuman數(shù)據(jù)集。CrowdHuman數(shù)據(jù)集[18]包含訓(xùn)練集15 000張,測試集5 000張,驗證集4 370張。訓(xùn)練集和驗證集中共有470 000個實例,約每張圖片包含23個人,同時存在各種各樣的遮擋。特征提取中的訓(xùn)練集用到的是Market-1501數(shù)據(jù)集。Market-1501數(shù)據(jù)集[19]的訓(xùn)練集中有12 936張圖片,標(biāo)注751個行人,測試集中有19 732張圖片,標(biāo)注750個行人,訓(xùn)練集和測試集中沒有重復(fù)的行人ID。
為驗證本文算法在復(fù)雜環(huán)境下行人多目標(biāo)穩(wěn)定跟蹤任務(wù)的有效性,選擇在公開數(shù)據(jù)集MOT16數(shù)據(jù)集上進(jìn)行消融實驗,在MOT16、MOT17數(shù)據(jù)集上與其他先進(jìn)算法進(jìn)行對比實驗。該數(shù)據(jù)集中包含室內(nèi)外復(fù)雜的環(huán)境。實驗評價指標(biāo)如表1所示。
表1 多目標(biāo)跟蹤的評價指標(biāo)Tab.1 Evaluation index of multi-target tracking
對YOLOv5檢測器采用坐標(biāo)注意力機(jī)制進(jìn)行消融實驗,得到的熱力圖如圖7所示。第一列為CrowdHuman數(shù)據(jù)集中原始圖像,第二列為YOLOv5檢測器原始模型的熱力圖,第三列為改進(jìn)后的模型的熱力圖。歸一化后,網(wǎng)絡(luò)在顏色越紅的地方分配的權(quán)重越大。第二列原始模型的熱力圖中紅色不集中,且部分分布在復(fù)雜背景中;改進(jìn)后的模型較好地改善了這一問題,第三列熱力圖中紅色集中在目標(biāo)上,背景為淺藍(lán)色。所以,引入注意力機(jī)制后的模型可以更加精準(zhǔn)地定位和識別感興趣的目標(biāo),檢測效果更優(yōu)。
圖7 檢測算法的消融實驗Fig.7 Ablation experiment of detection algorithm
對基于YOLOv5檢測器的DeepSORT模型,采用坐標(biāo)注意力機(jī)制和核相關(guān)濾波的模型(YOLOv5+CoorATT+DeepSORT+KCF)進(jìn)行實驗,結(jié)果如表2所示。
表2 3種模型在MOT16數(shù)據(jù)集上的消融實驗結(jié)果Tab.2 Ablation experiment results of three models on MOT16 dataset
由表2可知,相比于原始YOLOv5算法,采用坐標(biāo)注意力機(jī)制后的MOTA達(dá)到60.6%,提升了7.1%,并減少了大約200個軌跡碎片。坐標(biāo)注意力機(jī)制能夠提供更可靠的目標(biāo)檢測,進(jìn)而提升跟蹤精度。在此基礎(chǔ)上,融合了KCF的本文算法在HOTA上達(dá)到53.1%,與原模型相比,提升了近10%,且在MOTA、IDF1、MT、ML上的指標(biāo)都明顯優(yōu)于原模型,身份跳轉(zhuǎn)次數(shù)也由原模型的1 051降低至641,軌跡碎片數(shù)減少到620??梢?,改進(jìn)的模型在檢測精度和軌跡關(guān)聯(lián)上的指標(biāo)明顯優(yōu)于原模型,證明了本文所提出的改進(jìn)算法對跟蹤網(wǎng)絡(luò)具有很好的優(yōu)化效果。
為了充分驗證本文改進(jìn)算法的結(jié)果,本文選擇在MOT16、MOT17數(shù)據(jù)集上與幾種先進(jìn)的多目標(biāo)跟蹤算法結(jié)果進(jìn)行對比。表3和表4分別為在MOT16、MOT17數(shù)據(jù)集上的測試對比結(jié)果。
表3 本文算法與其他先進(jìn)算法在MOT16數(shù)據(jù)集上的對比結(jié)果Tab.3 Comparison results between the algorithm in this paper and other advanced algorithms on MOT16 dataset
表4 本文算法與其他先進(jìn)算法在MOT17數(shù)據(jù)集上的對比結(jié)果Tab.4 Comparison results between the algorithm in this paper and other advanced algorithms on MOT17 dataset
可以看出,對比其他主流算法,本文算法在接近實時跟蹤的同時具有更好的檢測精度和跟蹤效果。在MOT16數(shù)據(jù)集中,就檢測精度而言,F(xiàn)airMOT跟蹤算法對比本文算法的MOTA值高于1.6%。但綜合其他指標(biāo)來看,本文算法比Fair-MOT的IDSW值減少約230,身份跳轉(zhuǎn)次數(shù)的大幅減少會降低目標(biāo)的誤檢。就目標(biāo)檢測和數(shù)據(jù)關(guān)聯(lián)精度的平均性測量來看,HOTA值提升了0.9%。本文算法以24.0幀/s接近實時跟蹤速率的同時擁有較高的跟蹤精度。
以MOT16數(shù)據(jù)集中的MOT16-04為例,F(xiàn)PS與GPU占用如圖8所示。在MOT17數(shù)據(jù)集上,本文算法在領(lǐng)先CenterTrack跟蹤算法7幀/s的情況下,MOTA值提升了4.2%,IDF1提升了5.4%,IDSW值減少了826,再次驗證了本文引入坐標(biāo)注意力機(jī)制和KCF模塊的有效性,更高維跟蹤精度提升8.1%以及正確軌跡跟蹤數(shù)的提升證明了本文設(shè)計的多級匹配關(guān)聯(lián)模塊具有簡單、有效的優(yōu)點。
圖9展示了原模型和本文改進(jìn)的模型在MOT16數(shù)據(jù)集上對行人跟蹤結(jié)果的可視化。從MOT16-02中截取出5幀連續(xù)幀作為對比。視頻背景較為復(fù)雜,有高度參差不齊的樹木,建筑物前擺放有石樁木樁,街邊有圣誕樹等。當(dāng)路邊出現(xiàn)干擾物體時,易將此檢測為目標(biāo)進(jìn)行跟蹤,形成漏檢誤檢,影響檢測精度,如圖9中箭頭所示,將建筑物檢測為目標(biāo)并在接下來的幀圖片中繼續(xù)進(jìn)行檢測跟蹤,形成大量的誤檢和不正確的跟蹤軌跡,而左側(cè)坐在椅子上的行人沒有被檢測跟蹤,遺失了正確的目標(biāo)軌跡。圖9(c)改進(jìn)算法能夠有效地改善在復(fù)雜環(huán)境中背景部分被誤檢為目標(biāo)以及正確目標(biāo)的漏檢。一方面檢測分支引入了坐標(biāo)注意力機(jī)制,豐富了特征信息,有了更好的檢測效果;另一方面數(shù)據(jù)關(guān)聯(lián)引入KCF算法構(gòu)建了新的匹配體系,提升了軌跡的跟蹤穩(wěn)定性。從可視化圖中可知,改進(jìn)算法有更好的跟蹤精度。
圖9 改進(jìn)算法在MOT16-02中的跟蹤效果可視化Fig.9 Visualization of tracking effect of improved algorithm in MOT16-02
本文針對復(fù)雜背景下行人跟蹤易出現(xiàn)的漏檢誤檢,跟蹤效果差的問題,提出了一種改進(jìn)算法。該算法改進(jìn)了YOLOv5目標(biāo)檢測算法,加入了坐標(biāo)注意力機(jī)制來提升檢測精度,在復(fù)雜環(huán)境下減少了目標(biāo)的誤檢和漏檢;改進(jìn)了關(guān)聯(lián)分支,引入KCF算法構(gòu)建多級匹配機(jī)制,確保正確跟蹤的軌跡個數(shù),進(jìn)而提升跟蹤的精度。實驗結(jié)果表明,本文所提模型明顯優(yōu)于其他模型,在MOT16、MOT17數(shù)據(jù)集中,本文模型MOTA達(dá)到了66.5%;IDF1達(dá)到了64.2%;IDSW達(dá)到了641;跟蹤速率達(dá)到24 FPS,接近實時跟蹤的跟蹤速率;且有效改善了復(fù)雜環(huán)境下跟蹤中出現(xiàn)的漏檢誤檢的問題。