熊珍凱 程曉強(qiáng) 吳幼冬 左志強(qiáng) 劉家勝
多目標(biāo)跟蹤 (Multi-object tracking,MOT)技術(shù)是自動駕駛感知系統(tǒng)的重要組成部分.一方面,無人駕駛汽車的行駛過程是在時空下的連續(xù)運動,無人駕駛的規(guī)劃與決策過程大多是基于連續(xù)時間序列完成的,因此除了目標(biāo)的位置信息以外,目標(biāo)的速度、角速度、加速度等時間關(guān)聯(lián)特征也同樣重要.另一方面,由于目標(biāo)檢測本身依據(jù)單幀圖像或點云數(shù)據(jù)完成[1],缺乏目標(biāo)在時空運動中的上下文信息,因此當(dāng)光照變化、目標(biāo)遮擋等情況發(fā)生時,往往容易出現(xiàn)目標(biāo)丟失,這對于決策器和規(guī)劃器的穩(wěn)定運行會產(chǎn)生不利影響.因此,實現(xiàn)可靠的多目標(biāo)跟蹤意義重大.多目標(biāo)跟蹤任務(wù)可以定義為當(dāng)傳感器獲得一段時間內(nèi)的目標(biāo)數(shù)據(jù)序列后 (如一系列RGB圖像或3D 點云),實現(xiàn)不同時刻數(shù)據(jù)幀下同一目標(biāo)的正確匹配.多目標(biāo)跟蹤問題需要解決以下問題:1)對不同數(shù)據(jù)幀中的同一目標(biāo),分配唯一的ID 標(biāo)號,并維持該標(biāo)號不變;2)對于新出現(xiàn)的目標(biāo),分配新的ID 標(biāo)號,并進(jìn)行持續(xù)跟蹤;3)對已經(jīng)從傳感器數(shù)據(jù)中消失的目標(biāo),應(yīng)及時剔除,避免不利影響.
目前多目標(biāo)跟蹤的方法主要可以分為兩類,分別是端到端 (End to end)方法和基于檢測的跟蹤(Tracking by detection)方法.前者將目標(biāo)檢測與跟蹤視為一個統(tǒng)一的過程,輸入單幀圖像或點云數(shù)據(jù),直接輸出帶有唯一ID 標(biāo)號的目標(biāo)檢測框信息;后者則將檢測與跟蹤視為遞進(jìn)過程,首先使用目標(biāo)檢測網(wǎng)絡(luò)如Complex-YOLO[2],PointRCNN[3]獲得檢測框位置,然后再使用目標(biāo)在多幀數(shù)據(jù)中的時空聯(lián)系性進(jìn)行關(guān)聯(lián),獲得跟蹤結(jié)果.代表方法包括SORT(Simple online and real time tracking)[4]、Deep-SORT (SORT with a deep association metric)[5]和AB3DMOT (A baseline for 3D multi-object tracking)[6].其中AB3DMOT 將2D 多目標(biāo)跟蹤問題擴(kuò)展到3D 多目標(biāo)跟蹤任務(wù),提出了一種簡潔高效的實時多目標(biāo)跟蹤框架,并在KITTI 數(shù)據(jù)集上驗證了出色效果,實時性達(dá)到了200 幀/s,是3D 多目標(biāo)跟蹤領(lǐng)域的經(jīng)典之作.
本文在分析AB3DMOT 跟蹤算法的基礎(chǔ)上,針對原算法中的以下兩點問題進(jìn)行了研究:1)目標(biāo)關(guān)聯(lián)度計算在基于檢測的跟蹤方法中起到了突出作用,原AB3DMOT 算法使用傳統(tǒng)的交并比 (Intersection over union,IoU)作為度量指標(biāo),因此存在當(dāng)兩個檢測框不相交時IoU=0 的問題[7-8],造成匹配失敗;2)目前的MOT 算法中大多都會用到生存周期 (Birth and death memory,BDM)策略,用于降低漏檢率、獲得更好的跟蹤效果,但多采用固定生存周期,對所有目標(biāo)進(jìn)行無差別處理,并未考慮檢測結(jié)果本身置信度對跟蹤的影響.針對上述問題,本文提出了一種基于邊界交并比 (Border intersection over union,BIoU)度量的自適應(yīng)多目標(biāo)跟蹤算法,主要創(chuàng)新點包括:
1)提出了BIoU 度量方法用于計算檢測結(jié)果的關(guān)聯(lián)性矩陣,相比于單一使用歐氏距離或傳統(tǒng)IoU度量的方法,BIoU 可以有效解決無交集和奇點問題,獲得更可靠的多目標(biāo)跟蹤結(jié)果;
2)提出了一種自適應(yīng)的生存周期管理策略,將檢測結(jié)果本身的置信度與生存周期關(guān)聯(lián)起來,可以有效避免由于遮擋導(dǎo)致的跟蹤失敗和由于誤檢導(dǎo)致的錯誤跟蹤的情況.
基于KITTI 多目標(biāo)跟蹤數(shù)據(jù)集[9]進(jìn)行的實驗表明,本文提出的基于BIoU 和自適應(yīng)生存周期管理的多目標(biāo)跟蹤算法,相比于原算法可以有效地提高跟蹤的準(zhǔn)確性和魯棒性.
多目標(biāo)跟蹤問題按照跟蹤目標(biāo)的狀態(tài)種類可以分為2D 多目標(biāo)跟蹤和3D 多目標(biāo)跟蹤.其中2D 多目標(biāo)跟蹤主要用于圖像領(lǐng)域的目標(biāo)跟蹤任務(wù),如安防監(jiān)控、軍事偵察、自然觀測等領(lǐng)域[10].DeepSORT[5]算法引入馬氏距離度量和級聯(lián)匹配用于提高跟蹤精度.Leal-Taixé 等[11]介紹了一種兩階段深度學(xué)習(xí)跟蹤算法:使用局部時空編碼聚合像素和光流信息,通過梯度增強(qiáng)分類器將圖像上下文特征與CNN 輸出相結(jié)合.孟琭等[12]詳細(xì)說明了光流法、相關(guān)濾波法和深度學(xué)習(xí)方法在目標(biāo)跟蹤領(lǐng)域的應(yīng)用效果.與2D 多目標(biāo)跟蹤相比,基于點云數(shù)據(jù)的3D 多目標(biāo)跟蹤具有較為準(zhǔn)確的深度估計,此類方法大多基于運動學(xué)模型.Azim 等[13]利用卡爾曼濾波器對獲得的相鄰兩幀激光點云基于八叉樹的占據(jù)柵格地圖分析其不一致信息,從而檢測動態(tài)物體;再使用全局最近鄰的方法進(jìn)行數(shù)據(jù)關(guān)聯(lián);最后基于卡爾曼濾波跟蹤動態(tài)物體的中心點.Song 等[14]采用一種多任務(wù)的稀疏學(xué)習(xí)算法來選取最佳的候補對象,提高了復(fù)雜環(huán)境下的跟蹤效果.為了驗證有效的深度估計對目標(biāo)跟蹤性能的影響,Sharma 等[15]使用基于3D點云校準(zhǔn)的2D 圖像進(jìn)行目標(biāo)跟蹤,考慮了三維空間信息,有效緩解了基于RGB 圖像中的深度估計不準(zhǔn)確和遮擋問題,實現(xiàn)了較好的跟蹤效果.2020 年,Weng 等[6]將2D 跟蹤算法SORT 的思想遷移到3D 點云中,提出AB3DMOT 算法,無需GPU 訓(xùn)練即可實現(xiàn)優(yōu)秀的跟蹤性能.
目標(biāo)匹配是多目標(biāo)跟蹤中的重要環(huán)節(jié),有效度量預(yù)測目標(biāo)與檢測目標(biāo)之間的關(guān)聯(lián)性,是獲得可靠匹配結(jié)果的關(guān)鍵.常用的匹配方法包括基于外觀顯著性特征的匹配方法[16-17]和基于空間位置相關(guān)性的匹配方法[18-19].與2D 圖像相比,3D 點云數(shù)據(jù)更為稀疏,外觀特征不明顯,因此更常采用空間位置的相關(guān)性進(jìn)行匹配.IoU 和目標(biāo)間距離是常用的兩種度量方法.SORT[4]和AB3DMOT[6]算法中均使用預(yù)測框與檢測框的IoU 值作為關(guān)聯(lián)度量,再利用匈牙利算法進(jìn)行匹配.使用原始IoU 進(jìn)行關(guān)聯(lián)度量存在兩個問題:1)當(dāng)預(yù)測框與檢測框無交集時IoU=0,此時無法獲得有效的度量信息;2)多個預(yù)測框可能與檢測框具有相同的IoU 值,如圖1(a)中的情況.另一種方法是使用目標(biāo)間距離作為度量指標(biāo),如預(yù)測框與檢測框中心點之間的歐氏距離[19].但使用距離度量同樣存在不同的預(yù)測框與目標(biāo)框的距離相同的情況.如圖1(b),雖然藍(lán)色和紅色表示的兩個預(yù)測框差異很大,但它們與檢測框中心的歐氏距離是相同的.近年來,使用深度網(wǎng)絡(luò)來學(xué)習(xí)目標(biāo)關(guān)聯(lián)性特征的方法也得到了諸多研究,如Wu 等[18]將Point-RCNN 檢測器得到的特征也作為關(guān)聯(lián)度量的要素加入度量過程,從而獲得更可靠的度量結(jié)果.
圖1 IoU 度量和歐氏距離度量失效情況Fig.1 Invalid cases about IoU metrics and Euclidean distance metrics
在現(xiàn)有的多目標(biāo)跟蹤算法中,會使用生存周期管理策略[5-6,18].一方面,當(dāng)出現(xiàn)因為遮擋造成的目標(biāo)丟失情況時,生存周期管理策略可以保證在一段時間內(nèi)仍然可以持續(xù)跟蹤目標(biāo)而不會立刻丟失;另一方面,當(dāng)出現(xiàn)誤檢情況時,由于生存周期管理策略要求目標(biāo)連續(xù)檢測多幀,所以可以有效過濾掉單幀誤檢的目標(biāo).目前通常使用的是固定周期的管理策略,即對所有目標(biāo)進(jìn)行相同時長跟蹤用于確定目標(biāo)或刪除目標(biāo).而在實際應(yīng)用中,考慮到目標(biāo)檢測單元會輸出檢測框的置信度,用于表征檢測結(jié)果的可靠性,因此,可以根據(jù)置信度對不同目標(biāo)進(jìn)行自適應(yīng)生存周期管理,即:對置信度較高的目標(biāo)可以保持更長時間以解決遮擋造成的目標(biāo)漏檢;對置信度較低的目標(biāo)在發(fā)生誤檢后應(yīng)盡快刪除.
多目標(biāo)跟蹤的主要任務(wù)是在給定一個圖像序列的前提下,找到圖像序列中待檢測目標(biāo),并將不同幀中檢測到的目標(biāo)進(jìn)行關(guān)聯(lián),得到目標(biāo)的運動信息,給每一個運動目標(biāo)一個固定準(zhǔn)確的ID 標(biāo)號.對于3D目標(biāo)檢測,一方面其天然克服了基于RGB 圖像中的2D 目標(biāo)檢測的遮擋與目標(biāo)位置估計不準(zhǔn)確的問題,使得基于運動估計的在線跟蹤算法易于應(yīng)用;另一方面,對于3D 目標(biāo)檢測的點云數(shù)據(jù)而言,缺乏類似RGB 圖像那樣豐富的語義特征,導(dǎo)致難以使用特征描述的方式進(jìn)行跟蹤.因此,AB3DMOT[6]算法僅使用簡單樸素的跟蹤策略就實現(xiàn)了高效實時的目標(biāo)跟蹤效果.但是,該方法在匈牙利匹配環(huán)節(jié)中使用原始的3D IoU 作為成本度量,而無人駕駛汽車的多目標(biāo)跟蹤本質(zhì)仍然是一種近似的2D 平面運動,其在z軸方向上變化較小,導(dǎo)致目標(biāo)檢測在z軸方向上的估計將對跟蹤性能產(chǎn)生較大影響,同時由于IoU 度量的局限性,本文提出BIoU 作為一種新的成本度量融入到匈牙利匹配之中.目標(biāo)的生存周期管理是目標(biāo)跟蹤的重要環(huán)節(jié),生存周期設(shè)置過短在目標(biāo)檢測不穩(wěn)定時會造成較為頻繁的ID 切換,生存周期過長容易增加錯誤跟蹤和目標(biāo)誤檢.因此,通過對跟蹤軌跡的置信度打分,本文設(shè)計了自適應(yīng)的生存周期管理機(jī)制,動態(tài)地調(diào)整目標(biāo)的生存周期減少了ID 切換和目標(biāo)誤檢,實現(xiàn)了較好的跟蹤性能.
如圖2 所示,本文所提出的3D 多目標(biāo)跟蹤的整體流程可以分為以下幾個部分:
圖2 基于BIoU 和自適應(yīng)生存周期的3D 多目標(biāo)跟蹤Fig.2 3D multi-object tracking based on BIoU and adaptive birth and death memory
1)使用3D 檢測器獲得目標(biāo)檢測框;
2)使用3D 卡爾曼濾波器獲得上一幀的目標(biāo)預(yù)測框;
3)基于BIoU 計算檢測框與預(yù)測框的關(guān)聯(lián)度,使用匈牙利匹配算法獲得最優(yōu)匹配結(jié)果;
4)使用3D 卡爾曼濾波對所有匹配目標(biāo)進(jìn)行狀態(tài)更新;
5)對未匹配成功的目標(biāo)進(jìn)行生存周期管理;6)輸出具有唯一ID 標(biāo)號的目標(biāo)邊框.
卡爾曼濾波[20]是目前狀態(tài)估計應(yīng)用最為廣泛的估計優(yōu)化算法,它能夠根據(jù)過去的信號信息,利用統(tǒng)計計算的原理,優(yōu)化最小均方誤差,從而預(yù)測出未來的狀態(tài)量.卡爾曼濾波是對時間參數(shù)估計的最小二乘逼近,能夠建立起狀態(tài)變量隨時間變化的方程,從而估計出今后某個時刻的狀態(tài).
卡爾曼濾波算法的核心包括如下幾個方程:
1)描述預(yù)測過程中,系統(tǒng)的狀態(tài)向量預(yù)測方程
其中,A為狀態(tài)轉(zhuǎn)移矩陣,B為控制輸入矩陣,Uk表示k時刻的控制輸入向量,表示k時刻狀態(tài)的預(yù)測值,Xk-1表示k-1 時刻的狀態(tài)輸出值,Wk-1為k-1 時刻的狀態(tài)轉(zhuǎn)移過程中的隨機(jī)干擾噪聲,表現(xiàn)為均值為零的高斯白噪聲.
2)描述先驗估計協(xié)方差矩陣的更新過程
其中,Q為狀態(tài)轉(zhuǎn)移過程噪聲Wk的協(xié)方差矩陣,為k時刻的先驗估計協(xié)方差矩陣的預(yù)測值.
3)描述觀測模型中由系統(tǒng)觀測值得到系統(tǒng)觀測向量的過程
其中,H為狀態(tài)觀測矩陣,Zk為k時刻狀態(tài)變量的觀測值,Vk為狀態(tài)觀測過程中的隨機(jī)干擾噪聲向量,表現(xiàn)為均值為零的高斯白噪聲.
4)卡爾曼濾波增益方程 (權(quán)重)
其中,Kk表示k時刻的卡爾曼增益,R為觀測噪聲Vk的協(xié)方差矩陣.
5)卡爾曼濾波估計方程 (k時刻的最優(yōu)狀態(tài)估計)
其中,Xk表示k時刻狀態(tài)向量經(jīng)過卡爾曼濾波后的最優(yōu)估計,是系統(tǒng)的實際輸出值,表現(xiàn)為在預(yù)測值的基礎(chǔ)上按照卡爾曼濾波增益疊加一個預(yù)測誤差項.
6)卡爾曼濾波協(xié)方差估計方程 (k時刻的最優(yōu)協(xié)方差估計)
其中,Pk為k時刻卡爾曼濾波的后驗估計協(xié)方差矩陣的預(yù)測值.該方程用來描述狀態(tài)向量協(xié)方差矩陣的變化過程,正是這種不斷更新的機(jī)制才能保證卡爾曼濾波不斷克服隨機(jī)噪聲的影響.
卡爾曼濾波算法能夠在不準(zhǔn)確的測量數(shù)據(jù)基礎(chǔ)上盡可能地消除噪聲的影響,對真實值做出預(yù)測.目標(biāo)跟蹤算法把跟蹤目標(biāo)的屬性作為狀態(tài)變量,利用卡爾曼濾波器對屬性進(jìn)行線性濾波,得到更好的預(yù)測值.
2.2.1 狀態(tài)預(yù)測
為了預(yù)測上一幀到當(dāng)前幀的目標(biāo)狀態(tài),這里使用恒定速度模型估計對象間的幀間位移,將目標(biāo)狀態(tài)表示成一個11 維向量,即
其中,x,y和z分別表示目標(biāo)的中心點坐標(biāo),l,w和h分別表示目標(biāo)的3D 邊框尺度,θ為目標(biāo)邊框的航向角,s表示當(dāng)前軌跡的置信度分?jǐn)?shù),vx,vy和vz分別為目標(biāo)在三維空間中沿x,y和z軸方向上的運動速度.
第k-1 幀數(shù)據(jù)中的所有目標(biāo)狀態(tài)構(gòu)成的集合表示為
對于k-1 時刻的每個目標(biāo)狀態(tài)都可以給出k時刻的預(yù)測狀態(tài).
2.2.2 狀態(tài)更新
根據(jù)數(shù)據(jù)關(guān)聯(lián)的結(jié)果,可以將跟蹤目標(biāo)與檢測目標(biāo)分為4 類:跟蹤匹配成功、檢測匹配成功、跟蹤匹配失敗和檢測匹配失敗.它們各自的具體形式為
其中,Tmatch和Dmatch表示匹配成功的跟蹤目標(biāo)與檢測目標(biāo),wk表示當(dāng)前時刻匹配成功的數(shù)量,Tunmatch和Dunmatch分別表示匹配失敗的跟蹤目標(biāo)和檢測目標(biāo),mk-1表示上一時刻的所有跟蹤目標(biāo)數(shù)量,nk表示當(dāng)前時刻的檢測目標(biāo)數(shù)量.完成匹配之后,使用匹配成功的目標(biāo)Dmatch根據(jù)貝葉斯規(guī)則更新對應(yīng)的目標(biāo)狀態(tài).
為了解決傳統(tǒng)IoU 度量或距離度量的失效問題,本文設(shè)計了一種結(jié)合歐氏距離與IoU 的綜合度量指標(biāo),即BIoU 度量,它由原始IoU 和邊界距離懲罰項共同組成,具體形式為
其中,IoU(B1,B2)表示一般意義下的兩個邊界框的交并比,RBIoU為基于邊界歐氏距離的懲罰項,γ是懲罰項因子,分別表示兩個邊界框最小外接框的左上頂點和右下頂點,函數(shù)ρ(·)為兩個頂點間的歐氏距離,Cmax(B1,B2)表示兩個邊界框最小外接框的最大對角線距離,用于對邊界距離進(jìn)行歸一化處理.需要說明的是,采用最小外接框的方法可以弱化旋轉(zhuǎn)對邊界距離的影響,便于計算邊界距離.圖3(a)展示了2D BIoU 的計算方法.綠色和藍(lán)色實線框代表兩個不同的邊界框,虛線框為它們各自的最小外接框,灰色區(qū)域表示IoU(B1,B2),紅色線段表示邊界距離黃色線段表示最大對角線距離Cmax(B1,B2).
圖3 邊界交并比示意圖Fig.3 Schematic diagram of BIoU
對于3D 多目標(biāo)跟蹤,本文將上述2D BIoU 的定義擴(kuò)展到3D 坐標(biāo)系下,如圖3(b)所示.3D BIoU的計算式為
其中,IoU3D(V1,V2)表示兩個3D 邊界框V1和V2的體積交并比 (圖中的灰色區(qū)域),懲罰項與邊界距離相關(guān),分別是兩個3D邊界框最小外接框的左-前-上頂點和右-后-下頂點,ρ(plft1,plft2)和ρ(prrb1,prrb2)分別是對應(yīng)邊界距離 (圖中的紅色線段),Cmax(V1,V2)則表示兩個最小外接框所有頂點間的最大對角線距離 (圖中的黃色線段).在給定閾值BIoUthres的情況下,當(dāng)BIoU3D<BIoUthres時,則認(rèn)為兩個3D 邊界框匹配失敗,即兩個3D 邊界框分別屬于獨立的兩個不同目標(biāo).
在多目標(biāo)跟蹤中,現(xiàn)有目標(biāo)會離開視野,也可能有新目標(biāo)進(jìn)入視野,因此需要一個模塊來管理軌跡的產(chǎn)生和刪除.生存周期管理是常見的做法:將所有未成功匹配的檢測目標(biāo)視為潛在的新軌跡,為了避免跟蹤誤報,只有在該目標(biāo)連續(xù)檢測到Fmin幀后才認(rèn)為是一個新的目標(biāo)軌跡;將所有未成功匹配的跟蹤目標(biāo)結(jié)果視為即將離開視野的軌跡,為了避免誤刪軌跡,只有該目標(biāo)未成功匹配Fmax幀后才視為目標(biāo)丟失并將其刪除.理想情況下,該策略可以保留因為單幀漏檢未能成功匹配的目標(biāo)軌跡,并僅刪除已經(jīng)離開視野的目標(biāo)軌跡.但在實際中,3D 目標(biāo)檢測器的誤檢和漏檢普遍存在,采用固定的生存周期管理策略,將出現(xiàn)錯誤的跟蹤軌跡.原因主要是固定的生存周期管理策略未有效利用檢測目標(biāo)的置信度信息,而對所有目標(biāo)均進(jìn)行相同周期的檢查操作,從而導(dǎo)致檢測置信度較低的目標(biāo) (往往為誤檢目標(biāo))也需要跟蹤多幀后才會被刪除,而檢測置信度較高的目標(biāo)一旦被多幀遮擋 (往往出現(xiàn)漏檢)也可能被刪除.
因此,本文提出一種自適應(yīng)生存周期管理策略,根據(jù)目標(biāo)檢測結(jié)果的置信度,動態(tài)調(diào)整最大生存周期,具體為
其中,score為當(dāng)前目標(biāo)的檢測置信度,α和β為尺度系數(shù)和偏移系數(shù),σ(·)表示Sigmoid 非線性函數(shù),Fmax為最大生存周期,FAmax為根據(jù)目標(biāo)檢測置信度計算后的生存周期.通過選取合適的α和β,實現(xiàn)更好的跟蹤效果.圖4 給出了當(dāng)Fmax=3,α=0.5,β=-5 時生存周期與檢測置信度之間的關(guān)系.利用Sigmoid 函數(shù)的S 型曲線特性,檢測目標(biāo)的置信度越高,該目標(biāo)的生存周期將會越長,從而實現(xiàn)生存周期動態(tài)調(diào)整.
圖4 自適應(yīng)生存周期Fig.4 Adaptive birth and death memory
本實驗基于KITTI 數(shù)據(jù)集的多目標(biāo)跟蹤基準(zhǔn)進(jìn)行評估,該基準(zhǔn)由21 個訓(xùn)練序列和29 個測試序列組成.對于每個序列都提供了LiDAR 點云、RGB圖像以及校準(zhǔn)文件.用于訓(xùn)練和測試的數(shù)據(jù)幀數(shù)分別為8 008 和11 095.對于測試集數(shù)據(jù),KITTI 不向用戶提供任何標(biāo)簽,而是在服務(wù)器上保留標(biāo)簽以進(jìn)行MOT 評估.對于訓(xùn)練集數(shù)據(jù),含有30 601 個目標(biāo)和636 條軌跡,同樣包括Car、Pedestrian 和Cyclist類別.由于本文使用的目標(biāo)跟蹤系統(tǒng)是基于卡爾曼濾波算法的,不需要進(jìn)行深度學(xué)習(xí)訓(xùn)練,因此將所有21 個訓(xùn)練序列作為驗證集進(jìn)行驗證.實驗對比了Car、Pedestrian 和Cyclist 全部3 個類別上的多目標(biāo)跟蹤效果.
對于多目標(biāo)跟蹤方法,理想的評價指標(biāo)應(yīng)當(dāng)能夠同時滿足3 個要求:1)所有出現(xiàn)的目標(biāo)都能夠及時被發(fā)現(xiàn);2)找到的目標(biāo)位置應(yīng)當(dāng)盡可能和真實的目標(biāo)位置一致;3)應(yīng)當(dāng)保持目標(biāo)跟蹤的一致性,避免目標(biāo)標(biāo)志的頻繁切換.根據(jù)上述要求,傳統(tǒng)的多目標(biāo)跟蹤將評價指標(biāo)設(shè)置為以下內(nèi)容:多目標(biāo)跟蹤準(zhǔn)確度 (Multi-object tracking accuracy,MOTA)用于確定目標(biāo)的個數(shù)以及跟蹤過程中的誤差累計,多目標(biāo)跟蹤精度 (Multi-object tracking precision,MOTP)用于衡量目標(biāo)位置上的精確度,主要跟蹤軌跡命中率 (Mostly tracked,MT),主要丟失軌跡丟失率 (Mostly lost,ML),身份切換次數(shù) (ID switch,IDS),跟蹤打斷次數(shù) (Fragment,FRAG)等.
實驗流程如圖5 所示,其中3D 目標(biāo)檢測器使用與AB3DMOT 算法相同的、已經(jīng)訓(xùn)練好的PointRCNN 模型.在目標(biāo)匹配階段,使用本文提出的BIoU 計算預(yù)測框與目標(biāo)框之間的關(guān)聯(lián)度,然后使用匈牙利匹配算法進(jìn)行目標(biāo)匹配.成功匹配的目標(biāo)送入卡爾曼濾波器進(jìn)行狀態(tài)更新,未成功匹配的檢測目標(biāo)和預(yù)測目標(biāo)均送入自適應(yīng)周期管理模塊進(jìn)行判定.自適應(yīng)周期管理模塊根據(jù)目標(biāo)的置信度分?jǐn)?shù)自適應(yīng)調(diào)整目標(biāo)的最大生存周期,刪除已達(dá)到最大生存周期而仍未匹配成功的目標(biāo),最終得出具備唯一ID 標(biāo)號的目標(biāo)軌跡.BIoU 和自適應(yīng)生存周期管理中涉及的參數(shù)通過整定得到,最終模型使用的參數(shù)如表1 所示.
表1 模型參數(shù)Table 1 Model parameters
圖5 基于激光雷達(dá)的3D 多目標(biāo)跟蹤整體流程Fig.5 Overall pipeline for LiDAR-based 3D multi-object tracking
為了驗證本文所提出的基于BIoU 度量和自適應(yīng)生存周期管理多目標(biāo)跟蹤算法的性能,本文與基準(zhǔn)AB3DMOT 算法在KITTI 多目標(biāo)跟蹤數(shù)據(jù)集的3 類目標(biāo)上進(jìn)行了對比;同時在Car 類別上還與另外兩種端到端的深度學(xué)習(xí)算法FANTrack[21]和DiTNet[22]進(jìn)行了比較.實驗結(jié)果如表2 所示.
表2 KITTI 數(shù)據(jù)集上對3 類目標(biāo) (汽車、行人、騎自行車的人)跟蹤性能對比Table 2 Tracking performance comparison about three kinds of objects (Car,Pedestrian,Cyclist)on KITTI dataset
表2 的結(jié)果表明,本文提出的基于BIoU 度量和自適應(yīng)生存周期管理策略的多目標(biāo)跟蹤算法相比于基準(zhǔn)算法在3 類目標(biāo)上均獲得了更高的MT 值,意味著本文算法在對目標(biāo)的長時間跟蹤性能上明顯優(yōu)于基準(zhǔn)算法;在Pedestrian 和Cyclist 兩個類別上,跟蹤準(zhǔn)確度MOTA 較基準(zhǔn)算法有顯著提升,而在Car 類別上與基準(zhǔn)算法基本一致.最值得注意的是,本文算法在命中率MT 和丟失率ML 這兩項指標(biāo)上均有顯著提升,說明了本文算法在長時間穩(wěn)定跟蹤目標(biāo)這個問題上具有明顯優(yōu)勢.另外,在Pedestrian 和Cyclist 兩類目標(biāo)的跟蹤任務(wù)上獲得更好的效果,也說明了基于BIoU 的目標(biāo)跟蹤可以有效提高對小目標(biāo)的跟蹤性能.分析其原因,可以發(fā)現(xiàn)小目標(biāo)更易于出現(xiàn)檢測框與預(yù)測框交集較少或無交集的情況,這也正是BIoU 相較于傳統(tǒng)IoU 最大的優(yōu)點,即解決IoU 相等或IoU=0 時的關(guān)聯(lián)度量問題.
圖6 和圖7 分別展示在出現(xiàn)誤檢和漏檢情況時,本文所提出改進(jìn)跟蹤算法和基準(zhǔn)算法的跟蹤結(jié)果.在圖6 的第2 行中,兩類算法均出現(xiàn)了誤檢的情況 (用紅色圓圈標(biāo)記),但相較于基準(zhǔn)算法(圖6(a)的第1 行),由于引入了自適應(yīng)生存周期管理,因此在下一幀數(shù)據(jù)中,改進(jìn)跟蹤算法及時將誤檢目標(biāo)刪除,而基準(zhǔn)跟蹤算法仍會對誤檢目標(biāo)進(jìn)行持續(xù)跟蹤,直到生存周期結(jié)束.上述結(jié)果表明基于本文改進(jìn)的跟蹤算法可以明顯減小誤檢目標(biāo)的生存周期,降低誤檢次數(shù).
圖6 改進(jìn)方法與基準(zhǔn)方法的跟蹤比較 (誤檢)Fig.6 Tracking comparison between our improved method and baseline (false detection)
圖7 改進(jìn)方法與基準(zhǔn)方法的跟蹤比較 (漏檢)Fig.7 Tracking comparison between our improved method and baseline (missed detection)
同樣,對于目標(biāo)漏檢的情況,本文算法也能給出更好的結(jié)果.圖7 (a)的第3 行中,由于紅色圓圈標(biāo)記的目標(biāo)被其他物體遮擋而導(dǎo)致漏檢,在下一幀中,該目標(biāo)再次被檢測到時,已被標(biāo)記為新的目標(biāo)(這一點從對比圖7(a)的第2 行和圖7(a)的第4 行中檢測框顏色不一致可以看出).而使用本文提出的改進(jìn)算法,即使在圖7(b)的第3 行中出現(xiàn)了遮擋,因為生存周期并未結(jié)束,因此目標(biāo)仍然在持續(xù)跟蹤,也未發(fā)生身份切換的問題.這說明,在由于目標(biāo)遮擋等問題出現(xiàn)漏檢時,本文提出的改進(jìn)跟蹤算法可以有效克服漏檢問題,保持目標(biāo)持續(xù)跟蹤與ID恒定.
為了進(jìn)一步說明BIoU 度量和自適應(yīng)生存周期管理策略的實際效果,本文在KITTI 驗證集上進(jìn)行了消融實驗.為了便于比較,本文設(shè)置最大生存周期Fmax=5;對于固定生存周期策略,生存周期即為Fmax;對于自適應(yīng)生存周期策略,采用式 (13)描述的關(guān)系自適應(yīng)計算生存周期FAmax.消融實驗的結(jié)果如表3 所示,其中不使用BIoU 和FAmax的跟蹤方法即為原始AB3DMOT 算法.
表3 消融實驗Table 3 Ablation experiments
首先,對BIoU 進(jìn)行性能分析.在表3 中,每類目標(biāo)的第2 行數(shù)據(jù)與第1 行相比,區(qū)別在于使用BIoU替代原算法中的傳統(tǒng)IoU.對比發(fā)現(xiàn):3 類目標(biāo)的跟蹤準(zhǔn)確度MOTA 和命中率MT 性能均有提升;在大目標(biāo) (Car 類別)上,MOTA 和MT 略有提升;在小目標(biāo) (Pedestrian 和Cyclist)上提升明顯,Pedestrian 命中率MT 提升超過3%,Cyclist 準(zhǔn)確度MOTA 提升超過4%.需要說明的是:對于小目標(biāo)類別,更容易出現(xiàn)預(yù)測框與檢測框不重合 (IoU=0)的問題.這種情況下,本文提出的BIoU 由于引入了邊界度量懲罰項,可以克服傳統(tǒng)IoU 失效的問題,獲得可靠的匹配結(jié)果,從而提高跟蹤精度和穩(wěn)定性.
其次,對自適應(yīng)生存周期管理策略進(jìn)行性能分析.在表3 中,每類目標(biāo)的第3 行數(shù)據(jù)與第1 行相比,區(qū)別在于使用自適應(yīng)生存周期替代原算法中的固定生存周期.對比發(fā)現(xiàn):使用自適應(yīng)生存周期可以提高跟蹤準(zhǔn)確度MOTA,減少身份切換次數(shù)IDS和跟蹤打斷次數(shù)FRAG;每個類別的MOTA 均有大約2%的性能提升;在Pedestrian 類別上,IDS和FRAG 均有明顯降低,這是因為對于Pedestrian,更容易由于匹配失敗出現(xiàn)漏檢情況,使用自適應(yīng)生存周期管理策略可以有效克服固定生存周期對漏檢過于敏感的缺點.
最后,對比基準(zhǔn)的AB3DMOT 算法,使用本文所提出的基于BIoU 和自適應(yīng)生存周期管理策略的跟蹤算法,在3 類目標(biāo)的跟蹤性能如準(zhǔn)確度MOTA、定位精度MOTP、丟失率ML、身份切換次數(shù)IDS上均得到了提升,其中以Cyclist 類別提升最為顯著.消融實驗結(jié)果表明,本文所提出算法能明顯改善多目標(biāo)跟蹤效果.
本文提出了一種使用BIoU 度量和自適應(yīng)生存周期管理策略的多目標(biāo)跟蹤算法.該算法使用3D目標(biāo)檢測器輸出的目標(biāo)信息,使用BIoU 度量計算檢測框與預(yù)測框的匹配矩陣,使用匈牙利匹配算法獲得匹配結(jié)果.BIoU 度量可以有效克服單獨使用IoU度量或歐氏距離度量可能導(dǎo)致的度量失效問題.在對跟蹤目標(biāo)進(jìn)行生存周期管理時,本文設(shè)計了一種自適應(yīng)生存周期管理策略.該策略根據(jù)跟蹤目標(biāo)的檢測置信度,自適應(yīng)計算目標(biāo)的最大生存周期,從而有效減少了由于固定生存周期導(dǎo)致的誤檢問題.在KITTI 多目標(biāo)跟蹤驗證集上的實驗表明,本文所提出的方法相較于基準(zhǔn)AB3DMOT 多目標(biāo)跟蹤算法,在跟蹤準(zhǔn)確度、長時間跟蹤命中率和丟失率指標(biāo)上均有顯著提升,尤其對于小目標(biāo)跟蹤具有較好的效果.