MDNet:深度目標跟蹤

論文全名:Learning Multi-Domain Convolutional Neural Networks for Visual Tracking(MDNet)

論文摘自CVPR 2016,由Hyeonseob NamBohyung Han撰寫。

摘要

訓練:(1)使用大量視頻訓練CNN;(2)網絡由共享層域特定層二分類)組成。通過迭代訓練網絡中的每個域,獲得共享層中的通用目標表示。

測試:(1)在一個視頻序列中,作者將預訓練CNN中的共享層新的二分類層(在線更新)組合來構建新網絡。(2)對於在線更新,對之前目標位置周圍進行隨機採樣獲得候選窗,通過評估來跟蹤。

1 前言

挑戰

具有完全不同特徵的視頻序列來學習一個統一的CNN算法表示。其中:(1)單個序列的目標類型不同;(2)算法受到序列中特定的變化:遮擋,變形,光照條件變化,運動模糊等;(3)相同類型的對象在一個序列中視爲目標,而在另一箇中可能就是背景。

作者提出:Multi-Domain Network(MDNet)

訓練:(1)每個序列作爲單獨的Domain(單獨訓練)

(2)在網絡的最後,有一個Domain-specific層(也用於共享學習)的分支進行二分類,

(3)共享從之前層中的所有序列信息用於學習,共享層在每次迭代中都會更新

特點:MDNet與分類任務的網絡(AlexNet、VGG)相比,網絡層數很少。

測試:(1)刪掉在訓練階段中使用的二分類層的所有分支,構建新的分支計算其目標分數。

(2)在線微調共享層中的新的分類層全連接層

(3)對目標長期和短期變化進行建模,並且在學習過程中結合了難分樣本挖掘(hard negative mining)思想

主要貢獻

•訓練:提出了一個基於CNN的多領域學習框架,它將域無關的與Domain-specific域的信息分開,以有效地捕獲共享表示。

•測試:預訓練的CNN在序列的上下文中在線更新,並自適應地學習Domain-specific域的信息。

•評估:在OTB2015VOT2014表現出色。

本文的其餘部分安排如下。我們首先回顧第2節中的相關工作,並在第3節討論我們用於視覺跟蹤的多領域學習方法。第4節描述了我們的在線學習和跟蹤算法,第5節展示了兩個跟蹤基準數據集中的實驗結果。

2.相關工作

2.1  跟蹤算法

(1)生成方法(生成目標外觀建模):稀疏表示,密度估計和增量子空間學習

(2)判別方法(區分目標和背景建模):MILTLD檢測跟蹤學習,在線提升,結構化輸出SVM 等。

(3)相關濾波算法:MOSSEKCFDSSTMUSTer

2.2  卷積神經網絡

(1)AlexNet:通過使用大規模數據集和高效的GPU實現訓練深度CNN;(2)R-CNN:將CNN應用於訓練數據稀缺的目標檢測任務。(3)CNN在跟蹤之前已經進行了離線訓練並且之後被修復。(4)DeepTrack提出了一種基於CNN池的在線學習方法,但缺乏訓練數據導致準確性不好。(5)最近的一些方法[39,20]在大規模數據集上預訓練CNN,但分類和跟蹤之間存在差異,該表示不是很有效。

作者提出的算法用大規模跟蹤數據來預訓練CNN,結果很好。

2.3  Multi-Domain學習

MDNet的預訓練CNN屬於Multi-domain學習:訓練數據源自多個域,且域信息被併入學習過程中。

3.MDNet訓練

本節描述了我們的CNN架構和多域學習方法,以獲得視覺跟蹤的與域無關的表示。

3.1  網絡架構

MDNet由共享層和K個Domain-specific層組成。 黃色表示正樣本,藍色表示負樣本

網絡架構如上圖所示:

輸入:107×107×3

架構

        三個卷積層(conv1-3)                  兩個全連接層(fc4-5)               一個(K分支)全連接層(fc61-fc6K)
            與VGG-M架構                  (data:ImageNet)相同              與ReLU相同,防止過擬合                   softmax交叉熵損失的二分類層
                                        隱藏層(共享層)              Domain-specific層(區分目標與背景)

特點

(1)視覺跟蹤僅區分目標和背景兩個類,模型複雜性小。

(2)選擇的網絡層數較少,原因:隨着網絡的深入,空間信息會逐漸消失

(3)視覺跟蹤中的目標通常很小,從而減小了網絡的深度

(4)訓練和測試是在線進行的,當使用更大的網絡時,算法不太準確並且變得更慢。

3.2  學習算法

