?

基于孿生網絡的單目標跟蹤算法綜述

2023-03-24 13:24王夢亭楊文忠武雍智
計算機應用 2023年3期
關鍵詞:模板特征目標

王夢亭,楊文忠,武雍智

(新疆大學 信息科學與工程學院,烏魯木齊 830046)

0 引言

目標跟蹤源于計算機視覺,以圖像、視頻數據為基礎,融合了圖像處理、模式識別、人工智能、自動控制等多個領域,在安防監控[1-3]、智能交通[4]、自動駕駛[5]、人機交互[6]、自主機器人[7]、運動[8]、海洋探索[9]等領域廣泛應用。視覺目標跟蹤按照跟蹤物體的數量分為單目標跟蹤和多目標跟蹤,本文主要介紹單目標跟蹤。單目標跟蹤指給定第一幀用邊界框標記的感興趣目標后,在視頻的后續幀中自動給出目標的位置和形狀,如圖1 所示。在標注感興趣行人(矩形框內的人)后,跟蹤算法逐幀地找出監控視頻下該行人的位置。在給定邊界框的情況下,跟蹤算法需要面對光照變化、快速運動、遮擋、目標形變、背景干擾、尺度變化等挑戰,而且隨著時間跨度的增長,這些挑戰會進一步放大,因此開發一種高精度、魯棒性和實時性的跟蹤算法充滿挑戰性。為了應對這些挑戰,研究者們已經提出了許多優秀的目標跟蹤算法。

圖1 單目標跟蹤示意圖Fig.1 Schematic diagram of single target tracking

目前的目標跟蹤算法根據工作方式分為基于相關濾波和基于深度學習的跟蹤算法?;谙嚓P濾波的跟蹤算法可進一步分為傳統的相關濾波算法和結合深度特征的相關濾波算法[10];基于深度學習的跟蹤算法可進一步分為基于孿生網絡的算法和其他算法。表1 列出了不同類型的經典算法使用的特征和它在OTB2015 數據集上的成功率圖中的曲線下面積(Area Under Curve,AUC)及幀率??梢钥闯?,KCF(Kernelized Correlation Filters)[11]和FDSST(Fast Discriminative Scale Space Tracker)[12]等傳統相關濾波算法使用手工設計的特征(灰度、顏色(Clolor Names,CN)、方向梯度直方圖(Histogram of Oriented Gradient,HOG)等)進行目標描述,特點是速度快,可以在中央處理器(Central Processing Unit,CPU)上實時運行,但精度一般。相較于手工提取的特征,卷積神經網絡(Convolutional Neural Network,CNN)提取的特征更具魯棒性,包含更多的語義信息。DeepSRDCF(Deep Spatially Regularized Discriminative Correlation Filters)[13]和ECO(Efficient Convolution Operators for tracking)[14]等結合深度特征的相關濾波算法使用在圖像分類數據集中預先訓練好的CNN 的特征,精度大幅提高,但因提取特征耗費了大量時間,在圖形處理器(Graphics Processing Unit,GPU)上實時性較差。隨著深度學習的進一步發展和大型跟蹤數據集的建立,出現了許多基于深度學習的跟蹤算法。MDNet(Multi-Domain Network)[15]等其他深度跟蹤算法性能雖好,但需要在線使用隨機梯度下降以適應網絡的權值,嚴重影響了系統的運行速度。SiamFC(Fully Convolutional Siamese network)[16]和SiamRPN(Siamese Region Proposal Network)[17]等基于孿生網絡的跟蹤算法因特殊的網絡結構,在精度和速度之間取得了很好的平衡,受到研究者的廣泛關注。本文將詳細介紹基于孿生網絡的跟蹤算法,并根據現有的不足討論該研究方向的發展趨勢。

表1 不同類型跟蹤算法比較Tab.1 Comparison of different types of tracking algorithms

1 孿生網絡的結構和應用

孿生網絡結構如圖2 所示,由雙網絡組成,這兩個網絡的輸入不同,但結構一般相同,并且參數共享,即參數一致。孿生網絡結構的主要思想是找到一個可以將輸入映射到目標空間的函數,使目標空間中的簡單距離近似于輸入空間的“語義”距離。更準確地說該結構試圖找到一組參數,使相似度度量在屬于同一類別較小,在屬于不同類別時較大。孿生網絡結構另一個特點是可以自然地增加訓練數據量,即每次輸入一對圖像。這樣就可以充分利用有限的數據集來訓練網絡,這一點在目標跟蹤領域非常重要,因為和目標檢測相比,跟蹤領域的訓練數據集較少。

圖2 孿生網絡結構示意圖Fig.2 Schematic diagram of Siamese network structure

孿生網絡首先應用在簽名驗證領域,1993 年,Bromley等[18]提出用于簽名驗證的雙流孿生架構。之后,孿生網絡架構被用于人臉驗證[19-20]、地對空圖像匹配[21]、局部塊描述符學習[22-23]、立體匹配[24]與一次性字符識別[25]等領域。隨著SiamFC 的出現,研究者將孿生網絡引入目標跟蹤領域,開創了深度學習目標跟蹤方法的一個范式,后續出現了大量的相關改進算法。大多數目標跟蹤算法都可以表述為一個類孿生架構,它的主要結構可以概括為三個部分:用于模板和搜索區域特征提取的孿生網絡、用于嵌入兩個孿生分支信息的相似度匹配模塊和用于從相似度圖中提取特征的跟蹤頭。

2 基于孿生網絡的跟蹤算法

