車滿強,李 銘,李圣京
(廣州海格通信集團股份有限公司無人系統技術創新中心, 廣東 廣州 510700)
多目標跟蹤(Multiple Object Tracking, MOT)的主要任務是在給定的一段視頻序列中,對多個感興趣目標進行識別定位,同時關聯不同幀的相同目標,生成目標的運動軌跡,是機器視覺領域的一個重要研究課題。現有多目標跟蹤任務可分為離線跟蹤和在線跟蹤兩種模式[1],離線跟蹤需要根據視頻序列全部檢測結果推理目標的運動軌跡,而在線跟蹤根據當前的檢測結果與歷史軌跡按時間順序逐步生成新的軌跡,被廣泛應用到無人駕駛、監控系統[2-3]、軍事[4]等多個領域。
傳統的多目標跟蹤算法通常提取目標的概率密度和邊緣特征,從概率梯度上升的方向搜索目標,這類方法算力需求低,易部署,但由于特征表征能力的局限性,無法應對復雜場景下的目標跟蹤。近年來深度學習飛速發展,所提取的卷積特征包含目標更深層次的語義特征,被廣泛應用到目標跟蹤領域,其中,基于檢測的跟蹤[5](Tracking-By-Detection)是目前研究較多,使用最為廣泛的跟蹤算法之一。
行人/車輛重識別(Person re-identification, ReID)可依據行人/車輛的表觀特征,計算目標的相似程度,實現跨攝像頭無重疊視域下的目標行人/車輛的檢索,常被視為圖像檢索領域的子問題之一,近年來常與檢測/跟蹤技術相結合,提升多目標跟蹤的準確度,并廣泛應用于安防任務中。
現有基于檢測的跟蹤主要通過兩種方式實現,第一種是將檢測和跟蹤分為兩個模塊訓練,在實際應用時首先通過檢測模型獲取目標位置框,然后再通過跟蹤模塊實現目標的關聯,如Bewley 等人提出SORT 算法,通過通用的檢測算法識別待跟蹤目標,然后利用卡爾曼濾波(Kalman Filter)和匈牙利算法(Hungarian Algorithm)對相鄰幀檢測到的目標進行關聯,實現目標的連續跟蹤,該算法框架簡單,運行速度快,但對于遮擋的魯邦性較差;Wojke 等人提出DeepSORT 算法,將行人重識別技術引入到多目標跟蹤,在檢測的基礎上,進行目標關聯時通過重識別模型提升目標的辨別力,同時提出級聯匹配策略提升目標在遮擋等干擾下的魯邦性;ZHANG 等人提出ByteTrack[5]算法,將目標檢測的結果劃分為高置信度和低置信度兩類,再進行多級匹配關聯,由于目標檢測的高準確度和目標關聯的合理性,該算法在各類跟蹤數據集上取得較高的準確度。第二種是將檢測模塊和跟蹤模型集成在同一網絡中進行訓練,同時進行目標檢測和跟蹤,實現同一網絡的多任務學習,如Wang 等人提出JDE 算法,在同一網絡中融合一階段檢測與行人重識別,同時輸出檢測和ReID 信息, 實現快速模型推理;Zhang 等人提出FairMOT 算法,采用一階段檢測算法CenterNet 作為檢測分支,同時在檢測分支基礎上增加一個平行分支輸出ReID 特征區分不同目標,將檢測、行人重識別任務進行融合實現高效的多目標跟蹤。近年來,Transformer 在圖像識別以及視頻分析領域發展迅速,得到廣泛的應用,也逐漸使用到多目標跟蹤中。Cai J 等人設計了一種基于Transformer 多目標跟蹤框架,根據跟蹤需求自適應地提取和聚合內存中儲存的跟蹤對象的有用信息,從而實現目標與軌跡之間的關聯。Zhou X 等人首次提出了一種基于Transformer 的全局多目標跟蹤網絡結構,利用Transformer 結構對輸入視頻序列中的所有目標特征進行編碼, 通過軌跡查詢實現相同目標之間的關聯。
綜上所述,“Tracking-By-Detection”的兩階段多目標跟蹤方法具有高效準確的特點,而車輛/行人重識別技術提取的有效特征,可以為目標跟蹤任務中目標的相似度計算、匹配提供有力的支撐。因此本文提出一種基于YOLOv5 和重識別的多目標多級匹配跟蹤方法,結合目標檢測、卡爾曼濾波、匈牙利算法、車輛/行人重識別實現多目標的多級匹配跟蹤,解決目標在遮擋等復雜環境下的非連續跟蹤。
為解決之前多目標方法丟棄低分檢測框的不合理性,以及在目標發生短暫遮擋后的連續跟蹤,本文提出多級匹配機制,改善多目標跟蹤的性能。選用文獻[5] 中的ByteTrack 為基礎算法,首先使用Glenn Jocher 發布的YOLOv5s 模型為基礎的目標檢測算法替換ByteTrack 中的檢測模塊,然后在ByteTrack 中的兩級匹配,即高、低置信度檢測結果匹配的基礎上,對未匹配到的目標通過行人重識別的方法進行第三次關聯,進而提升目標短暫消失下的連續跟蹤,其中行人重識別網絡選用文獻中的快速特征提取網絡OSNet。具體實現過程如下:
將目標檢測模塊的高分框和低分框分開處理,利用低分檢測框和跟蹤軌跡之間的相似性,從低分框中挖掘出真正的物體,過濾掉背景。整個流程如表1 所示,核心步驟包括:

