OC-SORT(Observation-Centric SORT)是一種以觀測為中心的多目標跟蹤算法,旨在解決傳統 SORT 算法在目標遮擋、外觀變化和復雜交互場景下關聯準確性不足的問題。以下是其詳細介紹:
核心創新點
- 以觀測為中心的在線平滑(OOS):該策略旨在緩解卡爾曼濾波器(KF)在長時間遮擋或非線性運動時因缺乏觀測數據導致的誤差累積問題。當目標被遮擋時,OOS 通過引入歷史觀測數據建立虛擬軌跡,在目標重新出現時反向修正 KF 的狀態參數,從而減少累積誤差。例如,當目標短暫消失后,OOS 利用其消失前的觀測值生成虛擬軌跡,并基于新觀測值對軌跡進行平滑校準,避免因預測偏差導致的跟蹤漂移。
- 以觀測為中心的恢復(ORU):ORU 專門處理因短時遮擋導致的軌跡中斷問題。當目標重新出現時,ORU 嘗試將目標的最后一次有效觀測值與新到達的檢測框進行關聯,而非依賴 KF 的預測結果。例如,若目標在第 t 幀丟失并在第 t+k 幀重新出現,ORU 會直接比較第 t 幀的觀測位置與第 t+k 幀的檢測位置,通過幾何相似性(如 IoU)判斷是否為同一目標。這種方法減少了對預測的依賴,尤其適用于遮擋頻繁或運動突變的場景。
- 以觀測為中心的動量(OCM):OCM 通過將軌跡的方向一致性融入數據關聯的代價矩陣,優化目標匹配的準確性。傳統方法僅依賴位置或速度的相似性,而 OCM 額外考慮軌跡運動方向的連續性。具體而言,OCM 計算軌跡與當前檢測框的速度方向差異,并將此差異作為關聯代價的一部分。例如,若某軌跡歷史運動方向與新檢測框的速度方向一致,則關聯代價更低,從而優先匹配。這一設計有效解決了線性運動假設下因方向突變(如轉彎)導致的誤匹配問題。
算法原理
- 運動一致性約束:利用軌跡歷史運動模式提高關聯魯棒性,通過計算軌跡與檢測之間的運動方向相似性,來度量運動相似性。
- 軌跡恢復機制:解決短期遮擋導致的軌跡中斷。維護一個候選軌跡池,對未匹配的檢測進行逆向關聯,使用滑動窗口匹配歷史觀測,當 ReID_score > τ_app 且 IoU > τ_geo 時,認為是同一目標。
狀態向量設計
采用 8 維狀態向量,其中(xc?,yc?)為中心坐標,w,h為寬高,x˙c?等為對應速度。當檢測丟失時,采用虛擬觀測更新。
性能評估
在 MOT17 數據集上,OC-SORT 的典型指標表現出色,如 MOTA 達到 63.2%,IDF1 達到 68.5%,ID Switches 為 534,相比 SORT 和 DeepSORT 有顯著提升。
應用建議
檢測器選擇推薦 YOLOv5 或 Faster R - CNN,同時需要根據場景調整 λ 系數、卡爾曼噪聲參數等進行參數調優,可集成 OpenCV 或 Supervisely 進行可視化展示。a