Tao等[26]提出的SINT(Siamese INstance search Tracker)算法是基于孿生網絡的跟蹤算法的開山之作。該算法訓練一個孿生網絡來識別與初始目標外觀匹配的候選圖像位置,將目標跟蹤問題轉化為匹配問題。此外,該算法結合光流和邊界框回歸以改進結果,但光流的計算成本很高,系統僅以2 frame/s 的幀率運行,遠未達到實時性。同年Bertinetto等[16]提出SiamFC,在初始離線階段訓練一個全卷積網絡以解決更一般的相似性學習問題,然后在推理期間對學習到的匹配函數進行簡單的在線評估,該方法以遠超過實時的速度實現了極具競爭力的性能。相較于SINT,SiamFC 由于輕量化的結構和性能速度的平衡,受到了更多關注。SiamFC 的結構如圖3 所示,有兩個分支:一個用于模板z(第一幀給定的邊界框),另一個用于搜索區域x(當前幀的一個大搜索區域)。兩個分支共享同一個參數為θ的網絡φ,并產生兩個特征圖然后,使用互相關運算f組合特征圖并生成單通道響應圖,響應圖中的每個元素表示x中對應的子區域與模板z之間的相似性,那么目標的中心很可能位于響應最高的位置。

圖3 SiamFC架構Fig.3 SiamFC architecture

其中:φ(·)是全卷積嵌入函數;*表示互相關運算;b∈R 表示在每個位置的偏置項。

之后,很多基于孿生網絡的跟蹤算法被提出,根據它們的架構組成可分為改進特征提取的網絡、改進相似度匹配模塊和改進跟蹤頭。

2.1 改進特征提取的網絡

2.1.1 增加模塊或用更深層網絡

SiamFC 之后,很多研究者改進了主干網絡。CFNe(tendto-end represention learning for Correlation Filter in deep neural Network)[27]將相關濾波器解釋為一個可微分的神經網絡層,整合到SiamFC 的模板分支上,徹底將相關濾波和CNN 結合起來。SA-Siam(Semantic and Appearance features Siamese network)[28]增加語義分支,分別訓練語義分支和外觀分支,但在推理時進行組合,以相互補充,提升跟蹤算法的判別力。RASNe(tResidual Attentional Siamese Network)[29]使用殘差注意力、通道注意力和通用注意力對SiamFC 特征的空間和通道進行加權,分解特征提取和判別性分析的耦合,以提升判別能力。StructSiam(Structured Siamese network for real-time visual tracking)[30]添加局部模式檢測模塊,用判別模式識別目標,并且為了加強局部模式之間的結構關系,使用消息傳遞模塊考慮來自相關模式的上下文信息,從而進一步細化預測的局部模式。SPM-Tracker(Series-Parallel Matching for realtime visual object Tracking)[31]和C-RPN(siamese Cascaded RPN)[32]分別采用輕量關系網絡[33]和堆疊RPN 作為細化模塊,進一步提高跟蹤算法的判別能力和精度。

SiamFC、SiamRPN 等早期孿生跟蹤算法使用的骨干網絡相對較淺(如AlexNet[34]),不能充分利用現代深度神經網絡的能力。SiamRPN++[35]和SiamDW(Deeper and Wider Siamese network)[36]從不同角度解決由于填充破壞嚴格的平移不變性而導致的不能使用深層網絡的問題,SiamRPN++從數據增強和特征融合的方向來解決這個問題,而SiamDW 從網絡架構設計方向解決該問題,它們都成功地將現代深層網絡(如ResNet[37]、ResNeXt[38]和Inception[39])引入了基于孿生網絡的跟蹤算法。

2.1.2 設計特定網絡

現有的基于深度學習的跟蹤算法使用具有平移不變性的CNN,能有效解決平移問題,但不適合解決旋轉和尺度問題。Gupta等[40]為了解決平面內旋轉問題,提出旋轉等變孿生網絡(Rotation-Equivariant Siamese Network,RE-SiamNet),該網絡由可控濾波器組成的組等變卷積層構建,可以適應旋轉變化,而不需要額外的參數成本。Sosnovik等[41]為解決尺度變化問題,提出了具有尺度等價不變性的模塊替換傳統的卷積層、池化層和互相關運算,構建了一個內置尺度等變屬性的卷積網絡,能準確捕獲目標的尺度變化。

2.1.3 優化網絡

Huang等[42]發現在跟蹤場景中大部分都是簡單場景,較難的部分在整個跟蹤視頻中僅占一小部分,為此提出了一個自適應的深度特征流的跟蹤算法EAST(EArly-Stopping Tracker),用強化學習的思想選擇可以判斷跟蹤結果的特征層,避免了繼續的前向操作從而大幅節省了時間,在GPU 上的幀率達到了158.9 frame/s。Yan等[43]認識到現有的優秀的跟蹤算法模型越來越大、計算成本越來越高,這限制了它們在資源受限的應用程序中的部署,提出了LightTrack(finding Lightweight neural networks for object Tracking),使用神經架構搜索(Neural Architecture Search,NAS)設計更輕量級和高效的目標跟蹤算法,并引入了有效的搜索空間,縮小了目標跟蹤任務中學術模型和工業部署之間的差距。

2.2 改進相似度匹配模塊

2.2.1 改進互相關