表1 多級匹配流程表
(1) 將每個檢測框根據得分分成兩類,即高分框和低分框,總共進行三次匹配。
(2) 第一次使用高分框和之前的跟蹤軌跡進行匹配。
(3) 第二次使用低分框和第一次沒有匹配上高分框的跟蹤軌跡(例如在當前幀受到嚴重遮擋導致得分下降的物體)進行匹配。
(4) 第三使用行人重識別的方法將未匹配到跟蹤器和目標檢測的結果進行行人重識別匹配(重識別閾值設置相對較高)。
(5) 對于沒有匹配上跟蹤軌跡,得分又足夠高的檢測框,對其新建一個跟蹤軌跡。對于沒有匹配上檢測框的跟蹤軌跡,保留3*FPS 幀,即保存3 秒,在其再次出現時再進行匹配,見表1。
上述方法有效的原因主要是直接將目標檢測的低分框和高分框放在一起與軌跡關聯顯然是不可取的,會帶來很多的背景(false positive),遮擋往往伴隨著檢測得分由高到低的緩慢降低:被遮擋物體在被遮擋之前是可視物體,檢測分數較高,建立軌跡;當物體被遮擋時,通過檢測框與軌跡的位置重合度就能把遮擋的物體從低分框中挖掘出來,保持軌跡的連貫性。而在目標完全遮擋后再次出現時,如果目標移動量較大,會導致匹配失敗,此時通過行人重識別的方法可對目標進行再次關聯。
本文選用MOT17 驗證集作為驗證數據集驗證算法的性能,實驗環境為ubuntu16.04 操作系統,配置為Intel Core i7-7800XCPU, GTX3090 GPU, 內存為16 GB 的臺式電腦。
為更加客觀評價算法改進的性能,本文采用多目標跟蹤領域通用的評價指標進行評估,即多目標跟蹤準確度(Multi-object Tracking Precision,MOTP)、多目標跟蹤器ID 維持能力(Identification F1 Score,IDF1)、行人ID 切換次數(ID Switch,IDs)。
其中:

其中t 表示幀號GT 表示目標真值的數量,FN 為漏檢率,FP 為誤檢率,IDS 為目標身份變更次數。
IDF1 為:

其中IDTP 和IDFP 分別為真正ID 數和假正ID數,IDFN為假負ID 數。
對于多目標跟蹤,本文選擇MOT17 數據集進行實驗,與基礎的多目標跟蹤算法ByteTrack 結果進行對比。對比結果如表2 所示,從表可以看出IDF 和IDs有明顯的改善,表明本文引入的多級匹配機制有效的降低了目標ID 的轉換,明顯改善了在目標發生遮擋時的連續跟蹤,見表2。

表2 本文改進方法與原方法對比表
為提升基于檢測的多目標跟蹤方法在檢測精度不足、目標出現短暫遮擋時的跟蹤連續性,本文提出一種引入多級匹配機制的多目標連續跟蹤方法。首先將檢測框根據置信度分為高分框和低分框兩類,第一次匹配使用高分框和之前的跟蹤軌跡進行匹配,第二次匹配使用低分框和第一次沒有匹配上高分框的跟蹤軌跡進行匹配,第三匹配使用行人重識別的方法將未匹配到跟蹤器和目標檢測的結果進行行人重識別匹配,最終實現短暫遮擋下的連續跟蹤。在MOT17 數據集上對本文方法進行驗證,實驗結果表明,所提方法與原ByteTrack 方法相比,MOTA、IDF1、IDs 三個指標均有提升,驗證了所提方法可有效降低多目標跟蹤ID 切換,提升跟蹤的連續性。