DeepSort論文解讀

大寫的ZDQ發表於2019-04-21

1 摘要

DeepSort是在Sort目標追蹤基礎上的改進。引入了在行人重識別資料集上離線訓練的深度學習模型,在實時目標追蹤過程中,提取目標的表觀特徵進行最近鄰匹配,可以改善有遮擋情況下的目標追蹤效果。同時,也減少了目標ID跳變的問題。

2 核心思想

演算法的核心思想還是用一個傳統的單假設追蹤方法,方法使用了遞迴的卡爾曼濾波和逐幀的資料關聯。

2.1 軌跡處理和狀態估計

該部分的思路和sort很接近。

  • 運動狀態估計:

使用8個引數
在這裡插入圖片描述
來進行運動狀態的描述,其中(u,v)是bounding box的中心座標,r是長寬比,h表示高度。其餘四個變數表示對應的在影像座標系中的速度資訊。使用一個基於常量速度模型和線性觀測模型的標準kalman濾波器進行目標運動狀態的預測,預測的結果為(u,v,r,h)。

  • 目標的建立與移除
    對每一個追蹤目標,記錄自其上一次檢測結果與追蹤結果匹配之後的幀數aka_k ,一旦一個目標的檢測結果與追蹤結果正確關聯之後,就將該引數設定為0。如果aka_k 超過了設定的最大閾值AmaxA_{max},則認為對該目標的追蹤過程已結束。對新目標出現的判斷則是,如果某次檢測結果中的某個目標始終無法與已經存在的追蹤器進行關聯,那麼則認為可能出現了新目標。如果連續的3幀中潛在的新的追蹤器對目標位置的預測結果都能夠與檢測結果正確關聯,那麼則確認是出現了新的運動目標;如果不能達到該要求,則認為是出現了“虛警”,需要刪除該運動目標。

2.2 指派問題

傳統的解決檢測結果與追蹤預測結果的關聯的方法是使用匈牙利方法。本文作者同時考慮了運動資訊的關聯和目標外觀資訊的關聯。

  • 運動資訊的關聯:使用了對已存在的運動目標的運動狀態的kalman預測結果與檢測結果之間的馬氏距離進行執行資訊的關聯。在這裡插入圖片描述
    d j表示第j個檢測框的位置,yiy_i表示第i個追蹤器對目標的預測位置,SiS_i表示檢測位置與平均追蹤位置之間的協方差矩陣。馬氏距離通過計算檢測位置和平均追蹤位置之間的標準差將狀態測量的不確定性進行了考慮。如果某次關聯的馬氏距離小於指定的閾值t(1)t^{(1)},則設定運動狀態的關聯成功。使用的函式為
    在這裡插入圖片描述
    作者設定t(1)=9.4877t^{(1)}=9.4877

  • 當運動的不確定性很低的時候,上述的馬氏距離匹配是一個合適的關聯度量方法,但是在影像空間中使用kalman濾波進行運動狀態估計只是一個比較粗糙的預測。特別是相機存在運動時會使得馬氏距離的關聯方法失效,造成出現ID switch的現象。因此作者引入了第二種關聯方法,對每一個的檢測塊djd_j 求一個特徵向量rir_i ,限制條件是ri=1||r_i||=1。作者對每一個追蹤目標構建一個gallary,儲存每一個追蹤目標成功關聯的最近100幀的特徵向量。那麼第二種度量方式就是計算第i個追蹤器的最近100個成功關聯的特徵集與當前幀第j個檢測結果的特徵向量間的最小余弦距離。計算公式為:在這裡插入圖片描述
    如果上面的距離小於指定的閾值,那麼這個關聯就是成功的。閾值是從單獨的訓練集裡得到的。

  • 使用兩種度量方式的線性加權作為最終的度量在這裡插入圖片描述
    只有ci,jc_{i,j}位於兩種度量閾值的交集內時,才認為實現了正確的關聯。距離度量對短期的預測和匹配效果很好,但對於長時間的遮擋的情況,使用外觀特徵的度量比較有效。對於存在相機運動的情況,可以設定λ=0\lambda = 0

2.3 級聯匹配

當一個目標長時間被遮擋之後,kalman濾波預測的不確定性就會大大增加,狀態空間內的可觀察性就會大大降低。假如此時兩個追蹤器競爭同一個檢測結果的匹配權,往往遮擋時間較長的那條軌跡因為長時間未更新位置資訊,追蹤預測位置的不確定性更大,即協方差會更大,馬氏距離計算時使用了協方差的倒數,因此馬氏距離會更小,因此使得檢測結果更可能和遮擋時間較長的那條軌跡相關聯,這種不理想的效果往往會破壞追蹤的持續性。這麼理解吧,假設本來協方差矩陣是一個正態分佈,那麼連續的預測不更新就會導致這個正態分佈的方差越來越大,那麼離均值歐氏距離遠的點可能和之前分佈中離得較近的點獲得同樣的馬氏距離值。

所以,作者使用了級聯匹配來對更加頻繁出現的目標賦予優先權,具體的演算法如下圖:
在這裡插入圖片描述
級聯匹配的核心思想就是由小到大對消失時間相同的軌跡進行匹配,這樣首先保證了對最近出現的目標賦予最大的優先權,也解決了上面所述的問題。在匹配的最後階段還對unconfirmed和age=1的未匹配軌跡和檢測目標進行基於IoU的匹配。這可以緩解因為表觀突變或者部分遮擋導致的較大變化。當然有好處就有壞處,這樣做也有可能導致一些新產生的軌跡被連線到了一些舊的軌跡上。但這種情況較少。

2.4 深度特徵描述器

網路結構:
在這裡插入圖片描述

在行人重識別資料集上離線訓練殘差網路模型。輸出128維的歸一化的特徵。在GTX1050m顯示卡上,輸入32個bounding box提取特徵的時間約為30ms。預訓練的模型和程式碼位於 https://github.com/nwojke/deep_sort

作者使用《Poi:Multiple object tracking with high performance detection and appearance feature》文章訓練的高效能faster rcnn模型進行檢測。檢測的置信度閾值設定為0.3。λ=0,Amax=30\lambda = 0,A_{max} = 30

和sort對比,好處是:

  • 減少了45%的ID switch;

  • 結合了深度外觀資訊,對遮擋目標的追蹤效果大大提升;

  • FP的升高很多,文章中提出這主要是由於靜態場景中detection的錯誤以及過長的允許丟失的track age所導致的(相對於SORT只用相鄰幀進行匹配來說,Deep SORT允許高達30幀的丟失,而Kalman的等速運動模型沒有改變,這主要造成了FP的升高)。

  • 20Hz,依舊實用;

  • 達到了state-of-art online tracking的效果。

以下是deepsort的工作過程
在這裡插入圖片描述

轉自:https://blog.csdn.net/cdknight_happy/article/details/79731981

相關文章