在基于孿生網絡的跟蹤算法中,相關操作是嵌入兩個分支信息的核心操作。如圖4(a)所示,SiamFC 將模板特征作為核和搜索幀特征進行互相關,即一個卷積操作,模板幀特征在搜索幀特征上滑動,逐通道之間互相作內積,最后輸出單通道數響應圖??紤]到每一個位置對前景的貢獻不同,RASNet 在注意力機制的基礎上提出了一種加權互相關運算,有選擇性地利用特征圖的各個位置。在SiamRPN 中引入錨(anchor),通過多個獨立模板層對一個檢測層的卷積操作以獲得多通道獨立的張量,而這導致了RPN 層的參數量遠大于特征提取層,因此SiamRPN++設計了一種輕量化的深度互相關運算用于嵌入模板和搜索區域分支的信息,如圖4(b)所示,使用兩個分支的特征圖執行逐通道的相關操作。借鑒文獻[44]的思想,Alpha-Refine(AR)[45]采用逐像素相關,如圖4(c)所示,模板特征的HzWz個1×1×C特征與搜索幀特征進行卷積,最后生成通道數為HzWz、大小為Hx×Wx的響應圖??紤]到傳統的互相關操作帶來了大量的背景信息,PGNet(Pixel to Global matching Network)[46]利用一種像素-全局匹配的方法抑制背景的干擾,相當于經過了兩次的逐像素相關??紤]到相關操作為啟發式設計,嚴重依賴人工經驗,并且單一的匹配方法無法適應各種復雜的跟蹤場景,AutoMatch(Automatic Matching network design for visual tracking)[47]中引入了6 種新的匹配算子來替代互相關。通過分析這些算子在不同跟蹤挑戰場景下的適應性,結合6 種算子進行互補,并借鑒NAS 思想提出二進制信道操作(Binary Channel Manipulation,BCM)來搜索這些操作符的最優組合。

圖4 相關操作Fig.4 Correlation operations

2.2.2 設計新信息嵌入模塊

認識到因為提取以目標中點為中心的固定大小的區域的特征會導致提取到部分背景信息或丟失部分目標信息,因此SiamGAT(Siamese Graph Attention Network)[48]中提出了一種目標感知區域選擇機制,并應用圖注意機制將目標信息從模板特征傳播到搜索特征,以適應不同對象的大小和寬高比變化。Zhou等[49]設計了一種細粒度的顯著性挖掘機制,以捕獲目標的局部顯著性,這些顯著性在搜索圖像中具有鑒別性和易于定位的特點。然后,建模這些顯著性之間的相互作用,并關聯捕獲的顯著性,學習目標樣本與搜索圖像之間的全局相關性,從而準確地反映搜索圖像中的目標狀態??紤]到相關操作無法充分受益于大規模的離線學習,并且容易被干擾物影響,對目標邊界的識別能力較弱,Han等[50]提出了一個可學習的非對稱卷積模塊(Asymmetric Convolution Module,ACM),該模塊學習如何在離線訓練期間更好地從大規模數據中捕獲語義信息,就可以輕松集成到現有的基于深度互相關或互相關的孿生跟蹤算法中。Chen等[51]認為相關操作容易丟失語義信息并陷入局部最優,提出一種基于Transformer 的特征融合網絡,利用注意機制將模板和搜索區域特征有效地結合起來。設計的特征融合網絡包括一個自我注意的自我上下文增強模塊和一個交叉注意的跨特征增強模塊。這種融合機制有效地融合了模板特征和感興趣區域(Region Of Interest,ROI)特征,產生了更多的語義特征映射。

2.3 改進跟蹤頭

2.3.1 目標狀態估計

在真實的視頻中,目標的比例和縱橫比也會隨目標或攝像機的移動和目標外觀的變化而變化。準確估計目標的尺度和長寬比是視覺跟蹤領域的難題。然而,早期許多跟蹤算法[16,28]忽略了這一問題,僅依賴于多尺度搜索來估計目標的大小。多尺度搜索由于固定長寬比的預測和大量的圖像金字塔運算,既不夠精確又耗時。

SiamRPN 引入了目標檢測中的區域候選網絡(Region Proposal Network,RPN)[52],用一組預定義的錨框來估計目標邊界框。如圖5 所示,將原始的相似度計算問題轉化為分類和回歸問題,分類分支用于錨的背景-前景分類,回歸分支用于候選的細化,在提高精度的同時也提升了速度。

圖5 SiamRPN架構Fig.5 SiamRPN architecture

SiamRPN 系列的跟蹤算法雖然可以處理尺度和長寬比的變化,但需要仔細設計和確定錨框的參數。設計參數通常需要啟發式調整,并涉及許多技巧。無錨方法結構簡單、性能優越,近年來在目標檢測任務中越來越流行。研究者也開始將它應用于跟蹤領域,提出了SiamFC++(Fully Convolutional Siamese tracker++)[53]、SiamCAR(Siamese based Classification And Regression network)[54]、SiamBAN(Siamese Box Adaptive Network)[55]和Ocean(Object-aware anchor-free networks)[56]等無錨跟蹤算法,實現了最先進的跟蹤性能。如圖6 所示,將跟蹤任務作為聯合分類和回歸問題處理,采用一個或多個頭部直接預測客觀性,并以逐像素預測的方式從響應圖中回歸邊界框。

圖6 SiamCAR架構Fig.6 SiamCAR architecture

