# Tracking - IOU > [name=謝朋諺(Adam Hsieh)] > [time=Tue, Jul 16, 2019 10:09 AM] ###### tags: `paper`,`IVA`,`track` --- ## Reference > [高速跟踪--High-Speed Tracking-by-Detection Without Using Image Information](https://blog.csdn.net/zhangjunhit/article/details/78911287) > [100kfps多目標追踪器-iou-tracker](https://zhuanlan.zhihu.com/p/35291325) > [[Github] IOU Tracking](https://github.com/bochinski/iou-tracker) --- # High-Speed Tracking-by-Detection Without Using Image Information ## 大部分 Tracking 的做法 1. 首先將 Detector 對每個 Frame 做檢測。 2. 使用 Tracker 去追蹤這些檢測框的軌跡。 ## Chanllege * 現今的 Tracker 都遇到一個問題,如果要跑在 Online 上都會受限於 Detector 的性能,可能產生誤報或漏檢。一個好的 Tracker 應該能夠通過填補缺失檢測的 **“gaps”** 並忽略誤報來處理這些缺陷。 * 更多地 Tracker 發生的問題則是當多個物體彼此交叉使軌跡變得模糊時,追蹤就會出現問題。 ## Method 我們先假設擁有高精度的檢測器跟高 Frame 速度的影片,基於這樣的假設代表對於我們要追蹤的物件在檢測時只有很少的 **"gaps"**,此外我們也假設在影片裡的連續 Frame 中的物件,在前後 Frame 中應會有較高的 IOU 值,公式可寫為: $IOU(a,b)=\dfrac{Area(a)\cap Area(b)}{Area(a)\cup Area(b)}$ * 如果滿足以上兩個條件,就可以在不使用影像的情況下完成追蹤 * 如果 IOU 值超過閾值 $\sigma _{IOU}$ 就將檢測中 IOU 值最高的加入下一個 Frame 繼續追蹤。  * 另外進一步提升性能的方式則是通過濾除長度短於 $t_{min}$ 的軌道和tracks 中此物件的檢測分數沒有一個高於 $\sigma_{h}$ 的也都將被剔除。 * 刪除短軌跡是因為那通常都是誤報,要求 tracks 至少有一個分數是高分檢測值是確保他是我們感興趣的對象。  * 上面演算法即是整個追蹤細節,其中 $D_f$ 表示 Detection 在 Frame $f$ 的檢測結果,$d_j$ 表示該 Frame 中的第 $j$ 次 Detection,$T_a$ 表示有效的 Track,$T_f$ 表示完成的 Track,$F$ 表示序列中 Frame 的數量。 * 請記得第五行這邊只抓出最佳匹配的 $d_j, t_i$,未被分配到 track 的 Detection 會被視為擴展 track 的候選者,這不一定能找出 Detections $D_f$ 和 tracks $T_a$ 的最佳關聯性,如果想要解決的最佳分配問題一般會使用[匈牙利演算法](https://blog.csdn.net/u014754127/article/details/78086014)來最大化該 Frame 的所有 IOU 總和。 :::success :fire: 整個過程,若用文字描述: 1. 設定 $\sigma_l$,若檢測分數低於此閾值則剔除。 2. 對於每個 Frame,在當前 Frame 的檢測框中找到和當前追蹤隊列的追蹤框中 IOU 最大的檢測框,然後判斷該 IOU 是否大於 $\sigma_{IOU}$,如果是,則將該檢測框加入,作為與之匹配的追蹤框在當前 Frame 中的位置。 3. 否則,判斷該追蹤框在之前 Frame 中的最大檢測得分是否大於閾值 $\sigma_h$,且在該 Frame 之前目標出現的 Frame 數是否大於閾值 $t_{min}$,如果是,說明是一個正常的追蹤物件,且在當前 Frame 已經**離開**了畫面,因此將該追蹤物件移出追蹤隊列。 4. 對於沒有匹配上的檢測框,認為是一個新出現的物體,作為待追蹤的物體將檢測框加入到追蹤隊列中。 ::: ## Experiments ### Dataset * 使用的資料集是 DETRAC dataset,裡面包含了超過十小時的針對車輛檢測和追蹤的影片素材,影片頻率是 25 FPS。 * 裡面包含了使用 CompACT、R-CNN、ACF 和 DPM 的 Baseline 檢測,但我們沒有使用 DPM 的檢測報告結果,因為它們通常不太準確。 * 此外,我們自己又使用 Evolving Boxes 檢測器(EB)和 VGG16 1-3-5 模型計算了額外的檢測。 * 本文使用 UA-DETRAC 評估協議進行評估。 * 並使用 PR-MOTA 來選擇最佳的參數設置,因為它是 UA-DETRAC 挑戰中的最主要指標。 ### Parameter  * 通過對每個探測器的訓練數據集執行網格搜索來確定 $\sigma_{IOU}$, $\sigma_h$ 和 $t_{min}$ 的最佳參數。搜索範圍如上表所示。注意所有檢測分數均標準化為 $\sigma ∈ [0.0 ; 1.0]$,但每個探測器的分佈仍然不同。因此,必須選擇不同的 $\sigma_h$ 範圍。 ### Evaluate * 評估三個參數的所有可能,因此每個檢測器皆跑了 64 次。 * 結果可視化為下圖 Figure 2.。  > Table 1. 是每個檢測器在 DETRAC-Train 中的最佳參數設定。  > 上表是 DETRAC-Test 數據集上每個 Tracker 的最佳結果,包括 Overall、Easy、Medium + Hard。 * 我們在 DETRAC-Test 上使用的 tracker 中,R-CNN 檢測參數使用 $\sigma_{IOU}=0.5$,$\sigma_h=0.7$ 和 $t_{min}=2$ ,進行 EB 檢測時參數使用 $\sigma_{IOU}=0.5$,$\sigma_h=0.8$ 和 $t_{min}=2$ 。 * 我們的 IOU Tracker 在 Accuracy(PR-MOTA)和 Precision(PR-MOTP)以及 Mostly Tracker(PR-MT)和 Mostly Loss(PR-ML)方面都大大優於其他方法。 * 此外,在 R-CNN 檢測的情況下,實現了超過 100K fps 的速度,比其他方法 (0.7-390 fps) 的速度都還快。 * 對於 EB 檢測器大大減少了 FPS 的原因是在 $\sigma_l$ 上處理了過多的誤檢結果,因此速度上慢上許多。但儘管如此使用 EB 檢測,與其他 Tracker 相比,運行時間仍然少上很多。 * 訓練與測試數據之間的性能差異很大可能與 Detector 的性能有關,由於 Detector 在訓練集上訓練,因此很明顯它們在這些影片上產生的結果比在測試序列上產生的結果更好,由於我們的 Tracker 容易因為出現檢測錯誤而導致追蹤性能也下降。另外,在訓練數據上訓練的參數可能也會對訓練數據 Overfitting。  > 上圖是不同 $\sigma_l$ 閾值的 MOTA 和 MOTP 分數。虛線表示相應方法的 PR-MOTA/PR-MOTP 分數。 使用 EB 檢測生成 MOTA-Test 和 MOTP-Test 值。 * 上圖是針對不同 $\sigma_l$ 的 MOTA 和 MOTP 評估結果。 * 圖表顯示,Tracker 可以使用大量不同 $\sigma_l$ 的設定,但在 MOTA 值僅略有變化。 * Performance 僅在 $\sigma_l$ 超過 $\sigma_h$ 的設定值之後才開始下降,而不是在低 $\sigma_l$ 值時,這是因為雖然已經過濾了 Track 但卻沒檢測到分數至少要高於 $\sigma_h$。 * 對於該度量,MOTP 顯示出與 $\sigma_l$ 一起上升的趨勢,通過更準確的檢測來獲得更高的分數。  > 上表是利用 SDP 和 FR-CNN 檢測的 IOU Tracker 在 MOT16 測試數據集上的結果根據 MOTA 分數的排序的結果,另外還有目前最好的 Tracker 結果跟平均結果的比較。 * 在某些情況下,IOU Tracker 這樣的簡單追蹤方法可以比基於數十年研究的複雜方法獲得更好的結果。但是並不是一直很有效。 * 在其他追蹤任務中,例如行人追蹤,尺寸和長寬比通常僅在幾幀中就能經歷很大的變化,例如,一個人在走路,因為可能會有比較大範圍的遮擋和較低的 FPS 從而導致降低了匹配檢測的成功率,因此可能會需要更複雜的方法。 * 為了證實上述事情我們使用有提供更快的 FR-CNN 和 SDP 檢測結果的 MOT16/MOT17 資料集來評估 IOU Tracker 在對行人追蹤的性能。 * 影片的 FPS 範圍為 14 至 30fps。 * IOU 的最佳參數由 grid search 對訓練數據集找出。由於只有 7 個影片序列,因此在 $\sigma_h$、$\sigma_l$、$\sigma_{IOU}$ 中可以每 0.1 完全掃過並找出最佳參數,而 $t_{min}∈\{1,2,3,4,5\}$ 則在這五個數值中尋找。 * 使用 FR-CNN 檢測的最佳參數是 $\sigma_h=0.9$、$\sigma_l=0.0$、$\sigma_{IOU}=0.4$、$t_{min}=4$,可達到 MOTA 49.96 的分數。 * 對於 SDP: $\sigma_h=0.5$、$\sigma_l=0.3$、$\sigma_{IOU}=0.3$、$t_{min}=5$ 為最佳,MOTA 分數可達到 62.77。 :::success :fire: 測試資料集的結果可以看出 FR-CNN 檢測的 IOU Tracker 已經實現略高於平均值的性能。通過更準確的 SDP 檢測,可以大大提高 MOTA 的分數,在編寫此論文的時間點時我們的 Benchmark 可以達到 64 名中的第 13 名位置 (現在在 MOT 17 的 Public Data 是 99 名中的第 65 名,全部是 103 名的第 68 名;MOT 16 的 Private Data 大概是 44 中的第 22 名,全部是 133 名中的第 23 名)。這表明即使在行人追蹤,移動攝影機和各種 FPS 的條件下,也可以實現競爭結果。 ::: * 此外,我們的實驗證實,在車輛追蹤和處理固定大小的物體、靜態相機、高 FPS 和高 Accuracy Detection 的情況下,可以在簡單的作法上實現良好的追蹤。
×
Sign in
Email
Password
Forgot password
or
By clicking below, you agree to our
terms of service
.
Sign in via Facebook
Sign in via Twitter
Sign in via GitHub
Sign in via Dropbox
Sign in with Wallet
Wallet (
)
Connect another wallet
New to HackMD?
Sign up