前言
本文介紹了一個端到端的用于視覺跟蹤的transformer模型,它能夠捕獲視訊序列中空間和時間資訊的全局特征依賴關系。在五個具有挑戰性的短期和長期基準上實作了SOTA性能,具有實時性,比Siam R-CNN快6倍。
本文來自公衆号CV技術指南的論文分享系列
關注公衆号CV技術指南 ,專注于計算機視覺的技術總結、最新技術跟蹤、經典論文解讀。

論文:Learning Spatio-Temporal Transformer for Visual Tracking
代碼:https://github.com/researchmm/Stark
卷積核不擅長對圖像内容和特征的長期相關性進行模組化,因為它們隻處理局部鄰域,無論是在空間上還是在時間上。目前流行的追蹤器,包括離線siamese追蹤器和線上學習模型,幾乎都是建立在卷積運算的基礎上。是以,這些方法隻能很好地對圖像内容的局部關系進行模組化,但僅限于捕獲遠端的全局互動。這樣的缺陷可能會降低模型處理全局上下文資訊對于定位目标對象很重要的場景的能力,例如經曆大規模變化或頻繁進出視圖的對象。
空間資訊和時間資訊對于目标跟蹤都是重要的。前者包含用于目标定位的對象外觀資訊,而後者包含對象跨幀的狀态變化。以前的siamese跟蹤器隻利用空間資訊進行跟蹤,而線上方法使用曆史預測進行模型更新。雖然這些方法很成功,但它們并沒有明确地對空間和時間之間的關系進行模組化。
受最近的檢測transformer(DETR)的啟發,論文提出了一種新的端到端跟蹤結構,采用編碼器-解碼器transformer來提高傳統卷積模型的性能。
新架構包含三個關鍵元件:編碼器、解碼器和預測頭。
1. 編碼器接受初始目标對象、目前圖像和動态更新模闆的輸入。編碼器中的self-attention子產品通過輸入的特征依賴關系來學習輸入之間的關系。由于模闆圖像在整個視訊序列中被更新,是以編碼器可以捕獲目标的空間和時間資訊。
2. 解碼器學習嵌入的查詢以預測目标對象的空間位置。
3. 使用基于角點的預測頭來估計目前幀中目标對象的邊界框。同時,學習記分頭來控制動态模闆圖像的更新。
總而言之,這項工作有三個貢獻。
1. 提出了一種新的緻力于視覺跟蹤的transformer架構。它能夠捕獲視訊序列中空間和時間資訊的全局特征依賴關系。提出使用動态更新模闆。
2. 整個方法是端到端的,不需要餘弦視窗、bounding box平滑等後處理步驟,大大簡化了現有的跟蹤流水線。
3. 提出的跟蹤器在五個具有挑戰性的短期和長期基準上實作SOTA性能,同時以實時速度運作。
論文提出了一種用于視覺跟蹤的時空transformer網絡,稱為STARK。論文基于一種簡單的基線方法,該方法直接應用原始編解碼器變壓器進行跟蹤,且隻考慮了空間資訊。論文擴充基線以學習用于目标定位的空間和時間表示,引入了一個動态模闆和一個更新控制器來捕捉目标對象的外觀變化。
圖2為baseline方法
baseline主要由三個部分組成:卷積主幹、編解碼器轉換器和bounding box預測頭。
原圖像先通過CNN backbone進行降維和降采樣,完了再進行Flatten 和Concatenate得到向量,向量再加入正弦位置嵌入,作為transformer的Encoder輸入。随機初始化一個查詢向量,Decoder将目标查詢和來自編碼器的增強特征序列作為輸入。與DETR采用100個對象查詢不同,論文隻向解碼器輸入一個查詢來預測目标對象的一個bounding。此外,由于隻有一個預測,論文去掉了DETR中用于預測關聯的匈牙利算法。目标查詢可以關注模闆上的所有位置和搜尋區域特征,進而學習最終邊界框預測的魯棒表示。
DETR采用三層感覺器預測目标坐标。然而,正如GFLoss所指出的那樣,直接回歸坐标等同于拟合狄拉克增量分布,它沒有考慮資料集中的模糊性和不确定性。這種表示方式不靈活,對目标跟蹤中的遮擋和雜亂背景等挑戰也不夠穩健。
為了提高box估計的品質,通過估計box角點的機率分布,設計了一種新的預測頭。如圖3所示,首先從編碼器的輸出序列中提取搜尋區域特征,然後計算搜尋區域特征與解碼器輸出嵌入的相似度。最後特征序列會reshape成3維,通過L層Conv-BN-ReLU的全卷積網絡輸出兩個機率圖,一個機率圖為bounding box左上角的坐标,一個機率圖為bounding box右下角的坐标,跟DETR一樣,這裡不多細講。
論文提出的時空跟蹤架構。粉色突出顯示了與純空間架構的差別。
與僅使用第一幀和目前幀的基線方法不同,時空方法引入了從中間幀采樣的動态更新模闆作為附加輸入(論文的唯一貢獻),如圖所示。除了初始模闆的空間資訊外,動态模闆還可以捕捉目标外觀随時間的變化,提供額外的時間資訊。三元組的特征圖被扁平化和拼接,然後發送到編碼器。該編碼器通過在空間和時間次元上對所有元素之間的全局關系模組化來提取可區分的時空特征。
在跟蹤過程中,有些情況下不應更新動态模闆。例如,當目标被完全遮擋或移出視線時,或者當跟蹤器漂移時,裁剪的模闆是不可靠的。為簡單起見,論文認為隻要搜尋區域包含目标,就可以更新動态模闆。為了自動确定目前狀态是否可靠,論文添加了一個簡單的分數預測頭,它是一個三層感覺器,然後是Sigmoid激活。如果得分高于門檻值τ,則認為目前狀态可靠。
正如最近的工作所指出的那樣,定位和分類的聯合學習可能會導緻這兩個任務的次優解,這有助于将定位和分類解耦。是以,論文将訓練過程分為兩個階段,将定位作為首要任務,将分類作為次要任務。
具體地說,在第一階段,除了分數頭外,整個網絡都進行了端到端的訓練,隻使用與定位相關的損失。在這個階段,確定所有的搜尋圖像都包含目标對象,并讓模型學習定位能力。在第二階段,僅利用定義為如下的二進制交叉熵損失來優化分數頭
并且當機所有其他參數以避免影響定位能力。這樣,最終的模型在經過兩個階段的訓練後,既學習了定位能力,又學習了分類能力。
在推理過程中,在第一幀中初始化兩個模闆和對應的特征。然後,裁剪搜尋區域并将其送入網絡,生成一個邊界框和置信度分數。僅當達到更新間隔并且置信度分數高于門檻值τ時,才更新動态模闆。為了提高效率,論文将更新間隔設定為Tu 幀。新的模闆被從原始圖像中裁剪出來,然後饋送到主幹中進行特征提取。
與以前的長期跟蹤器相比,提出的方法的架構要簡單得多。具體地說,以前的方法通常由多個元件組成,例如基本跟蹤器、目标驗證子產品和全局檢測器。相比之下,提出的方法隻有一個以端到端方式學習的網絡。大量的實驗表明,提出的方法在短期和長期跟蹤基準上都建立了新的SOTA性能。
例如,論文的時空transformer跟蹤器在GOT-10K和LaSOT上分别比Siam R-CNN高3.9%(AO score)和2.3%(Success)。此外,論文的跟蹤器可以實時運作,在Tesla V100圖形處理器上比Siam R-CNN(30V.S.5fps)快6倍,如圖所示
與LaSOT上SOTA的比較。将Success性能與Frame-PerSecond(Fps)跟蹤速度進行了可視化比較。
在多個資料集上與其它SOTA方法的比較
速度、計算量和參數
歡迎關注公衆号 CV技術指南 ,專注于計算機視覺的技術總結、最新技術跟蹤、經典論文解讀。
在公衆号中回複關鍵字 “入門指南“可擷取計算機視覺入門所有必備資料。
論文的科學寫作與哲學
計算機視覺中的傳統特征提取方法總結
ICCV2021 | TOOD:任務對齊的單階段目标檢測
CVPR2020 | D3S: 判别式單鏡頭分割跟蹤器
Pytorch 資料流中常見Trick總結
計算機視覺中的transformer模型創新思路總結
PNNX: PyTorch 神經網絡交換格式
CV算法工程師的一年工作經驗與感悟
彙總 | 國内外經典開源資料集 | Softmax 函數和它的誤解
TorchShard 簡介 | Pytorch Lightning Flash 簡介
資源分享 | 使用 FiftyOne 加快您的論文寫作速度
ICCV2021 | 漸進采樣式Vision Transformer
MobileVIT:輕量級視覺Transformer+移動端部署
ICCV2021 | SOTR:使用transformer分割物體
ICCV2021 | PnP-DETR:用Transformer進行高效的視覺分析
ICCV2021 | Vision Transformer中相對位置編碼的反思與改進
ICCV2021 | MicroNet:以極低的 FLOPs 改進圖像識别
ICCV2021 | 重新思考視覺transformers的空間次元
CVPR2021 | TransCenter: transformer用于多目标跟蹤算法
CVPR2021 | 開放世界的目标檢測
CVPR2021 | TimeSformer-視訊了解的時空注意模型
CVPR2021 | Transformer用于End-to-End視訊執行個體分割
2021-視訊監控中的多目标跟蹤綜述
全面了解目标檢測中的anchor | 執行個體分割綜述總結綜合整理版
單階段執行個體分割綜述 | 姿态估計綜述 | 語義分割綜述
目标檢測中回歸損失函數總結 | 小目标檢測常用方法總結
視訊了解綜述:動作識别、時序動作定位、視訊Embedding
卷積神經網絡壓縮方法總結
視訊目标檢測與圖像目标檢測的差別