還有一些無錨算法如CGACD(Correlation-Guided Attentional Corner Detection-based tracker)[57]在兩個階段進行相關引導的注意角檢測。首先,利用高效的孿生網絡區分開目標與背景,獲得感興趣區域;其次,像素方向相關引導的空間注意模塊和通道方向相關引導的通道注意模塊利用目標模板與感興趣區域之間的關系來突出角點區域,對增強感興趣區域的特征進行角點檢測。相關引導的注意模塊提高了角點檢測的準確性,實現了精確的邊界框估計。受文獻[58]啟發,RPT(Representative Points based Tracker)[59]提出將跟蹤目標表示為一系列特征點,通過監督學習目標區域內的語義關鍵點與極值點,實現更精細的目標狀態估計。

2.3.2 基于分割生成掩膜(mask)

在視覺目標跟蹤任務中,為了方便真值標注與特征提取,目標狀態通常用與坐標軸垂直的矩形框表示,但矩形框是對目標區域的一種粗略表示,引入了多余的背景,不能很好地呈現跟蹤結果。從2014 年開始,VOT(Visual Object Tracking)使用旋轉邊界框作為更準確的目標位置近似值。2020 年開始使用分割掩碼標注數據集。SiamMask[60]使用YouTube-VOS[61]訓練額外分支以生成二進制分割掩碼,使跟蹤結果更加準確。AR[44]采用角點預測頭和輔助掩模頭作為核心組件,該模塊獨立訓練,可以以即插即用的方式直接應用于任何現有的跟蹤算法(如:SiamRPN,DiMP-50(learning Discriminative Model Prediction for tracking)[62]),實驗結果表明基礎跟蹤算法的性能得到顯著提高。

2.3.3 在線模型更新

早期的孿生跟蹤算法通常不使用模型更新策略。目標模板在第一幀中初始化,然后在視頻的剩余部分保持固定。在許多常規跟蹤場景中運行時,具有良好的性能和實時跟蹤速度。然而,當目標出現劇烈的外觀變化、非剛性變形和部分遮擋時,目標模板會嚴重漂移,并且無法從跟蹤失敗中恢復。在這種情況下,使模型適應當前目標的外觀很重要。

1)簡單線性更新策略:許多跟蹤算法,包括GOTURN(Generic Object Tracking Using Regression Network)[63]、SINT[26]和SiamRPN[17]等,為適應目標外觀變化,假設在視頻的所有幀中,以及在不同的視頻中,目標外觀變化的速率恒定。但實踐中對目標模板的更新需求因不同的跟蹤情況有很大的不同,這取決于運動、模糊或背景混亂等外部因素的復雜組合。因此,簡單的線性更新往往不足以應付不斷變化的更新需求,也不足以概括所有可能遇到的情況。此外,線性更新在所有空間維度上也是恒定的,因此不允許局部更新。這在部分遮擋的情況下尤其具有破壞性,因為只有模板的某一部分需要更新。

2)記憶網絡:RFL(Recurrent Filter Learning tracking)[64]使用長短時記憶網絡(Long Short-Term Memory network,LSTM)來更新每一幀目標外觀模型。MemTrack(learning dynamic Memory networks for object Tracking)[65]利用LSTM 結構挖掘歷史幀的模板信息以更新當前幀的模板。STMTrack(Space-Time Memory networks Tracker)[66]在時空記憶網絡中,通過查詢幀自適應地檢索存儲在多個記憶幀中的目標信息,使跟蹤算法對目標變化具有較強的自適應能力。

3)模板更新策略:孿生跟蹤算法設計各種策略在線更新模板,以提高基于孿生的跟蹤算法的目標識別能力。DSiam(Dynamic Siamese network)[67]中提出了一種具有快速轉換學習模型的動態孿生網絡,能實現有效的模板更新和雜波背景抑制。DaSiamRPN(Distractor-aware Siamese Region Proposal Network)[68]在SiamRPN 的基礎上設計了一個干擾感知模塊,實現對語義干擾的增量學習,獲得了更多的識別特征。UpdateNet[69]訓練了一個獨立的卷積網絡并利用歷史模板在下一幀預測一個最優的模板特征。GradNe(tGradient-guided Network)[70]通過梯度信息更新模板,一定程度上可以抑制模板中的背景信息。MLT(Meta Learning Tracking)[71]引入元學習網絡學習特定目標的特征,與傳統孿生網絡提取的通用特征融合后,得到自適應的目標特征,再進行后續的相似性計算。GCT(Graph Convolutional Tracking)[72]采用時空圖卷積網絡進行目標建模。Wang等[73]考慮到在視頻目標跟蹤中,連續幀之間存在豐富的時間上下文,而這些在現有跟蹤算法中被嚴重忽視,因此嘗試連接單個視頻幀,并通過一個Transformer 架構來探索它們之間的時間上下文,以實現魯棒性目標跟蹤。該架構采用類孿生結構,將編碼器和解碼器分成兩個并行分支:編碼器通過基于注意的特征增強來提升目標模板,有利于高質量的跟蹤模型生成;解碼器將跟蹤線索從以前的模板傳遞到當前幀,平滑外觀變化并糾正上下文噪聲,同時轉換空間注意力,突出潛在的目標位置。這些多重目標表示和空間線索使目標搜索更加容易。最后,在解碼后的搜索塊中跟蹤目標。Yan等[74]提出了一種新的基于編碼器-解碼器的用于視覺跟蹤的時空結構STARK(Spatio-Temporal trAnsfoRmer network for visual tracKing)。該架構包含三個關鍵組件:編碼器、解碼器和預測頭。編碼器接受初始目標對象、當前圖像和動態更新的模板的輸入。編碼器中的自注意模塊通過特征依賴關系學習輸入之間的關系。由于模板圖像在整個視頻序列中不斷更新,編碼器可以同時捕獲目標的空間和時間信息,在空間和時間維度上捕捉長期依賴關系。解碼器學習一個查詢嵌入以預測目標對象的空間位置?;诮堑念A測頭用于估計當前幀中目標對象的邊界框;同時,通過學習得分頭來控制動態模板圖像的更新。

