商湯科技智能視頻團隊首次開源其目標跟蹤研究平臺 PySOT。PySOT 包含了商湯科技 SiamRPN 系列演算法,以及剛被 CVPR2019 收錄為 Oral 的 SiamRPN++。此篇文章將解讀目標跟蹤最強演算法 SiamRPN 系列。

背景

由於存在遮擋、光照變化、尺度變化等一些列問題,單目標跟蹤的實際落地應用一直都存在較大的挑戰。過去兩年中,商湯智能視頻團隊在孿生網路上做了一系列工作,包括將檢測引入跟蹤後實現第一個高性能孿生網路跟蹤演算法的 SiamRPN(CVPR 18),更好地利用訓練數據增強判別能力的 DaSiamRPN(ECCV 18),以及最新的解決跟蹤無法利用到深網路問題的 SiamRPN++(CVPR 19)。其中 SiamRPN++ 在多個數據集上都完成了 10% 以上的超越,並且達到了 SOTA 水平,是當之無愧的目標跟蹤最強演算法。

項目地址:github.com/STVIR/pysot

以上動圖中,紅色框是 SiamRPN++ 的跟蹤效果,藍色框是 ECCV 2018 上的 UPDT 的結果,可以看出 SiamRPN++ 的效果更佳,跟蹤效果更穩定,框也更準。從這個圖也可以看出跟蹤的一些挑戰:光照急劇變化,形狀、大小變化等。

SiamRPN (CVPR18 Spotlight)

在 CVPR18 的論文中(SiamRPN),商湯智能視頻團隊發現孿生網路無法對跟蹤目標的形狀進行調節。之前的跟蹤演算法更多的將跟蹤問題抽象成比對問題,但是跟蹤問題其實和檢測問題也非常類似,對目標的定位與對目標框的回歸預測一樣重要。

研究人員分析了以往跟蹤演算法的缺陷並對其進行改進:

  1. 大多數的跟蹤演算法把跟蹤考慮成定位問題,但它和檢測問題也比較類似,對目標的定位和對目標邊界框的回歸預測一樣重要。為此,SiamRPN 將跟蹤問題抽象成單樣本檢測問題,即需要設計一個演算法,使其能夠通過第一幀的信息來初始化的一個局部檢測器。為此,SiamRPN 結合了跟蹤中的孿生網路和檢測中的區域推薦網路:孿生網路實現對跟蹤目標的適應,讓演算法可以利用被跟蹤目標的信息,完成檢測器的初始化;區域推薦網路可以讓演算法可以對目標位置進行更精準的預測。經過兩者的結合,SiamRPN 可以進行端到端的訓練。
  2. 以往的濾波類的方法,沒辦法通過數據驅動的形式提升跟蹤的性能。而 SiamRPN 可以端到端訓練,所以更大規模的數據集 Youtube-BB 也被引入到了訓練中,通過數據驅動的形式提升最終的性能。

結合以上兩點創新,在基線演算法 SiamFC 的基礎上,SiamRPN 實現了五個點以上的提升(OTB100,VOT15/16/17 數據集);同時還達到了更快的速度(160fps)、也更好地實現了精度與速度的平衡。

DaSiamRPN (ECCV18)

SiamRPN 雖然取得了非常好的性能,但由於訓練集問題,物體類別過少限制了跟蹤的性能;同時,在之前的訓練方式中,負樣本只有背景信息,一定程度上也限制了網路的判別能力,網路只具備區分前景與不含語義的背景的能力。基於這兩個問題,DaSiamRPN 設計了兩種數據增強方式:

  1. 孿生網路的訓練只需要圖像對,而並非完整的視頻,所以檢測圖片也可以被擴展為訓練數據。更準確的來說,通過對檢測數據集進行數據增強,生成可用於訓練的圖片對。因此在 DaSiamRPN 中,COCO 和 ImageNet Det 也被引入了訓練,極大地豐富了訓練集中的類別信息。同時,數據量增大的本身也帶來了性能上的提升。
  2. 在孿生網路的訓練過程中,通過構造有語意的負樣本對來增強跟蹤器的判別能力,即訓練過程中不再讓模板和搜索區域是相同目標;而是讓網路學習判別能力,去尋找搜索區域中和模版更相似的物體,而並非一個簡單的有語義的物體。