目標:在任意域中訓練Multi-domain CNN來消除對目標和背景變化

域的共同特徵:對照明變化、運動模糊、尺度變化的魯棒性等

實施方式(將與域無關的信息與Domain-specific層分離出):CNN由隨機梯度下降(SGD)方法訓練。(1)對於Domain-specific層,在第k次迭代中,由第(kmod K)序列的一小批量訓練樣本來更新全連接層網絡,直到網絡收斂或達到預定義的迭代數;(2)對於共享層,對與域無關的信息進行建模,獲得通用特徵表示。

4.MDNet測試

測試階段,將訓練階段的Domain-specific層(fc61-fc6K)替換爲單個層(fc6),在線調整共享層和Domain-specific層。

【1】模型更新Long-term update(長時間收集的目標的正樣本)+Short-term update(檢測到潛在目標跟蹤失敗【目標被誤認爲背景】時使用短期的正樣本)。對於負樣本:用Short-term時的負樣本。注意:通過目標外觀變化速度執行更新。

【2】實施過程:在之前目標周圍採N個候選:,用網絡來評估,得到正分數和負分數。找到x*滿足:(1)。

【3】提取負樣本:在測試時,檢測出目標的方法爲:難分負樣本挖掘(hard negative mining)思想

在序列Bolt2(第一行)和Doll(第二行)中採用難分負樣本挖掘算法來識別訓練示例。
紅色框代表正樣本,藍色框代表負樣本

實施方式:在小批量(包括正樣本與難分負樣本)選取中,採用難分負樣本挖掘思想,其中,M^{-}_{h}樣本是由測試中的負樣本M^{-} (=1024)\left ( \gg M^{-}_{h} \right )產生,並選擇M^{-}_{h}中分數最大的作爲難分負樣本

特點:能有效地識別關鍵的負樣本,而無需明確地運行檢測器來提取誤報。

【4】邊界框迴歸問題:基於CNN的特徵的高抽象+數據增強策略(在目標周圍採取多個正樣本),導致網絡有時無法找到目標

辦法:用檢測算法的邊界框迴歸方法,提高目標定位精度。

實施方式(1)通過第一幀目標位置附近樣本的conv3特徵,訓練一個簡單的線性迴歸模型使定位精確;(2)在隨後的幀中,如果通過迴歸模型計算出的目標可靠(比如,其中x*滿足式(1)),則調整目標位置。

特點:(1)該回歸器僅在第一幀中訓練;(2)該回歸器與RCNN具有相同的參數(1000個訓練樣本)與方法。

【5】實施細節

我們的跟蹤算法的整個過程在算法1中給出,設分別爲短期和長期的幀大小。

初始化:(表示第j層的權重)爲MDNet預訓練的結果,爲隨機初始化的結果。

跟蹤測試階段固定不變,在線更新

具體細節:

(1)生成目標候選:從前一幀中選擇服從高斯分佈個樣本:,對應的協方差是對角陣,其中r是幀中目標的寬高的平均。每個候選框都將以倍的尺度放大。

(2)訓練數據:

訓練:在每個幀有50個正樣本(IOU\geq0.7)和200個負樣本(IOU\leq0.5);

測試:對第一幀有個正樣本和個負樣本,對後續每一幀個正樣本(IOU\geq0.7)和個負樣本(IOU\leq0.3)。

(3)網絡:

訓練:對於K個序列,網絡需要進行100K次迭代訓練,其中層的學習率爲0.0001,層的學習率爲0.001。

測試:【1】初始幀:全連接層進行30次迭代訓練,W_{4,5}的學習率爲0.0001,層的學習率爲0.001。【2】後續幀:全連接層10次迭代,W_{4,5}的學習率爲0.0003,層的學習率爲0.003。動量(0.9)和權重衰減(0.0005)。

5.實驗

評估數據集:OTB2015和VOT2014

平臺:MatConvNet工具箱,八核2.20GHz Intel Xeon E5-2660,一個NVIDIA Tesla K20m GPU

速度:約爲1fps

5.1  OTB2015

評估指標:中心位置誤差和邊界框重疊率。

評估標準:OPE

算法比較:MDNet(訓練集:VOT2013、2014、2015的58個序列),MUSTER,CNN-SVM,MEEM,TGPR,DSST,KCF,SCM和Struck

5.2  VOT2014

測試數據:VOT2014的25個序列

評估指標:精度(平均IOU)與魯棒性(跟蹤失敗次數)

算法比較:MDNet(訓練集:OTB100的89個序列),MUSTER,SAMF,MEEM,DSST,KCF,DGT和PLT_14。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章