4)在線更新網絡參數:Ocean[56]中設計了一個在線更新模塊,采用快速共軛梯度算法在推理過程中在線訓練分支,使它能夠在推斷期間捕獲對象的外觀變化。RPT[58]的分類子網在線訓練在干擾物存在時能獲得高分辨能力,通過聚合多個卷積層提供更細粒度的定位和更詳細的目標結構信息。

5)深度判別相關濾波器:相關濾波器是一種訓練線性模板以區分圖像以及平移的算法。它非常適用于目標跟蹤,因為它在傅里葉域中的公式提供了快速的解決方案,使檢測器能夠每幀預先重新訓練一次。CFNet[27]將相關濾波器解釋為將孿生跟蹤框架中的可微分層進行端到端的訓練,徹底結合相關濾波和CNN。之后研究者采用梯度優化的方法來端到端地優化基于相關濾波器算法的深度框架。CREST(Convolutional RESidual learning scheme for visual Tracking)[75]使用隨機梯度下降(Stochastic Gradient Descent,SGD)法優化正則化最小二乘損失(即嶺回歸),并學習一個類似于相關濾波器的、具備前景背景區分能力的卷積核。RTINet(Representation and Truncated Inference Network)[76]結合了CNN 與高級相關濾波器跟蹤算法。FlowTrack(Flow correlation Tracking)[77]利用連續幀中豐富的光流信息來提高特征表示和跟蹤精度,在光流信息的引導下,將前一幀轉化為指定幀,并進行聚合,以進行后續相關濾波跟蹤。針對自適應聚集,FlowTrack 中引入了一種新的時空注意機制,在空間注意中,利用空間相似性對特征圖進行平面位置加權,然后將特征圖的通道重新加權以考慮時間注意力。ATOM(Accurate Tracking by Overlap Maximization)[78]采用共軛梯度策略結合深度學習框架進行快速優化。DiMP[62]進一步將該思想擴展到了端到端的學習中,并通過神經網絡學習跟蹤模型所需的各種參數。PrDiMP(Probabilistic DiMP)[79]引入了概率回歸,進一步改進了DiMP 跟蹤算法。ROAM(Recurrently Optimizing trAcking Model)[80]使用可調大小的卷積濾波器來適應目標的形狀變化,使用元學習更新跟蹤模型,對于使用邊界框回歸代替多尺度搜索估計目標框的模型命名為ROAM++。

2.4 其他

2.4.1 訓練樣本增強

早期的孿生跟蹤算法(尤其是SiamFC 和SiamRPN)在訓練期間僅從同一視頻中采樣訓練圖像對,這種抽樣策略不關注具有語義相似的干擾對象。DaSiamRPN[68]引入了難負樣本挖掘技術,通過在訓練過程中包含更多語義負對來解決數據不平衡的問題。DaSiamRPN 構建的負對由相同和不同類別的標記目標組成,這種技術更多地關注細粒度的表示以幫助DaSiamRPN 克服漂移。同樣,Siam R-CNN[81]提出了另一種使用嵌入網絡和最近鄰近似的難負樣本挖掘技術。對于每個真值目標邊界框,使用預訓練網絡提取嵌入向量以獲得相似的目標外觀,然后使用索引結構估計近似最近鄰,并使用它們來估計嵌入空間中目標對象的最近鄰。SINT++[82]在SINT 基礎上引入正樣本生成網絡(Positive Samples Generation Network,PSGN)和難正樣本變換網絡(Hard Positive Transformation Network,HPTN)。PSGN 通過遍歷構造的目標流形來采樣大量不同的訓練數據,以提升正樣本的多樣性。HPTN 生成較難的正樣本用于算法的識別,使跟蹤算法對遮擋具有更強的魯棒性。

2.4.2 無監督跟蹤

現有的深度跟蹤算法需要大量標注數據進行訓練,每一幀都需要進行標注,這是一件工程量很大的工作。UDT(Unsupervised Deep Tracking)[83]嘗試在大規模無標簽視頻上以無監督的方式訓練;同時,UDT 還使用一個多幀驗證方法(multiple-frame validation)和代價敏感的損失函數(costsensitive loss)去加強這個無監督學習的過程。無監督框架顯示利用無標記或弱標記數據進一步提高跟蹤精度的潛力。

還有一些研究者從其他方面設計跟蹤算法。GOTURN[63]串聯成對的連續幀,并通過回歸學習的方式學習目標跟蹤狀態。文獻[84]將三元組損失引入孿生跟蹤框架,考慮正負樣本之間的關系,使跟蹤算法更加具有判別力。

3 基準數據集與評估指標

視覺跟蹤基準為單目標跟蹤算法提供公平和標準化的評估。本章介紹最常用的視覺跟蹤基準數據集和評估指標。

3.1 數據集

