天天看點

Recurrent Filter Learning for Visual Tracking(RFL)論文筆記

這是一篇ICCV2017的文章,文章條理清晰,通俗易懂,做以總結如下~  本人小菜鳥一個,水準有限,如有錯誤懇請指正。

第一次寫部落格,格式可能不夠完美,望海涵~

【亮點】

加了LSTM,既保留了目标空間位置資訊,也保留了時序資訊。offline訓練結束後,線上過程不再需要微調,降低了時間複雜度,速度快。

Exemplar image是一直在變化的,LSTM的狀态也是實時更新的,相對于SiamFC(Fully-Convolutional Siamese Networks for Object Tracking,全程都是以第一幀作為模闆)來講有更好的适應性。

【用到的一些小Tricks】

(1)conv LSTM的初始狀态是使用第一幀圖像來進行的,而不是直接置零(實驗證明了該tips将成功率提高了8-10%)

(2)SCNN和ECNN的參數不共享(實驗證明了共享參數後效果很差)

(3)normal LSTM中filter的尺寸是1*1,本文将其改成了3*3*1024(除了output layer仍是1*1*256),Figure 5證明了效果确實提升了。

目标尺度的确定:采用縮放搜尋圖像金字塔,SCNN劃過它産生三個不同尺度的response map,取效果最好的那個尺度作為最終尺度,而且response map還加了餘弦窗處理。

(4)目标位置的确定:取了前k個高分的response map做平均,作為最終的目标位置。

【Mark】分類和跟蹤任務的差別:

分類任務具有類内不變性(隻需要區分狗這個類别即可,不需要區分白狗還是黑狗)而跟蹤任務的目标是識别出每個特定的目标,是針對個體而言的,是以需要區分白狗和黑狗。

網絡結構

RFL的結構

Recurrent Filter Learning for Visual Tracking(RFL)論文筆記

流程:

(1)第t步時,E-CNN從exemplar圖像中捕獲目标,生成exemplar feature map e_t,和上一步的狀态C_t-1和h_t-1共同輸入conv LSTM,更新目前狀态C_t和h_t,

(2)目标濾波器f_t是由h_t經過一個output layer産生的,

(3)S- CNN從搜尋圖像(下一幀的圖像)中提取特征S-t+1,它與f_t卷積産生響應圖,用來定位目标。

【注意】

(1)SCNN的網絡結構相同,但是參數不同,而且輸入圖像尺寸不同(ECNN的輸入尺寸是127*127,為了擷取更加精确的定位)

(2)每一個linear convolution後面都有一個Batch normalization為了加速收斂。

(3)每一個卷積層(除了conv5)後面都有RELU。

Convolutional LSTM的結構

Recurrent Filter Learning for Visual Tracking(RFL)論文筆記

狀态的初始化

原理圖見Figure 3,應用首幀圖像進行。

Loss Function

在Figure1上的response map(17*17)上訓練損失函數,損失函數是element-wise sigmoid cross-entropies

離線訓練

從訓練序列中采樣N+1幀,其中1~N幀作為object exemplars,2~N+1幀作為搜尋圖像,樣例圖像和搜尋圖像都是以目标為中心進行中心裁剪後的圖像,但是裁剪比例不一樣(樣例圖像是目标大小的2倍,搜尋圖像是目标大小的4倍)。

由于使用的全卷積網絡,具有平移不變性,是以以中心目标圖像進行訓練就已經足夠了(不需要再對圖像進行平移等操作擴充資料量了)

Online Tracking

不需要微調,直接使用雙三次插值對response map進行上采樣,選擇value最大的地方作為目标中心位置。

為了考慮到不同尺度變化,使用圖像金字塔生成三個尺度的response map,再把他們resize到相同的尺寸(和輸入圖像一樣大的尺寸),計算每個response map的值(R^m),選擇值最大的那個響應圖作為最終預測的目标尺度。

最終預測目标的位置:對值最大的前k個response map的位置做平均

更新:

對預測的目标進行裁剪,然後輸入Figure 3更新LSTM的狀态,産生新的object filter,用來和下一幀的特征圖做卷積,以産生新的響應圖

完整的算法流程(很清晰很完整)

Recurrent Filter Learning for Visual Tracking(RFL)論文筆記

繼續閱讀