目標跟蹤新高度ECO+:解除深度特徵被封印的力量
【原文:https://zhuanlan.zhihu.com/p/36463844】
目標跟蹤的相關濾波方向,Martin Danelljan 4月底在arXiv上掛出來的最新論文:
- Bhat G, Johnander J, Danelljan M, et al. Unveiling the Power of Deep Tracking [J]. arXiv preprint arXiv:1804.06833, 2018.
- https://arxiv.org/pdf/1804.06833.pdf
這次MD大神不是一作,看論文排版應該是投ECCV 2018的,目前沒有開原始碼,論文方法沒有命名,這裡用ECO+代表。
簡單概要
論文是對ECO的改進,deep tracker無法受益於更好更深CNN的深度特徵,針對這一反常現象,實驗和分析表明這主要是由於淺層特徵(shollow feature)和深度特徵(deep feature)的特性差異,兩種特徵分而治之,深度特徵部分加入了資料增強(data augmentation)增加訓練樣本數量,用不同label function,淺層特徵正樣本更少,深度特徵正樣本更多。兩部分響應圖自適應融合,提出了可以同時反映準確性accuracy和魯棒性robustness的檢測質量估計方法,基於這個質量評估,最優化方法自適應融合兩部分的響應圖,得到最優的目標定位結果。實驗結果在各個測試集上都是目前最好。
問題分析
效能:自從MD大神的C-COT和ECO出現之後,相關濾波最近一年半沒有較大突破,VOT2017前十名中,有一半以上都是在C-COT和ECO的基礎上改進的,即使CVPR 2018也沒有看到能全面超過ECO的論文,ECO到目前依然是難以逾越的高峰,這個方向是不是已經做到頭了?
複雜:相比最初的KCF簡潔明快,幾行程式碼做到SOTA,如今的ECO已經複雜龐大到難以置信,各種優化和trick堆積,MD大神的碼力和數學功底讓人歎服,菜雞如我已經看不懂ECO的原始碼,在深度學習提倡END2END,訓練解決一切問題的年代,ECO確實做不到簡單高效,這種框架是不是該拋棄?
速度:VGGNet作為backbone的深度特徵,GPU上無法實時,換backbone或許可以緩解,但相比Staple、ECO-HC和CSR-DCF,僅hand-craft feature(HOG+CN)的相關濾波也能做到SOTA,超過絕大多數深度學習的tracker,還能保持在CPU上實時速度,深度特徵+相關濾波是否有實用價值?
時隔一年半,這篇論文告訴我們MD大神還在堅持,還有的做,發現問題解決問題。
ECO還存在哪些問題呢?
- 昂貴的深度特徵與廉價的手工特徵,效能上沒有拉開差距,速度卻被碾壓,深度特徵的能力好像沒有發揮出來
- VOT2017中有人嘗試了VGGNet換成更好的GoogLeNet和ResNet,但沒有像其他方向一樣帶來效能方面的巨大提升,這違背了深度學習領域網路越大越深效能越好的基本法則,deep tracker無法從更深的CNN中獲益
論文對比分析了深度特徵和淺層特徵:
- 深度特徵Deep Feature:主要是CNN的高層啟用,典型VGGNet的layer 5。優點是包含高層語義,對旋轉和變形等外觀變化具有不變性,何時何地都能找到目標,即魯棒性很強;缺點是空間解析度低,對平移和尺度都有不變性,無法精確定位目標,會造成目標漂移和跟蹤失敗,即準確性很差。
- 淺層特徵Shollow Feature:主要是手工特徵如RGB raw-pixel, HOG, CN,和CNN的低層啟用,典型VGGNet的Layer 1。優點是主要包含紋理和顏色資訊,空間解析度高,適合高精度定位目標,即準確性很強;缺點是不變性很差,目標稍微形變就不認識了,尤其是旋轉,一轉就傻逼,即魯棒性很差。
ECO+對ECO的核心改進是兩種特徵區別對待,分而治之,深度特徵負責魯棒性,淺層特徵負責準確性,兩種檢測響應圖在最後階段自適應融合,目標定位最優化,兼具兩者的優勢。
如下圖,ECO無法獲益於更深更好的CNN,但新論文方法ECO+可以。
具體方法——分
資料增強Data Augmentation:通用目標跟蹤的難點在於需要跟蹤各種各樣的目標,而且僅第一幀是ground truth,其他訓練樣本都是tracker自己產生的,訓練樣本嚴重匱乏data-hungry,尤其是在深度學習需要大資料支撐。在CNN訓練中,解決訓練樣本不足問題常用Data Augmentation方法擴充訓練集,如多尺度的隨機裁切,隨機翻轉,顏色抖動等。
ECO+測試了幾種Data Augmentation方法在ECO框架中的作用,包括:
- Flip:水平翻轉
- Rotation:從-60°到60°的固定12個角度旋轉
- Shift:水平和豎直平移n畫素再提取特徵,等價於feature map平移n/s畫素,s是步進
- Blur:高斯濾波模糊,模擬跟蹤場景中常見的運動模型和尺度變化
- Dropout:通道級的dropout,隨機20%的feature channel置為0,其餘通道放大以保持樣本能量
以上Data Augmentation分別用於淺層特徵和深度特徵,結果如圖(a):
用於深度特徵都有明顯提升,Blur提升最多4%,除了Shift其他都在1%以上,而用於淺層特徵全都下降了,也是Blur最多,論文解釋是:深度特徵反映的語義資訊,對這些Data Augmentation都有不變性,能從增加的樣本獲益,而淺層特徵反映的紋理資訊會劇變,擾亂tracker傷害效能。
標籤函式Label Function:相關濾波的訓練樣本來自目標擴充套件區域,ground truth是高斯分佈,中心部分接近1是正樣本,邊緣部分接近0是負樣本,正負樣本比例通過高斯函式的標準差delta控制,標準差越大正樣本越多。
在ECO中,深度特徵和淺層特徵的高斯標籤函式相同,ECO+提出要區別對待,實驗結果如上圖(b),深度特徵標準差1/4最好,淺層特徵標準差1/16最好。通過標籤函式增加的正樣本等價於平移資料增強,所以論文解釋是:深度特徵對小平移的不變性,同上從增加的正樣本獲益,深度特徵更應該關注魯棒性;小平移會使feature map差異巨大,tracker無法處理大量有差異的正樣本,淺層特徵更應該關注準確性。
深度特徵和淺層特徵的區別對待,論文中就用了Data Augmentation和Label Function兩種方法,以ResNet-50 + ECO為例,加入資料增強Aug提升5.3%,加入寬標籤函式sigma提升4.3%,兩者結合提升5.8%,非常明顯,證明深度特徵可以受益於資料增強和寬標籤函式。
不同CNN架構下ECO與ECO+的對比,ECO+提升明顯,測試的CNN架構包括最常用的VGG-M,更好的GoogLeNet和更好更深的ResNet-50:
具體方法——合
預測質量評估Prediction Quality Measure:響應圖能反映目標定位的準確性和魯棒性,準確性與預測目標周圍的響應銳利程度有關,主峰越尖表示準確性越高;魯棒性與主峰到干擾峰(次峰)的間隔有關,主峰到次峰的距離越大表示魯棒性越高。論文提出了能同時反映準確性和魯棒性的響應圖質量評估方法:
t表示響應位置,y(t)表示響應值,t*是主峰,t是干擾峰。分子部分表示尖銳程度,主峰與次峰峰值差越大質量越高;分母部分表示位置間隔,delta是二次連續可微函式,間隔很近是0,間隔很遠是1。論文分別就t*和t位置接近和遠離兩種情況做了分析,都表明這個質量評估都可以同時反映準確性和魯棒性。
自適應融合的目標定位:ys和yd分別表示淺層和深度特徵的響應分數,加權融合:
基於前面提出的預測質量評估方法,以最大化預測質量為目標,聯合優化加權係數beta和目標狀態t*,最小化loss:
加入正則項,引入鬆弛變數:
求解該問題,取樣有限組候選狀態,每個都是三個變數的QP問題,計算量增加很少。
實驗對比ECO響應圖融合方法、固定權重求和的融合方法和論文提出的自適應融合方法對比:
自適應融合效果最好,深度特徵部分的權重在形變和模糊時變高,與預期一致。
實驗結果
所有超引數都是在OTB-2015的23個難例子集構成的驗證集OTB-H上調參得到的,其餘73個較簡單的序列構成OTB-E,其他所有實驗用固定引數,沒有調參和過擬合。
在NFS, Temple128和UAV123上的結果,都是最好:
在VOT-2017上的結果,對比了榜單前十,超過最好的LSART 17%,LSART發表在CVPR 2018,是目前所能看到的VOT-2017最好結果,大部分CVPR 2018論文沒有跑VOT-2017:
在VOT-2016上的結果,對比了所有已發表結果,包括所有SOTA結果,甚至目前能看到的CVPR 2018的SA-Siam, VITAL, LSART, FlowTrack,超過目前最好結果ECO 18%:
最後是OTB-2017剩餘測試集OTB-E的結果:
總結
ECO+從研究deep tracker為什麼無法從更好更深的CNN獲益這一問題開始,研究發現深度特徵和淺層特徵表現出截然不同的特性,先分後合的處理方法:
- 分,區別對待,深度特徵負責魯棒性,淺層特徵負責準確性,資料增強和寬標籤函式對深度特徵提升巨大
- 合,自適應融合,提出質量評估方法,以最大化融合質量為目標函式,最優化方法同時獲得深度特徵的魯棒性和淺層特徵的準確性
ECO+基本跑了所有的測試庫,全都做到了最好結果,比較了包括CVPR 2018在內的所有SOTA結果,無疑這是一篇重新整理目標跟蹤新高度的論文,期待ECO+在VOT-2018的表現。
目前沒看到程式碼,有幾個疑問點:
- 速度方面沒有提,論文僅提了質量評估和自適應融合部分計算增加不大,但資料增強會嚴重增加提取深度特徵的負擔,每個擴充套件樣本都要一次CNN forword,應該會非常非常慢,不知道有沒有做相應優化
- ECO+可以從更好更深的CNN獲益,最多測試了ResNet-50,不知道更深更好的ResNet-100,ResNet-152甚至Inception-ResNetV2會不會帶來進一步提升
- 深度特徵最大的問題是空間解析度太小,是否可以自己搭個stride=4或stride=1的CNN,保持深層啟用圖的feature map不要太小,但通道數適當減少以保證速度,是否更有利於檢測和跟蹤問題
沒有程式碼加強行翻譯,如有理解偏差歡迎指出
END
相關文章
- opencv的目標跟蹤演算法OpenCV演算法
- 目標跟蹤演算法概述演算法
- 基於深度學習的機器人目標識別和跟蹤深度學習機器人
- 深度學習|基於MobileNet的多目標跟蹤深度學習演算法深度學習演算法
- 目標跟蹤演算法分類演算法
- 運動目標檢測與跟蹤
- 多目標跟蹤全解析,全網最全
- KCF目標跟蹤方法分析與總結
- [AI開發]目標跟蹤之速度計算AI
- 目標跟蹤:KCF執行流程圖(matlab版本)流程圖Matlab
- 目標跟蹤:KCF--調通C++程式碼C++
- 多目標跟蹤論文及程式碼總結
- 基於MeanShift的目標跟蹤演算法、實現演算法
- 視覺目標跟蹤漫談:從原理到應用視覺
- CVPR 2018 目標跟蹤相關論文
- 高通Vuforia優化目標檢測與跟蹤穩定性優化
- 跟蹤aspr殼的pre-dip,解除使用限制
- Python+OpenCV目標跟蹤實現基本的運動檢測PythonOpenCV
- 被動路由跟蹤工具InTrace路由
- 利用目標跟蹤來提高實時人臉識別處理速度
- 基於粒子濾波和幀差法的目標跟蹤matlab模擬Matlab
- SQL SERVER 跟蹤標記總結SQLServer
- 有效資源跟蹤的8個指標指標
- 商湯開源最大目標跟蹤庫PySOT,程式碼已正式上線!
- 計算機視覺中,究竟有哪些好用的目標跟蹤演算法(上)計算機視覺演算法
- 計算機視覺中,究竟有哪些好用的目標跟蹤演算法(下)計算機視覺演算法
- 互動式多模型(IMM)的自適應機動目標跟蹤演算法模型演算法
- 刪除git已經跟蹤的檔案或者目錄Git
- 目標跟蹤演算法----KCF進階(基於KCF改進的演算法總結)演算法
- 基於Transformer的高效單階段短時RGB-T單目標跟蹤方法ORM
- 飛槳Tracking目標跟蹤庫開源!涵蓋業界主流的VOT演算法,精準檢測動態目標軌跡演算法
- 深度學習之目標檢測與目標識別深度學習
- [zt] oracle跟蹤檔案與跟蹤事件Oracle事件
- oracle跟蹤檔案與跟蹤事件(zt)Oracle事件
- oracle跟蹤檔案和跟蹤事件(zt)Oracle事件
- 基於行跟蹤的ROWDEPENDENCIES實現資訊變化跟蹤
- 深度學習之目標檢測深度學習
- git的跟蹤分支和遠端跟蹤分支學習筆記Git筆記