現有的視覺跟蹤數據集根據是否包含訓練數據可以分為兩大類。如表2 所示,早期的數據集只包括測試視頻,之后為了訓練深度跟蹤算法,提出了幾種大規模的跟蹤數據集,可以對跟蹤算法進行訓練和測試。目標在跟蹤過程會受到各種干擾因素的影響,為了全面評估跟蹤算法在各種挑戰下的準確性和魯棒性,數據集中每個視頻都標注了一個或多個屬性,包括尺度變化(Scale Variation,SV)、出視野(Out-of-View,OV)、形 變(DEFormation,DEF)、低分辨 率(Low Resolution,LR)、光照變化(Illumination Variation,IV)、平面外旋轉(Out-of-Plane Rotation,OPR)、遮擋(OCClusion,OCC)、背景干擾(Background Clutter,BC)、快速運動(Fast Motion,FM)、平面內旋轉(In-Plane Rotation,IPR)、運動模糊(Motion Blur,MB)、部分遮擋(Partial Occlusion,POC)、鏡頭運動(Camera Motion,CM)、長寬比變化(Aspect Ratio Change,ARC)、完全遮擋(Full OCclusion,FOC)、視角變化(Viewpoint Change,VC)、相似物體(Similar OBject,SOB)、目標旋轉(ROTation,ROT)、運動變化(MOtion Change,MOC)、目標顏色變化(Object COlor change,OCO)、場景復雜度(Scene COmplexity,SCO)、絕對運動(Absolute Motion,AM)、對抗樣本(Adversarial Sample,AS)、熱交叉(Thermal Crossover,TC)、模態切換(Modality Switch,MS)等。表2 也給出了每個數據集的描述。

表2 常用跟蹤數據集的詳細信息Tab.2 Details of commonly used tracking datasets

3.1.1 早期數據集

早期數據集只有測試集,旨在對跟蹤算法進行一致性的評估及比較。

OTB(Object Tracking Benchmark)是最早的視覺跟蹤公開數據集,包括OTB2013[85]和OTB2015[86],用于解決幾個視頻序列因為初始條件或參數不一致導致跟蹤結果受影響的問題,旨在進行無偏的性能比較。OTB2015 在OTB2013 的基礎上增加到100 個序列(Jogging 因標注對象不同,可以看作兩個視頻序列)。常用的還有OTB50(TB50)和OTB100(TB100)。OTB50 是Visual Tracker Benchmark 網頁的前50 個視頻序列(SKating2 因標注對象不同,可以看作兩個視頻序列),OTB100 則與OTB2015 一樣。由于OTB50 中一些目標物體相似或不太具挑戰性,OTB2013 從OTB50 和The rest of TB-100 Sequences 中,選取了51 個困難的和有代表性的物體進行深入分析。

之后,為了比較視覺跟蹤算法在顏色序列上的性能,Tcolor-128(Temple Color 128)[87]收集了一組128 個完全注釋的彩色視頻序列,其中78 個不同于OTB 數據集。為了探索高幀率的影響,NfS(Need for Speed)[88]收集了100 段高幀率(240 frame/s)的視頻,還通過間隔8 幀采樣和運動模糊渲染生成了正常幀率(30 frame/s)的視頻。UAV123(Unmanned Aerial Vehicles)[89]包含從低空航空視角捕獲的123 個完全標注的高清視頻序列,因無人機的運動相機視角在不斷改變,UAV123 中相較于初始幀,邊界框大小和縱橫比的變化非常顯著,導致利用該數據集進行跟蹤具有挑戰性。此外,相機被固定在無人機上,可以隨著物體移動,能夠產生較長的跟蹤序列,因此切割出了一個長期無人機跟蹤數據集UAV20L。

VOT(Visual Object Tracking)數據集來自每年一次的VOT 比賽,從2013 年至今已有9 個(2013—2021 年),旨在評測復雜場景下單目標跟蹤算法的性能。下面主要介紹近年來常用的VOT2018 和VOT2020。從VOT2018[90]開始,增加了長期目標跟蹤挑戰,記為VOT-LT,對短暫離開視野和遮擋情況下算法的性能進行評測。VOT-ST2020[91]中,數據集的標注完全放棄了邊界框,目標位置由精確的每幀分割掩碼編碼。

3.1.2 大規模數據集

隨著深度跟蹤算法的出現,提出了幾種大規模跟蹤數據集,這些數據集包括訓練集和測試集,旨在對跟蹤算法進行訓練和評估。

TrackingNet[92]是目標跟蹤領域的第一個大規模數據集,是視頻目標檢測基準YouTube-BoundingBoxes(YT-BB)的子集(選擇31K 序列),測試集包含511 個沒有公開真實標注框的視頻。它涵蓋了不同的對象類和場景,要求跟蹤算法具有判別和生成能力,有效解決了基于深度學習的數據需求型跟蹤算法缺乏專用的大規模數據集的問題。結果通過在線評估服務器獲得。

GOT-10K(Generic Object Tracking)[93]是由中國科學院發布的建立在WordNet[94]結構主干上的目標跟蹤數據集,同時也是目標跟蹤領域第一個使用WordNet 的語義層次指導類填充的數據集。它的主要特點是測試集與訓練集在目標類上沒有重疊,目的是評估視覺跟蹤算法的泛化性。因此按照GOT-10K 的測試協議,只使用GOT-10K 訓練集訓練跟蹤算法。與TrackingNet 一樣,測試集的真值標注框被保留,跟蹤結果必須通過評估服務器獲得。

LaSOT(Large-scale Single Object Tracking)[95]是一個大規模、高質量、密集標注的長期跟蹤數據集。為了減小潛在的類別偏差,為每個類別提供相同數量的序列。共包含85 個類,其中70 個類,每類包含20 個視頻序列;另外15 類,每類包含15 個視頻序列。此外,考慮了視覺外觀和自然語言的聯系,不僅標注了邊界框,而且增加了豐富的自然語言描述,以描述目標物體的外觀。