經過上述的改進,網路的判別能力變得更強,檢測分數也變得更有辨別力,這樣就可以根據檢測分數判斷目標是否消失。基於此,DaSiamRPN 可以將短時跟蹤拓展到長時跟蹤,並且在 UAV20L 數據集上比之前最好的方法提高了 6 個點。在 ECCV18 的 VOT workshop 上面,DaSiamRPN 取得了實時比賽的冠軍,相比去年的冠軍有了 80% 的提升

SiamRPN++ (CVPR19 Oral)

目前,孿生網路中的核心問題在於現有的孿生網路目標跟蹤演算法只能用比較淺的卷積網路(如 AlexNet),無法利用現代化網路為跟蹤演算法提升精度,而直接引入深網路甚至會使性能大幅衰減。

為瞭解決深網路這個 Siamese 跟蹤器的痛點,商湯智能視頻團隊基於之前 ECCV2018 的工作(DaSiamRPN),通過分析孿生神經網路訓練過程,發現孿生網路在使用現代化深度神經網路存在位置偏見問題,而這一問題是由於卷積的 padding 會破壞嚴格的平移不變性。然而深網路並不能去掉 padding,為了緩解這一問題,讓深網路能夠在跟蹤提升性能,SiamRPN++ 中提出在訓練過程中加入位置均衡的採樣策略。通過修改採樣策略來緩解網路在訓練過程中的存在的位置偏見問題,讓深網路能夠發揮出應有的效果。

通過加入這一採樣策略,深層網路終於能夠在跟蹤任務中發揮作用,讓跟蹤的性能不再受制於網路的容量。同時,為了更好地發揮深層網路的性能,SiamRPN++ 中利用了多層融合。由於淺層特徵具有更多的細節信息,而深層網路具有更多的語義信息,將多層融合起來以後,可以跟蹤器兼顧細節和深層語義信息,從而進一步提升性能。

除此之外,研究人員還提出了新的連接部件,深度可分離相關層(Depthwise Correlation,後續簡寫為 DW)。相比於之前的升維相關層(UpChannel correlation,後續簡寫為 UP),DW 可以極大地簡化參數量,平衡兩支的參數量,同時讓訓練更加穩定,也能更好的收斂。

為了驗證以上提出的內容,研究人員做了詳細的實驗。在比較常用的 VOT 和 OTB 數據集上,SiamRPN++ 取得了 SOTA 的結果。在 VOT18 的長時跟蹤,以及最近新出的一些大規模數據集上如 LaSOT,TrackingNet,SiamRPN++ 也都取得了 SOTA 的結果。

目前相關代碼現已上傳至商湯科技開源目標跟蹤研究平臺 PySOT。PySOT 實現了目前 SOTA 的多個單目標跟蹤演算法,旨在提供高質量、高性能的視覺跟蹤研究代碼庫,並將其靈活應用於新演算法的實現和評估中。歡迎大家使用與交流!

PySOT 開源項目

  • github.com/STVIR/pysot
  • SiamRPN
  • openaccess.thecvf.com/c
  • DaSiamRPN
  • openaccess.thecvf.com/c
  • SiamRPN++
  • arxiv.org/abs/1812.1170

參考文獻

  1. Bo Li, Wei Wu, Qiang Wang, Fangyi Zhang, Junliang Xing, Junjie Yan, "SiamRPN++: Evolution of Siamese Visual Tracking with Very Deep Networks" (Oral) in Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition (CVPR) 2019
  2. Zheng Zhu, Qiang Wang, Bo Li, Wei Wu, Junjie Yan, "Distractor-aware Siamese Networks for Visual Object Tracking" European Conference on Computer Vision (ECCV) 2018
  3. Bo Li, Junjie Yan, Wei Wu, Zheng Zhu, Xiaolin Hu, "High Performance Visual Tracking with Siamese Region Proposal Network" (Spotlight) in Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition (CVPR) 2018
  4. Luca Bertinetto, Jack Valmadre, Jo?o F. Henriques, Andrea Vedaldi, Philip H. S. Torr "Fully-Convolutional Siamese Networks for Object Tracking" in ECCV Workshop 2016
  5. Goutam Bhat, Joakim Johnander, Martin Danelljan, Fahad Shahbaz Khan, Michael Felsberg."Unveiling the Power of Deep Tracking" European Conference on Computer Vision (ECCV) 2018


推薦閱讀:
相關文章