联合检测和跟踪的MOT算法解析(含MOT17 No.1等多个榜前算法)
?PaperWeekly 原創 ·?作者|黃飄
學校|華中科技大學碩士生
研究方向|多目標跟蹤
最近一年里,隨著 Tracktor++ 這類集成檢測和多目標跟蹤算法框架的出現,涌現了很多相關的多目標跟蹤算法變種,基本都位列 MOT Challenge 榜單前列,包括剛剛開源的榜首 CenterTrack。這里我就對集成檢測和跟蹤的框架進行分析,相關 MOT 和數據關聯的基礎知識可以去我的專欄查看,后期我也會針對基于深度學習的數據關聯、ReID2MOT 和 SOT2MOT 等進行專題介紹。
D&T
論文標題:Detect to Track and Track to Detect
論文作者:Christoph Feichtenhofer, Axel Pinz, Andrew Zisserman
備注信息:ICCV 2017
論文鏈接:https://arxiv.org/abs/1710.03958
代碼鏈接:https://github.com/feichtenhofer/Detect-Track
當前的多目標跟蹤算法主流是基于檢測的框架,即 Detection based Tracking (DBT),所以檢測的質量對于跟蹤的性能影響是很大的。
那么在 MOT Challenge 上也分別設置了兩種賽道,一種是采用官方提供的幾種公共檢測器的結果,即 public 賽道,一種是允許參賽者使用自己的檢測器,即 private 賽道。
這篇 D&T 就屬于 private 類跟蹤框架,并初步將檢測與跟蹤框架進行了結合:
從圖中可以清晰看到,作者通過改進版的 R-FCN 檢測網絡實現了主線的檢測任務,然后基于兩階段目標檢測的特點,將第一階段所獲得的多尺度特征圖進行交互。
這種方式借鑒了單目標跟蹤中經典的 Siamese 網絡框架,不同之處在于原本的 Siamese 網絡做的是 1:1 的相關濾波,而 D&T 框架做的是 n:n 的相關濾波。
其中兩個分支中所包含的目標數量也是不定的,那么為什么作者要用 R-FCN 網絡呢,可以發現,R-FCN 的網絡結構起到了很好的作用,正是因為其獨特的 position-sensitive ROI Pooling 模塊:
不同于傳統兩階段目標檢測框架利用全連接網絡分支預測分類和回歸的情況,R-FCN 通過全卷積的方式將分類得分轉化到特征圖通道上,使得特征圖保持了一定的平移不變性(這個可以看我之前的博客),有利于跟蹤任務的相關濾波。
那么這里 D&T 在傳統目標檢測的分類和回歸任務上,增加了一個跟蹤分支,作者巧妙地將跟蹤任務轉化成了預測相鄰兩幀各目標位置相對偏移量的回歸任務。
當然,跟蹤分支只考慮與 gt 的 IOU>0.5 的預測框,并且目標要同時出現在這兩幀。多任務損失函數如下:
最后我們談一下最重要的一點,如何做 ROI Tracking,即在不丟失相對位置關系的前提下,執行多個區域的相關濾波:
提到相關濾波,我們可能容易想到單目標跟蹤中的 CF 類傳統方法,比如 KCF(詳細原理可以看我的解析)。KCF 算法中就是通過循環移位的方式,利用相關濾波估計目標在圖像中的位置變化。
但是這種方式并不適合多目標的相關濾波,我們基于相鄰兩幀變化幅度不大的假設,更希望的是每塊局部區域單獨做類似于循環移位之類的操作。
對此,作者借鑒了 FlowNet 的 Corr 操作,因為光流任務也是估計相鄰幀像素的偏移量,所以用在這里很合適。
Corr 的公式是:
可以看到,這里的濾波不是對卷積核的,而是將兩幅特征圖的多個 kxk 的區域分別做相關濾波,從而保持了相對位置。
最后對于多目標跟蹤的部分,作者對于兩個目標的連接代價設置如下:
其中 p 表示的相鄰兩幀的檢測置信度,最后一項指的是相鄰兩幀的目標框與預測到的位置的 IOU>0.5 時為 1,否則為 0。至此我們就可以得到跟蹤預測位置和代價矩陣了,后面就是常規的多目標跟蹤算法操作了。
MOTDT
論文標題:Real-Time Multiple People Tracking with Deeply Learned Candidate Selection and Person Re-Identification
論文作者:Long Chen, Haizhou Ai, Zijie Zhuang, Chong Shang
備注信息:ICME 2018
論文鏈接:https://arxiv.org/abs/1809.04427
代碼鏈接:https://github.com/longcw/MOTDT
這篇論文表面看上基于 R-FCN 檢測框架的 private 多目標跟蹤算法,不過與上一篇不同的是,作者只利用 R-FCN 對觀測框進行進一步的前景/背景分類,即用于目標框的分類過濾,而且 MOTDT 將檢測和跟蹤框架分離了。
作者的框架也是由現在多目標跟蹤算法的通用模塊組成的,即檢測、外觀模型和運動模型。這里我們就只關注他的算法流程:
從算法流程可以清晰地看到,MOTDT 的流程是:
利用 Kalman Filter 完成目標的運動估計;
將觀測框和跟蹤框合并,并做 NMS 操作,其中每個目標框的置信度得到了修正:
這里面 L 表示的長度,通過上面兩個公式,作者將檢測置信度和跟蹤軌跡置信度結合在一起了。
提取 ReID 特征,先基于 ReID 相似度進行匹配,再對剩余的利用 IOU 進行關聯。
MOTDT 這個算法框架很經典,對于后續的一些多目標跟蹤算法也起到了啟發作用。
Tracktor++
論文標題:Tracking Without Bells and Whistles
論文作者:Philipp Bergmann,Tim Meinhardt,Laura Leal-Taixe
備注信息:ICCV2019,MOT15~17: 46.6, 56.2. 56.3 MOTA (public)
論文鏈接:https://arxiv.org/abs/1903.05625
代碼鏈接:https://github.com/phil-bergmann/tracking_wo_bnw
Tracktor++ 算法是去年出現的一類全新的聯合檢測和跟蹤的框架,這類框架與 MOTDT 框架最大的不同在于,檢測部分不僅僅用于前景和背景的進一步分類,還利用回歸對目標進行了進一步修正。
因此關于這類框架屬于 public 還是 private 得爭論也存在,這里我們就不做過多的討論了。
只要熟悉兩階段目標檢測算法的應該都能理解這個算法,其核心在于利用跟蹤框和觀測框代替原有的 RPN 模塊,從而得到真正的觀測框,最后利用數據關聯實現跟蹤框和觀測框的匹配。流程圖如下:
有了檢測模塊的加持,自然對于檢測質量進行了增強,所以效果也得到了大幅提升:
可以看到,DPM、FRCNN 和 SDP 三種檢測器輸入下的性能差距不大,然而 DPM 檢測器的性能是很差的,所以 Tracktor++ 這類算法對于平衡檢測輸入的效果提升很大。
FFT
論文標題:Multiple Object Tracking by Flowing and Fusing
論文作者:Jimuyang Zhang, Sanping Zhou, Xin Chang, Fangbin Wan, Jinjun Wang, Yang Wu, Dong Huang
備注信息:MOT15~17: 46.3, 56.5. 56.5 MOTA (public)
論文鏈接:https://arxiv.org/abs/2001.11180
這篇文章也是基于 Tracktor++ 的模式,做了很直接的一步操作,即直接增加一個光流預測分支,將 Tracktor++ 中的跟蹤框+觀測框變成了光流預測框+觀測框
不過好處在于光流網絡和 Faster RCNN 可以聯合訓練,在訓練的時候 RPN 保留,不過從論文來看光流部分好像是固定權重的,其效果相對來說的確更好了:
JDE
論文標題:Towards Real-Time Multi-Object Tracking
論文作者:Zhongdao Wang, Liang Zheng, Yixuan Liu, Shengjin Wang
備注信息:MOT16 74.8 MOTA (private), 22FPS!!
論文鏈接:https://arxiv.org/abs/1909.12605
代碼鏈接:https://github.com/Zhongdao/Towards-Realtime-MOT
JDE 這篇跟這次的主題不是很相符,但是考慮到這也是近期比較熱門的實時多目標跟蹤算法,我們也一起講。它的框架出發點是為了增加特征的復用性,基于檢測算法(作者采用的是 YOLOv3),在原本的分類和回歸分支上增加了一個表觀特征提取的分支。
文中作者重點介紹了多任務網絡框架的訓練方式,首先分析了三種 Loss:
對于 triplet loss,這個在表觀模型的 metric learning 任務中很常見,作者采用了 batch hard 模式,并提出了 triplet loss 的上界,推導很簡單,關鍵在于多的那個 1 。為了更好地跟交叉熵損失函數進行比較,作者將上界進行了平滑。
那么區別就在于 g ,g 表示的正負樣本的權重。在交叉熵損失函數中,所有的負樣本都會參與計算,然而在 triplet loss 中,負樣本是采樣出來的,所以:
作者通過實驗也論證了上面的結論,所以在 metric learning 中作者采用了交叉熵損失函數。最后關于各個任務的損失函數的權重,作者提出了一種自適應平衡的加權方式:
其中的 s 是一種度量不同任務下個體損失的不確定性因子,詳細的原理可參見 CVPR 2018 的?Multi-task learning using uncertainty to weigh losses for scene geometry and semantics 關于方差不確定性對于多任務權重的影響分析。
效果和速度都很誘人~
MIFT
論文標題:Refinements in Motion and Appearance for Online Multi-Object Tracking
論文作者:Piao Huang, Shoudong Han, Jun Zhao, Donghaisheng Liu, HongweiWang, En Yu, and Alex ChiChung Kot
備注信息:MOT15~17: 60.1, 60.4, 48.1 MOTA (public)
論文鏈接:https://arxiv.org/abs/2003.07177
代碼鏈接:https://github.com/nightmaredimple/libmot
這篇也是我們團隊基于 Tracktor++ 框架做的一個框架,主要關注的是運動模型、表觀模型和數據關聯部分的改進,由于某些原因,我這里不能細講。代碼會慢慢開源,暫時沒有完全開源。
其中對于運動模型部分,我們將 Kalman 和 ECC 模型集成在一起,而不是將 Kalman 和 ECC 模型獨立執行,實驗證明融合的版本比分開的提升了 1.4 MOTA。
對于表觀模型,我們考慮到特征對齊的因素,做了一點小改進,結合可視度預測設計了多任務的表觀模型:
并在觀測框和跟蹤軌跡特征比對的時候,考慮了跟蹤軌跡歷史信息,來進行自適應加權:
通過上面的分析,我們可以知道的是,數據關聯部分的特征相似度計算,不僅要進行 n:m 的 Kalman 更新過程(為了求馬氏距離),還要進行 m:(nxk) 的表觀特征比對,這個過程很耗時。所以我們利用 3-D integral image 快速將空間區域分配,使得特征相似度計算過程的復雜度降至 O(m+n)。
方法很巧妙,就是將每個觀測框利用 one-hot 編碼映射到特征圖,這種方式比基于 iou 的要快很多:
我后期又做了一些實驗,效果比論文中的更好一些,MOT15~17: 48.1、60.4、60.1 MOTA (public)。
CenterTrack
論文標題:Tracking Objects as Points
論文作者:Xingyi Zhou (CenterNet 的作者), Vladlen Koltun, and Philipp Kr?henbühl
備注信息:同時實現了 2D/3D 多目標跟蹤,包含人和車輛,MOT17:61.4(public)、67.3(private) MOTA, 22FPS!!!
KITTI:89.4MOTA
論文鏈接:http://arxiv.org/abs/2004.01177
代碼鏈接:https://github.com/xingyizhou/CenterTrack
CenterTrack 是 CenterNet 作者基于 Tracktor++ 這類跟蹤機制,通過將 Faster RCNN 換成 CenterNet 實現的一種多目標跟蹤框架,因此跟蹤框也就變成了跟蹤中心點。
通過上圖我們可以大致分析出算法框架,除了對相鄰兩幀利用 CenterNet 進行檢測之外,還利用了上文中提到的 D&T 框架的策略,預測同時存在于兩幀中目標的相對位移,由此進行跟蹤預測。
對于提供的觀測框,作者通過將這些觀測框的中心點映射到一張單通道的 heatmap 上,然后利用高斯模糊的方式將點的附近區域也考慮進去。
因此 CenterTrack 相對于 CenterNet 的不同之處在于,輸入維度增加了(兩幅3維圖像和一張觀測位置 heatmap),輸出變成了兩張圖像的目標中心位置、大小和相對偏移。
對于測試環節的數據關聯部分,作者直接通過中心點的距離來判斷是否匹配,是一種貪婪的方式,并非匈牙利算法那種全局的數據關聯優化。在訓練過程中,作者并非只用相鄰幀進行訓練,允許跨 3 幀。
CenterTrack 在 MOT、KITTI 和 nuScenes 等數據集上的 2D/3D 多行人/車輛跟蹤任務上均取得了 SOTA 的成績。
參考文獻
[1] ?Feichtenhofer C, Pinz A, Zisserman A. Detect to track and track to detect[C]. in: Proceedings of the IEEE International Conference on Computer Vision. 2017. 3038-3046.?
[2] ?Chen L, Ai H, Zhuang Z, et al. Real-time multiple people tracking with deeply learned candidate selection and person re-identification[C]. in: 2018 IEEE International Conference on Multimedia and Expo (ICME). IEEE, 2018. 1-6.?
[3] ?Bergmann P, Meinhardt T, Leal-Taixe L. Tracking without bells and whistles[C]. in: Proceedings of the IEEE International Conference on Computer Vision. 2019. 941-951.?
[4] ?Multiple Object Tracking by Flowing and Fusing?
[5] ?Towards Real-Time Multi-Object Tracking?
[6] ?Refinements in Motion and Appearance for Online Multi-Object Tracking?
[7] Tracking Objects as Points
點擊以下標題查看更多往期內容:?
CVPR 2020 | 曠視研究院提出雙邊分支網絡BBN
淺談多目標跟蹤中的相機運動
CVPR 2020 三篇有趣的論文解讀
NAS+目標檢測:AI設計的目標檢測模型
雙目深度估計中的自監督學習概覽
ICLR 2020 | GAN是否真的判斷出了數據的真假?
#投 稿?通 道#
?讓你的論文被更多人看到?
如何才能讓更多的優質內容以更短路徑到達讀者群體,縮短讀者尋找優質內容的成本呢?答案就是:你不認識的人。
總有一些你不認識的人,知道你想知道的東西。PaperWeekly 或許可以成為一座橋梁,促使不同背景、不同方向的學者和學術靈感相互碰撞,迸發出更多的可能性。?
PaperWeekly 鼓勵高校實驗室或個人,在我們的平臺上分享各類優質內容,可以是最新論文解讀,也可以是學習心得或技術干貨。我們的目的只有一個,讓知識真正流動起來。
?????來稿標準:
? 稿件確系個人原創作品,來稿需注明作者個人信息(姓名+學校/工作單位+學歷/職位+研究方向)?
? 如果文章并非首發,請在投稿時提醒并附上所有已發布鏈接?
? PaperWeekly 默認每篇文章都是首發,均會添加“原創”標志
?????投稿郵箱:
? 投稿郵箱:hr@paperweekly.site?
? 所有文章配圖,請單獨在附件中發送?
? 請留下即時聯系方式(微信或手機),以便我們在編輯發布時和作者溝通
????
現在,在「知乎」也能找到我們了
進入知乎首頁搜索「PaperWeekly」
點擊「關注」訂閱我們的專欄吧
關于PaperWeekly
PaperWeekly 是一個推薦、解讀、討論、報道人工智能前沿論文成果的學術平臺。如果你研究或從事 AI 領域,歡迎在公眾號后臺點擊「交流群」,小助手將把你帶入 PaperWeekly 的交流群里。
與50位技術專家面對面20年技術見證,附贈技術全景圖總結
以上是生活随笔為你收集整理的联合检测和跟踪的MOT算法解析(含MOT17 No.1等多个榜前算法)的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 苹果罕见首个 Macintosh 原型拍
- 下一篇: 为 M4 新品让路,苹果 Mac 定制配