TNL2K[96]致力于按自然語言進行跟蹤,包含663 個字。對于每一個視頻序列,用英語注釋了一個句子。該句子描述第一幀目標物體的空間位置和相對其他物體的位置、屬性和類別。

除上述跟蹤數據集之外,ImageNet DET、ImageNet VID[97]、YT-BB[98]、COCO[99]數據集 也經常 用于訓 練跟蹤算法。

3.2 評價指標

首先介紹兩個最基本的度量指標:中心位置誤差和重疊分數,如圖7 所示。

圖7 度量指標Fig.7 Evaluation metrics

中心位置誤差:人工標注(ground-truth)的邊界框的中心點cgt與跟蹤算法估計的邊界框的中心點ctr之間的距離‖ctr-cgt‖2(以像素為單位)。

重疊率得分(overlap score,os):如式(1)所示,跟蹤算法估計的邊界框btr和人工標注框邊界框bgt的交集與并集之比,其中 |· |表示結果區域的像素數目。

在OTB 基準中將中心位置誤差和重疊率進一步擴展為精確率圖和成功率圖。Tcolor-128、UAV123 等數據集都沿用了OTB 提供的評價指標。

精確率:中心位置誤差小于給定閾值的視頻幀占所有幀的百分比。不同的閾值得到的百分比不一樣,因此可以獲得一條曲線。使用精確率圖中閾值為20 時的值對跟蹤算法進行排名,但該指標無法反映目標物體大小與尺度的變化。

成功率(Success Rate,SR):當某一幀的重疊率大于設定的閾值時,則該幀被視為成功,總的成功的幀占所有幀的百分比即為成功率。重疊率的取值范圍為0~1,因此可以繪制出一條曲線。使用成功率圖的曲線下面積(Area Under Curve,AUC)對跟蹤算法進行排名。SR0.50和SR0.75為閾值為0.5 和0.75 時SR 的值。

正則化的精確度:TrackingNet 為了減小目標尺寸對精確率指標的影響,提出了正則化的精確率指標:

平均重疊率(Average Overlap,AO):所有幀重疊率得分的平均值。

自VOT2015 以來,VOT 基準通過基于重置的方法評估跟蹤算法。當跟蹤算法與真值沒有重疊時,跟蹤算法將在5 幀后重新初始化。主要評價指標是準確率(Accuracy,A)、魯棒性(Robustness,R)和預期 平均重 疊(Expected Average Overlap,EAO)。VOT2020 提出了一種新的基于錨(anchor)的評估協議,對目標跟蹤的評價更加公正。

跟蹤失?。喝斯俗⒛繕宋恢门c預測目標位置的重疊小于0.1 且至少10 幀后未超過0.1 的幀。

準確率:跟蹤失敗前幀的平均重疊,在所有子序列上取平均值。數值越大,準確度越高。

魯棒性:成功跟蹤的子序列幀的百分比,在所有子序列上取平均值。數值越大,穩定性越差。

預期平均重疊:跟蹤準確率和魯棒性的結合。計算方式沒有改變,只是劃分子序列的方式由原來的根據重啟位置劃分變成現在的根據anchor 的位置劃分。

速度:單目標跟蹤的數據集基本都使用25 frame/s 或30 frame/s 的相機混拍,因此當跟蹤算法的速度大于25 frame/s,可認為滿足實時性要求。

4 實驗與結果分析

本文利用OTB Matlab Beachmark 對25 個經典跟蹤算法進行對比,其中:DeepSRDCF[13]屬于結合深度特征的判別式相關濾波跟蹤算法;MDNet[16]屬于深度跟蹤算法;剩余23 個是孿生跟蹤算法。圖8 為25 個算法在OTB2015 上的成功率圖,圖9 為25 個算法在OTB2015 上6 個更常見屬性(IV、SV、BC、LR、DEF、OCC)的成功率圖,使用的原始結果文件從作者官方網站獲得,[ · ]為每種算法取得的最高AUC 值。表3 為23 個基于孿生網絡的跟蹤算法在OTB2015 剩余5 個屬性(FM、MB、OV、IPR、OPR)、LaSOT 和GOT-10K 測試集上的性能結果,結果從原論文或數據集中獲取,此外還列出了每個算法的速度。

圖8 算法在OTB2015數據集上的成功率Fig.8 Success rate of algorithms on OTB2015 dataset

圖9 在OTB2015數據集上各屬性的成功率Fig.9 Success rate of algorithms for each attribute on OTB2015 dataset

表3 基于孿生網絡的跟蹤算法的性能比較Tab.3 Performance comparison of Siamese trackers

從圖8、9 和表3 中可以看出:

1)用可學習的ACM 替換深度互相關的SiamBANACM[50]在OTB2015 數據集上的平均AUC 為0.724 4,取得了最好的跟蹤結果。對于光照變化、平面外旋轉、運動模糊、快速運動以及超出視野挑戰,始終保持著最優的性能。

2)基于時空記憶網絡框架的STMTrack 在OTB2015 數據集上的平均AUC 為0.714 6,取得了次優的結果。它利用與目標相關的歷史信息來適應跟蹤過程中的外觀變化,在尺度變化、平面內旋轉、背景干擾的挑戰下,表現出最優性能。

