SiamRPN++: Evolution of Siamese Visual Tracking with Very Deep Networks
SiamRPN++:具有非常深度網絡的Siamese視覺跟蹤的進化
【siamrpn++論文地址】
https://arxiv.org/abs/1812.11703
摘要
基于Siamese網絡的跟蹤器將跟蹤表示為目標模板和搜索區域之間的卷積特征互相關。然而,與最先進的算法相比,Siamese追蹤器仍然存在精度差距,它們不能利用來自深度網絡的特征,如ResNet-50或更深層次的網絡。在本文中,我們證明了其核心原因來自于缺乏嚴格的平移不變性。通過全面的理論分析和實驗驗證,我們通過一個簡單而有效的空間感知采樣策略打破了這一限制,成功地訓練了一個具有顯著性能收益的resnet驅動的跟蹤Siamese跟蹤器。
此外,我們提出了一種新的模型架構來執行分層和深度聚合,這不僅進一步提高了精度,而且減少了模型的大小。我們進行了廣泛的消融研究,以證明所提出的跟蹤器的有效性,它目前在五個大型跟蹤基準上獲得了最好的結果,包括OTB2015、VOT2018、UAV123、LaSOT和跟蹤網。我們的模型將被發布,以促進進一步的研究。
1 介紹
視覺物體跟蹤在過去的幾十年里受到了越來越多的關注,并一直是一個非常積極的研究方向。它在視覺監控[47]、人機交互[26]和增強現實[48]等不同領域都有廣泛的應用。雖然最近取得了很大的進展,但由于光照變化、遮擋和背景雜波等諸多因素,它仍然被普遍認為是一項非常具有挑戰性的任務。
最近,基于Siamese網絡的追蹤器[40,1,15,42,41,24,43,52,44]在社區中引起了人們的廣泛關注。這些Siamese跟蹤器通過為目標模板學習的特征表示和搜索區域之間的互相關,將視覺對象跟蹤問題表述為學習一般的相似性地圖。為了保證跟蹤效率,離線學習到的Siamese相似度函數通常在運行時間[40,1,15]期間被固定下來。CFNet跟蹤器[41]和DSiam跟蹤器[11]分別通過一個正在運行的平均模板和一個快速轉換模塊來更新跟蹤模型。SiamRNN跟蹤器[24]在Siamese網絡之后引入了區域建議網絡[24],并進行聯合分類和回歸進行跟蹤。DaSiamRPN跟蹤器[52]進一步引入了干擾物感知模塊,提高了模型的識別能力。
盡管上述Siamese跟蹤器獲得了出色的跟蹤性能,特別是在平衡精度和速度方面,即使是性能最好的Siamese跟蹤器,如SiamPRN,在OTB2015 [46]等跟蹤基準上,精度仍然與最先進的[5]有顯著的差距。我們觀察到,所有這些跟蹤器都在類似于AlexNet [23]的架構上建立了網絡,并多次嘗試訓練具有像ResNet [14]這樣的更復雜架構的Siamese跟蹤器,但沒有性能提高。受此觀察結果的啟發,我們對現有的Siamese追蹤器進行了分析,發現其核心原因來自于對嚴格平移不變性的破壞。由于目標可能出現在搜索區域的任何位置,目標模板學習到的特征表示應該保持空間不變,我們進一步從理論上發現,在現代深度架構中,只有AlexNet的零填充變體滿足這一空間不變性限制。
為了克服這一限制,并使用更強大的深度架構來驅動Siamese跟蹤器,通過廣泛的實驗驗證,我們引入了一個簡單的但有效的采樣策略打破了Siamese跟蹤器的空間不變性限制。我們使用ResNet作為骨干網絡,成功地訓練了一個基于SiamRPN [24]的跟蹤器,并獲得了顯著的性能改進。得益于ResNet架構,我們提出了一種分層的特征加重結構,它有助于跟蹤器從多個層次上學習到的特征中預測相似性圖。通過對Siamese網絡結構的相互關聯分析,發現其兩個網絡分支在參數數上高度不平衡;因此,我們進一步提出了一種深度可分離的相關結構,它不僅大大減少了目標模板分支的參數數,而且穩定了整個模型的訓練過程。此外,還觀察到一個有趣的現象,即相同類別的物體在相同的通道上有較高的響應,而其余通道的響應被抑制。正交特性也可以提高跟蹤性能。
綜上所述,這項工作的主要貢獻分為四個部分:
?我們對Siamese追蹤器進行了深入的分析,并證明了在使用深度網絡時,精度的下降是由于嚴格平移不變性的破壞。
?我們提出了一種簡單而有效的采樣策略來打破空間不變性限制,成功地訓練了由ResNet體系結構驅動的Siamese跟蹤器。
?我們提出了一種用于互相關操作的分層特征聚合結構,它幫助跟蹤器從多個層次上學習到的特征中預測相似度圖。
?我們提出了一種深度可分離的相關結構來增強互相關,以產生與不同語義相關的多個相似性映射。
基于上述理論分析和技術貢獻,我們開發了一個高效的視覺跟蹤模型,建立了一個新的最先進的跟蹤精度,同時在35 FPS的速度下高效運行。提出的跟蹤器,稱為SiamRPN++,在五個最大的跟蹤基準上持續獲得最佳跟蹤結果,包括OTB2015 [46]、VOT2018 [21]、UAV123 [31]、LaSOT [10]和跟蹤網[30]。此外,我們提出了一種使用MobileNet[18]骨干的跟蹤器的快速變體,以保持在70幀/秒下運行的競爭性能。為了便于對視覺跟蹤方向的進一步研究,我們將發布SiamRPN++跟蹤器的源代碼和訓練模型。
2 相關工作
在本節中,我們將簡要介紹最近的跟蹤器,特別關注基于Siamese網絡的跟蹤器[40,1]。此外,我們還描述了深度體系結構的最新發展。
由于構建了新的基準數據集[45,46,19,21,10,30]和改進的方法[16,51,6,7,17,32,9,5,43,52,49],視覺跟蹤在過去十年中得到了快速的發展。標準化基準[45,46,10]為與不同算法的比較提供了公平的測試平臺。每年舉行的跟蹤挑戰,[22,19,20,21]一直在推動跟蹤性能。隨著這些進步,許多有前途的跟蹤算法已經被提出。Bolme等人[3]的開創性工作將信號處理場的卷積定理引入視覺跟蹤,并將對象模板匹配問題轉換為頻域內的相關操作。通過這種變換,基于相關濾波器的跟蹤器不僅可以獲得高效的運行速度,而且如果使用適當的特征是[16,50,51,8,6],還可以提高精度。隨著深度學習模型在視覺跟蹤中的廣泛應用,基于深度特征表示的相關濾波的跟蹤算法在流行的跟蹤基準[45,46]和挑戰[22,19,20]中獲得了最先進的精度。
近年來,基于Siamese網絡的跟蹤器因其良好的跟蹤精度和效率[40,1,15,42,41,12,24,43,52,44]而受到廣泛關注。這些跟蹤器將視覺跟蹤定義為一個交叉關系問題,并有望更好地利用從端到端學習中獲得的深度網絡的優點。為了從兩個分支的互相關中生成一個相似性圖,他們訓練了一個y形的神經網絡,它連接了兩個網絡分支,一個用于對象模板,另一個用于搜索區域。此外,這兩個分支可以在跟蹤階段[40,1,15,43,24,52]期間保持固定,或在線更新,以適應目標[42,41,12]的外觀變化。目前最先進的Siamese跟蹤器[24,52]提高了區域提案網絡對Siamese網絡的跟蹤性能,并產生了非常有希望的結果。然而,在OTB基準測試[46]上,他們的跟蹤精度仍然與ECO [5]和MDNet [32]等最先進的深度跟蹤器留下了相對較大的差距。
隨著Alex等人[23]在2012年提出的現代深度體系結構AlexNet,對網絡體系結構的研究迅速發展,提出了許多復雜的深度體系結構,如VGGNet [37]、谷歌Net[38]、ResNet [14]和移動網[18]。這些深度的架構不僅提供了對神經網絡設計的更深入的理解,而且推動了許多計算機視覺任務的先進水平如圖像檢測[33],圖像分割[4],和人位姿估計[39]。在深度視覺跟蹤器中,網絡體系結構通常包含不超過5個由AlexNet或VGGNet量身定制的結構層。這一現象解釋了淺層特征主要有助于物體[34]的準確定位。在這項工作中,我們認為,如果用整個Siamese網絡適當地訓練模型,使用更深入的模型可以顯著提高Siamese跟蹤器的性能。
3 Siamese Tracking with Very Deep Networks
這項工作最重要的發現是,如果基于Siamese網絡的跟蹤算法配備了更深層次的網絡,那么它的性能可以顯著提高。然而,簡單地通過直接使用像ResNet這樣更深的網絡來訓練Siamese跟蹤器并不能獲得預期的性能提高。我們發現潛在的原因很大程度上涉及到Siamese追蹤器的內在限制,因此,在提出SiamRPN++模型之前,我們首先對Siamese追蹤網絡進行了更深入的分析。
3.1. Analysis on Siamese Networks for Tracking
基于Siamese網絡的跟蹤算法[40,1]將視覺跟蹤定義為一個互相關問題,并從具有Siamese網絡結構的深度模型中學習跟蹤相似度圖,其中一個分支用于學習目標的特征表示,另一個分支用于搜索區域。目標補丁通常在序列的第一幀中給出,可以看作是一個樣本z。目標是在語義嵌入空間φ(·)中,從下面的框架x中找到最相似的補丁(實例):
其中,b用于模擬相似度值的偏移量。這個簡單的匹配函數自然意味著在設計Siamese跟蹤器的兩個內在的限制。
? Siamese追蹤器中使用的收縮部分和特征提取器具有嚴格平移不變性的內在限制,
,其中
是翻譯移位子窗口Operator,保證了高效的訓練和推理。
? 收縮部分對結構的對稱性有一個內在的限制,收縮部分對結構對稱性具有固有的限制,即f(z,x?,)= f(x ,,z),適用于相似性學習。
經過詳細的分析,我們發現防止使用深度網絡進行Siamese跟蹤的核心原因與這兩個方面有關。具體地說,其中一個原因是,深度網絡中的填充會破壞嚴格的平移不變性。另一個問題是,RPN需要不對稱的特征來進行分類和回歸。我們將引入空間感知采樣策略來克服第一個問題,并在Sect.3,4節中討論第二個問題。
嚴格的平移不變性只存在于沒有填充網絡中,如修改后的AlexNet [1]。以前基于Siamese的網絡[1,42,41,24,52]被設計為淺層的,以滿足這個限制。然而,如果所采用的網絡被ResNet或MobileNet等現代網絡所取代,填充將不可避免地會使網絡更加深入,從而破壞了嚴格的平移不變性限制。我們的假設是,違反這一限制將導致空間偏差。
我們通過在一個填充網絡上的模擬實驗來驗證我們的假設。位移定義為數據增強中均勻分布所產生的最大平移范圍。我們的模擬實驗進行如下。首先,在三個分段訓練實驗中,將目標放置在具有不同移位范圍(0、16和32)的中心。收斂后,我們對測試數據集上生成的熱圖進行聚合,然后將結果可視化到圖1中。在第一次零位移的模擬中,邊界區域的概率降為零。它表明,盡管出現了測試目標,但仍能學習到強烈的中心偏差。另外兩個模擬表明,增加位移范圍將逐漸防止模型崩潰到這個平凡的解。定量結果表明,32位移的聚合熱圖更接近于測試對象的位置分布。空間感知采樣策略可以有效緩解了填充網絡對嚴格平移不變性的破壞。
圖1.當使用不同的隨機翻譯時,正樣本的先驗概率關系的可視化。在±32像素內進行隨機翻譯后,分布變得更加均勻。
為了避免對物體施加強烈的中心偏差,我們通過空間感知采樣策略,用ResNet-50主干來訓練SiamRPN。如圖2所示,在VOT2018上,零移位的性能降低到0.14,一個合適的移位(±64像素)對于訓練深度Siamese跟蹤器至關重要。
3.2. ResNet-driven Siamese Tracking
基于以上分析,可以消除中心偏差的影響。一旦我們消除了對中心位置的學習偏差,任何現成的網絡(如MobileNet,ResNet)都可以用來在領域適應后進行視覺跟蹤。此外,我們還可以自適應地構建網絡拓撲結構,揭示了深度網絡的視覺跟蹤性能。
在本小節中,我們將討論如何將一個深度網絡轉移到我們的跟蹤算法中。特別是,我們主要針對ResNet-50 [14]進行實驗。原始的ResNet有32像素的大步幅,不適合密集的Siamese網絡預測。如圖3所示,我們通過將conv4和conv5塊修改為單位空間步幅,將最后兩個塊的有效步幅從16像素和32像素減少到8像素,并通過擴張卷積[27]增加其接受域。在每個塊輸出上附加一個額外的1×1的卷積層,以將信道減少到256。
在[24]之后,我們使用互相關層和完全卷積層的組合來組裝一個頭模塊來計算分類分數(用S表示)和邊界框回歸變量(用B表示)。Siamese人的RPN塊用P表示。
此外,我們發現對ResNet仔細微調將提高性能。通過將ResNet提取器的學習速率設置為比RPN部分小的10倍,使特征表示更適合于跟蹤任務。與傳統的Siamese方法不同,深度網絡的參數是以端到端方式聯合訓練的。據我們所知,我們確實是第一個在深度Siamese網絡(> 20層)上實現端到端學習,以進行視覺跟蹤。
3.3. Layer-wise Aggregation(分層聚合)
在利用了像ResNet-50這樣的深層網絡后,聚合不同的深層就成為可能了。直觀地說,視覺跟蹤需要豐富的表示,能夠跨越從低到高的級別,從小到大的尺度,以及從精細到粗的分辨率。即使在卷積網絡中使用特征的深度,隔離一層也是不夠的:復合和聚合這些表示可以提高識別和定位的推理。
在之前的工作中,只使用像AlexNet這樣的淺層網絡,多層次特性不能提供非常不同的表示。然而,考慮到接受域的差異很大,ResNet的不同層更有意義。早期層的特征主要集中于顏色、形狀等低層次信息,對于定位至關重要,而缺乏語義信息;后者的特征具有豐富的語義信息,在運動模糊、巨大變形等挑戰場景中是有益的。假設使用這種豐富的層次信息有助于幫助跟蹤。
在我們的網絡中,提取多分支特征來協同推斷目標定位。對于ResNet- 50,我們探索了從最后三個殘差塊中提取的多層次特征,用于我們的多層聚合。我們將這些輸出分別稱為F3(z)、F4(z)和F5(z)。如圖3所示,將conv3、conv4、conv5的輸出分別輸入三個SiameseRPN模塊。
圖3.我們所提議的框架的說明。給定一個目標模板和搜索區域,該網絡通過融合來自多個Siamese區域建議(SiamRPN)塊的輸出來輸出一個密集的預測。每個SiamRPN塊顯示在右邊。
由于三個RPN模塊的輸出尺寸具有相同的空間分辨率,因此直接對RPN輸出采用加權和。一個加權融合層結合了所有的輸出。
由于組合權重的域不同,因此將分離組合權重進行分類和回歸。該權重與網絡一起離線地進行端到端優化。
與以前的工作相比,我們的方法沒有明確地結合卷積特征,而是分別學習分類和回歸。請注意,隨著主干網絡深度的顯著增加,我們可以從足夠的視覺-語義層次結構的多樣性中獲得實質性的收益。
3.4. Depthwise Cross Correlation
互相關模塊是嵌入兩個分支信息的核心操作。SiamFC [1]利用交叉相關層獲得目標定位的單通道響應圖。在SiamRPN [24]中,通過添加一個巨大的卷積層來擴展通道(UP-Xcorr),交叉關聯被擴展到嵌入更高層次的信息,如錨點。較重的上通道模塊使參數分布嚴重不平衡(即RPN模塊包含20M參數,而特征提取器在[24]中只包含4M參數),這使得SiamRPN的訓練優化困難。
在本小節中,我們提出了一個輕量級的互相關層,稱為深度互相關(DW-XCorr),以實現有效的信息關聯。DW-XCorr層包含的參數比SiamRPN中使用的UP-XCorr少10倍,而性能與之相當。為了實現這一點,我們采用了一個conv-bn塊來調整每個殘差塊的特征,以適應跟蹤任務。至關重要的是,邊界盒預測和基于錨點的分類都是不對稱的,這與SiamFC不同(見See Sect. 3.1). 為了編碼差異,模板分支和搜索分支通過兩個非共享的卷積層。然后對兩個具有相同信道數的特征圖進行逐信道的相關操作。附加了另一個conv-bn-relu塊來融合不同的通道輸出。最后,附加了分類或回歸輸出的最后一個卷積層。
圖4。不同的互相關層的說明。(a)交叉相關(XCorr)層預測了SiamFC [1]中目標模板和搜索補丁之間的單通道相似性圖。(b)上行通道交叉相關(UP-XCorr)層通過在SiamRPN [24]中級聯一個重卷積層和幾個獨立的XCorr層來輸出多通道相關特征。(c)深度交叉相關(DW-XCorr)層預測了模板和搜索補丁之間的多通道相關特征。
通過將互相關替換為深度相關,我們可以大大降低計算成本和內存使用。這樣,模板和搜索分支上的參數數量就得到了平衡,從而使訓練過程更加穩定。
此外,圖5中還說明了一個有趣的現象。同一類別的物體在同一通道上有較高的響應(148通道的車,222通道的人,226通道的臉),而其余通道的響應被抑制。這一性質可以理解為由深度互相關所產生的通道級特征幾乎是正交的,每個通道都代表一些語義信息。我們也分析了熱圖時,當使用上通道互相關和反應圖是較少解釋的。
圖5。conv4中深度相關輸出的通道。conv4共有256個通道,但只有少數通道在跟蹤過程中具有高響應。因此,我們選擇了第148、222、226個通道作為演示,即圖中的第2、3、4行。第一行包含來自OTB數據集[46]的6個相應的搜索區域。不同的通道代表不同的語義,第148通道對汽車的響應較高,而對人和臉的響應較低。第222頻道和第226頻道對人物和面孔分別有較高的反應。
4 實驗結果
4.1 培訓數據集和評估
訓練:我們的架構[14]的主干網絡在ImageNet [36]上進行了預訓練,用于圖像標記,這已經被證明是對其他任務[13,27]的一個非常好的初始化。我們在COCO [25]、ImageNet DET [36]、ImageNet VID和YouTube邊界盒數據集[35]的訓練集上訓練網絡,并學習如何測量一般對象之間的相似性的通用概念。在訓練和測試中,我們使用127像素的模板補丁,255像素的搜索區域。
評價:我們專注于在OTB2015 [46]、VOT2018 [21]和UAV123 [31]上的短期單目標跟蹤。我們使用VOT2018-LT [21]來消除長期設置。在長期跟蹤中,物體可能會離開視野或長時間被完全遮擋,這比短期跟蹤更具挑戰性。我們還分析了我們的方法在LaSOT [10]和TrackeingNet[30]上的推廣,這是最近兩個最大的單目標跟蹤基準。
4.2 實施細節
網絡架構。在實驗中,我們遵循[52]來進行訓練和推理設置。我們將兩個兄弟卷積層連接到減步的ResNet-50(部分。3.2)使用5個錨點進行方案分類和邊界盒回歸。三個隨機初始化的1×1卷積層附加到conv3、conv4、conv5上,將特征維數降到256。
優化器。最優化SiamRPN++采用隨機梯度下降(SGD)進行訓練。我們使用超過8個GPU的同步SGD,每個小批總共128對(每個GPU16對),這需要12個小時才能收斂。我們使用前5步的熱身學習率為0.001來訓練RPN剎車。在最后的15個學習周期中,對整個網絡進行端到端訓練,學習率從0.005呈指數衰減到0.0005。重量衰減為0.0005,動量為0.9。訓練損失是分類陽離子損失和回歸的標準平滑L1損失的總和。
4.3 消融實驗
骨干體系結構。特征提取器的選擇是至關重要的,因為參數的數量和層的類型直接影響跟蹤器的內存、速度和性能。我們比較了不同的網絡架構的視覺跟蹤。圖6顯示了使用AlexNet、ResNet-18、ResNet-34、ResNet-50和MobileNet-v2作為骨干的性能。我們報告了OTB2015上成功面積曲線下(AUC)與ImageNet上前1精度的性能。我們觀察到,我們的SiamRPN++可以受益于更深層次的卷積神經網絡。
圖6 . ImageNet的最高精對比。2015年OTB的預期平均重疊(EAO)得分。
層次特征聚合。為了研究分層特征聚合的影響,我們首先要在ResNet-50上訓練三個具有單一RPN的變體。我們的經驗發現,conv4單獨在EAO中可以達到0.374的競爭性能,而較深層和較淺層的性能下降了4%。通過結合conv4和conv5這兩個分支獲得了改善,但對其他兩種組合沒有觀察到改善。盡管如此,健壯性還是增加了10%,這是我們的跟蹤器的關鍵漏洞。這意味著我們的跟蹤器還有改進的空間。在聚合所有三層后,準確性和穩健性都穩步提高,VOT和OTB的收益在3.1%到1.3%之間。總的來說,分層特征聚合在VOT2018上產生了0.414的EAO得分,比單層基線高出4.0%。
深度相關性。我們將原來的上通道交叉相關層與所提出的深度交叉相關層進行了比較。如表1所示,所提出的深度相關性在VOT2018年VOT上提高了2.3%,在OTB2015年OTB上提高了0.8%證明了深度相關性的重要性。這在一定程度上是由于兩個分支的參數分布平衡,使學習過程更加穩定,收斂性更好。
表1。在VOT2018和OTB2015上對提議的跟蹤器的消融研究。L3、L4、L5分別代表conv3、conv4、conv5。微調表示骨干是否被離線訓練。Up/DW表示Up通道相關和深度相關。
4.4 與最先進技術的比較
這部分直接看論文原文效果更好。
5 結論
在本文中,我們提出了一個統一的框架,稱為SiamRPN++,用于端到端訓練一個深度Siamese網絡進行視覺跟蹤。我們展示了理論和經驗的證據,如何訓練一個深度網絡的Siamese跟蹤器。我們的網絡由一個多層聚合模塊組成,它組裝連接的層次來聚合不同層次的表示,以及一個深度相關層,這允許我們的網絡減少計算成本和冗余參數,同時也導致更好的收斂。使用SiamRPN++,我們實時獲得了VOT2018的最新結果,顯示了SiamRPN++的有效性。SiamRPN++還在LaSOT和跟蹤網等大型數據集上獲得了最先進的結果,顯示了其通用性。