Siamese Cascaded Region Proposal Networks for Real-Time Visual Tracking
2019-03-20 16:45:23
Paper:https://arxiv.org/pdf/1812.06148.pdf
Project Page: http://www.dabi.temple.edu/~hbling/code/CRPN/crpn.htm
Code: https://bitbucket.org/hengfan/crpn/src/master/ (Test Code Only) or directly from Google drive: https://drive.google.com/file/d/1rhSYcQcQtHocXjiOTZ13vZedC61kbIVC/view
背景與動機:
本文提出一種級聯的 RPN 網絡結合到 Siamese RPN 網絡中,然后取得了更好的跟蹤效果。本文的動機如下:
1). 正負樣本的比例,不一致,導致 Siamese Network 的訓練不夠有效;大部分的負樣本都是簡單樣本,對最終的結果貢獻很小,所以,在出現相似物體的時候,經常會出現跟蹤混淆;
2). Low-level spatial features 並沒有充分的被探索;
3). One-stage Siamese RPN 采用 單個回歸器進行物體的定位,但是實際上並沒有很好的處理跟蹤中物體的尺寸變換的問題。利用預先定義好的 Coarse anchor Box 不能很好的進行精確的定位;
於是,根據上述動機,作者引入 多級的 RPN 網絡,來解決定位問題;同時選擇 hard negative samples 來改善網絡的魯棒性。此外,作者還引入了多層特征的融合,得到了更好的特征表達。
網絡結構:
1. Siamese-RPN 的簡介:
詳見其原始 paper:High performance visual tracking with siamese region proposal network
2. Cascaded RPN:
前人的方法大部分都忽略了 class imbalance 的問題,導致在出現相似性物體的時候,效果不佳。此外,他們也僅用 high-level semantic features 來進行跟蹤,而很少考慮 multi-level feature。為了解決上述這兩個問題,本文提出多階段的跟蹤方法,細節如下:
對於每一個階段的 RPN,其利用 FTB 模塊來融合來自第 l 個 convolutional layer 的特征 以及 high-level feature,融合后的特征可以用下面的公式進行表達:
其中 FTB 代表如下圖所示的多特征融合模塊。主要是對較低分辨率的圖像利用 Deconvlutional layer 進行升分辨率處理,得到的特征卷積后,與另外一支進行元素集相加(element-wise summarize)得到最終的結果,細節見圖 6。
對於,RPN-1 來說,
所以,stage l 中每一個 anchor 的分類得分 和 回歸的偏執,計算如下:
我們用 Al 表示在階段 l 的 anchor set。根據分類的得分,我們可以過濾出該集合中的樣本,當其 negative confidence 大於預先設定的閾值時。然后,剩下的那些樣本就構成了新的 anchor 集合 Al+1,並且用於訓練 RPNl+1。此外,為了提供更好的初始化,我們優化了 Al+1 中 anchor 的 center location 以及 size,所以,產生了更加准確的定位。作者也提供了一個案例,來表明 BBox 的准確性提升。
RPNl 的損失函數 $L_{RPN_l}$ 包含分類損失 $L_{cls}$ 以及 回歸損失 $L_{loc}$,其定義如下:
其中,$r_i^{l*}$ 表示 anchor i 和 gt 之間的真實距離。服從前人工作,作者也將 $r_i^{l*}$ 設置為 4d 的向量,如下所示:
其中,x, y, w, h 是 BBox 的中心點 及其 寬高。與常規的固定 anchor 不同,C-RPN 的 anchors 可以進行微調:
對於第一個階段的 anchor,$x_a^1, y_a^1, w_a^1, h_a^1$ 是預先設定的。
【注】此處關於損失函數講的不是特別清晰,關於回歸損失函數的定義,可以參考 Faster RCNN。
上述過程構成了所提出的級聯 RPN。其最終的損失函數 $L_{CRPN}$ 就是各個 RPN 損失函數的和:
實驗結果:
==