3)利用細粒度的顯著性挖掘模塊捕獲局部顯著性的SAOT[49],在OTB2015 數據集中面對遮擋、形變挑戰時,性能最好。

4)多尺度估計(SiamFC)、錨 框(SiamRPN)和無錨(SiamBAN、SiamCAR)三種目標狀態估計方法對比,無錨框跟蹤算法通過丟棄多尺度搜索以及預定義候選框策略獲得了更好的性能。

5)最早的孿生跟蹤算法SiamFC 性能低于結合深度特征的相關濾波器跟蹤算法DeepSRDCF 和多域學習的MDNet(一部分訓練集來源于測試集,存在過擬合的可能)。隨著孿生跟蹤算法的發展(SiamRPN++),很快超越了其他跟蹤算法,展現出優越性。

6)使用深層網絡的跟蹤算法SiamRPN++和SiamDW 相較于使用淺層網絡的跟蹤算法(SiamFC、SiamRPN),精確率得到了很大提高。

7)現有孿生跟蹤算法對于光照變化(最高AUC 0.750)、運動模糊(最高AUC 0.744)問題已經取得不錯的結果,而對于遮擋(最高AUC 0.693)、形變(最高AUC 0.696)、超出視野(最高AUC 0.700)挑戰還不能很好處理。

8)Siam R-CNN 采用重檢測設計,在長期跟蹤數據集LaSOT 中取得了優異的結果,但速度遠未滿足實時性要求。ROAM++離線訓練一個遞歸神經優化器,在元學習設置中更新跟蹤模型,速度也未滿足實時性要求。

9)STARK-ST50[74]和TransT[51]兩個基于Transformer 的跟蹤算法在大規模LaSOT 和GOT-10K 測試集中取得了最優和次優的結果,且推理速度超越了實時性要求(25 frame/s)。

10)用端到端學習的深度網絡擴展現有的在線判別框架的跟蹤算法ATOM、DiMP-50、PrDiMP-50[79]和TrDiMP[73]等相較于純粹的孿生跟蹤算法SiamRPN++、SiamBAN、SiamCAR和TrSiam[73]等性能更優,但速度要慢一點。

11)Ocean 在推理過程中在線更新模型參數,跟蹤速度較慢。

5 結語

本文根據基于孿生網絡的跟蹤算法架構的不同改進,介紹了近年來的主要研究,并將23 個代表性孿生跟蹤算法和2個其他算法在OTB100 基準數據集上進行了評估,表明了孿生跟蹤算法在性能方面的優越性。雖然基于孿生網絡的跟蹤算法與其他算法相比具有一定的優勢,但是在實際場景的應用中,仍然難以滿足跟蹤任務對速度和性能的需要,存在著進一步研究和發展的空間。結合文章對各算法的總結分析和實驗部分的對比結果,并且考慮目前視覺領域的研究熱點,基于孿生網絡的目標跟蹤算法未來可以從以下方面考慮:

1)現有目標跟蹤算法大多將視頻幀孤立處理,沒有利用跟蹤任務的時間特征和連續幀之間的時間關系。雖然已有研究利用圖神經網絡、時空正則化、光流等探索時間信息,但并沒有充分挖掘,需要進一步研究。

2)現有跟蹤算法模型尺寸大、計算成本高,阻礙了在無人機、工業機器人和駕駛輔助系統等領域的應用。如何在模型精度和復雜度之間找到一個好的平衡點,以縮小目標跟蹤任務中學術模型和工業部署之間的差距,需要進一步研究。

3)相似度計算對于孿生跟蹤算法至關重要,在該過程中引入特征融合網絡,可以有效地將模板和搜索區域特征結合起來,以提高跟蹤算法的精確度。

4)Transformer 結構本身關注全局信息、能建模長距離依賴關系,可與關注局部信息的CNN 互補。孿生架構結合Transformer 的跟蹤算法雖處于基礎階段,但在各種跟蹤數據集中展現出競爭性甚至更好的性能,未來有巨大的挖掘空間。

5)為了提高現有深度跟蹤算法的泛化能力,需要使用大量的數據來訓練網絡,然而數據集的制作需要花費大量的時間和人力,可考慮借助無監督方式,使用未標記的原始視頻訓練網絡,擺脫對標注數據的嚴重依賴。

6)相較于短時跟蹤,長時跟蹤更接近真實場景,即目標經常消失或長時間被遮擋。孿生跟蹤算法依據視頻中上一幀圖片目標的中心位置為中心,在一定像素范圍內進行匹配查找。但是當視頻中目標被長時間遮擋后,跟蹤算法無法確定目標的位置,因此設計一個在長期任務中能穩定跟蹤的算法具有重要研究價值。

7)在基于分割的跟蹤方法中,一般根據分割結果推導目標的外接矩形框,兩者之間缺乏協同學習的機制。實際上分割和跟蹤結果之間存在一定的空間關系,利用這種空間關系作為約束也許可以提高跟蹤網絡的準確率。

猜你喜歡
模板特征目標
鋁模板在高層建筑施工中的應用
鋁模板在高層建筑施工中的應用
如何表達“特征”
不忠誠的四個特征
抓住特征巧觀察
鋁模板在高層建筑施工中的應用
城市綜改 可推廣的模板較少
線性代數的應用特征
中學英語之友·上(2008年2期)2008-04-01
中學英語之友·上(2008年2期)2008-04-01
91香蕉高清国产线观看免费-97夜夜澡人人爽人人喊a-99久久久无码国产精品9-国产亚洲日韩欧美综合