熊昌鎮(zhèn),李 言
(城市道路交通智能控制技術(shù)北京市重點實驗室(北方工業(yè)大學),北京100144)
計算機視覺是人工智能領(lǐng)域重要的研究分支,其中視覺目標跟蹤技術(shù)更是重中之重。即在初始幀中確定目標的坐標和尺寸,在后續(xù)幀中能夠通過跟蹤框描述出目標的運動軌跡。該技術(shù)運用于安全監(jiān)控、競技體育、人機交互等領(lǐng)域。與其他深度學習的跟蹤算法相比,基于孿生網(wǎng)絡(luò)的目標跟蹤算法在跟蹤速度上有著絕對的優(yōu)勢,因此近年來吸引了眾多的研究者,基于孿生網(wǎng)絡(luò)的跟蹤算法也得到了快速的發(fā)展。
孿生網(wǎng)絡(luò)跟蹤算法就是衡量模板圖像在待檢測圖像上某一區(qū)域的相似程度。孿生神經(jīng)網(wǎng)絡(luò)有兩個輸入,即模板圖像和待檢測圖像,將這兩個輸入送入兩個相同的神經(jīng)網(wǎng)絡(luò),這兩個神經(jīng)網(wǎng)絡(luò)分別將輸入映射到新的空間,形成輸入在新空間中的表示;然后通過計算,評價兩個輸入的相似度。Bertinetto等[1]提出了全卷積孿生網(wǎng)絡(luò)跟蹤(Fully-Convolutional Siamese networks for object tracking,SiameseFC)算法,提取特征的卷積神經(jīng)網(wǎng)絡(luò)(Convolutional Neural Networks,CNN)[2-4]離線訓練,該網(wǎng)絡(luò)只有卷積層和池化層,是典型的全卷積神經(jīng)網(wǎng)絡(luò),在線不更新策略,使得跟蹤速度可以達到實時,58 幀/s的速度遠超其他深度學習的跟蹤算法。Guo 等[5]提出了動態(tài)孿生網(wǎng)絡(luò)跟蹤(learning Dynamic Siamese network for visual object tracking,DSiam)算法,在SiameseFC 的框架中增加了目標形變和背景抑制層,提高了跟蹤器的判斷能力。Li 等[6]提出了高效的孿生區(qū)域推薦網(wǎng)絡(luò)跟蹤(High performance visual tracking with Siamese Region Proposal Network,SiamRPN)算法,將區(qū)域推薦網(wǎng)絡(luò)(Region Proposal Network,RPN)與孿生網(wǎng)絡(luò)結(jié)構(gòu)進行了結(jié)合,RPN 有兩個分支,一路用于區(qū)分前景和背景,一路用于對跟蹤框的回歸,有效地提高了跟蹤的精度。Zhu等[7]提出了基于干擾物感知的孿生網(wǎng)絡(luò)跟蹤(Distractor-aware Siamese networks for visual object tracking,DaSiamRPN)算 法 ,在SiamRPN 的基礎(chǔ)上提出了增量學習,為了選擇出更好的跟蹤框,在訓練中添加了三類樣本對,有效地提高了跟蹤器的泛化能力。Wang 等[8]提出的快速在線目標跟蹤與分割(Fast Online Object Tracking and Segmentation,SiamMask)算法將提取特征的淺層網(wǎng)絡(luò)AlexNet[9]換成了更深層網(wǎng)絡(luò)的ResNet(Residual neural Network,ResNet)[10],并在 RPN 并行加入掩膜分支進一步提高了跟蹤的準確率。
綜上所述,現(xiàn)有基于孿生網(wǎng)絡(luò)的跟蹤算法在跟蹤時不需要在線學習,模板(目標)特征只根據(jù)預處理的第一幀圖片進行提取,之后不再進行更新,雖然速度上表現(xiàn)優(yōu)異,能夠達到實時跟蹤的要求,但是由此導致模板特征不能很好地適應(yīng)目標的表征變化;另外,在SiamMask 的掩膜分支中,模板路淺層特征含有冗余性,會污染生成的目標掩膜,使得跟蹤精確性沒有進一步提高。
針對基于孿生網(wǎng)絡(luò)的跟蹤算法出現(xiàn)的上述問題,本文對快速在線目標跟蹤與分割算法進行了以下幾點改進:1)為了提高模板特征的表達能力,通過設(shè)置學習率,利用第一幀提取的模板特征與后續(xù)幀提取的模板特征進行學習,這樣能夠豐富模板特征的語義信息,提高算法的魯棒性;2)在得到目標掩膜(mask)的過程中,稀釋了模板路降維的特征,減少了冗余特征的信息干擾,提高了算法的精確性。最后為了驗證本文算法的有效性,在兩個具有挑戰(zhàn)性的數(shù)據(jù)集上進行了詳細的實驗,并與幾個近期具有代表性的跟蹤算法進行比較,實驗結(jié)果表明本文所提方法得到了很有競爭力的結(jié)果。
為了保持跟蹤器的精確性和實時性,采用了全卷積孿生網(wǎng)絡(luò)的框架。另外,為了證明本文方法的有效性,將在本節(jié)介紹SiameseFC、加入RPN 的SiamRPN 以及視頻對象跟蹤和半監(jiān)督視頻對象分割算法SiamMask,在第2 章介紹本文的改進方法。
Bertinetto 等[1]提出的 SiameseFC 算法共有兩個分支:一路為模板分支,一路為待檢測分支。全卷積孿生網(wǎng)絡(luò)是線下訓練的,作用于模板分支的模板圖像z 和待檢測分支的待檢測圖像x,輸出為一維響應(yīng)圖。在響應(yīng)圖中找到得分最高的點,通過雙三次插值算法反向計算,找到目標的位置。該算法的模板路圖像是經(jīng)過第一幀圖像預處理得到的,在跟蹤過程中不進行更新。這兩個輸入由同一個CNN 進行處理,生成的兩個相互關(guān)聯(lián)的特征圖根據(jù)式(1)得到相似度響應(yīng)圖:
式中:f(z)、f(x)分別是模板圖像和待檢測圖像由CNN 提取的特征;*為卷積操作。網(wǎng)絡(luò)中的最優(yōu)參數(shù)ω是采用隨機梯度下降訓練得到的,從大型可視化數(shù)據(jù)庫(ImageNet Large Scale Visual Recognition Challenge,ILSVRC)[11]中選取了大量的圖片對(zi,xi),給定相應(yīng)的標簽響應(yīng)圖Yi∈ {-1,+ 1},然后最小化式(2)的邏輯回歸損失函數(shù)L(·):
式中,N為訓練樣本數(shù)。
Li等[6]在 SiameseFC 的基礎(chǔ)上提出了 SiamRPN 算法,該算法大幅提高了跟蹤速度,原因是加入了RPN,RPN 有兩個輸出:
式中φ(z)、φ(x)分別為模板特征和待檢測圖像特征。其中:是分類分支的輸出,包含 2k 個通道向量,通過 softmax損失分類,區(qū)分前景和背景是回歸分支的輸出,包含4k 個通道向量,使用了可變寬高比的邊界框預測目標的尺度和位置,解決了SiameseFC 中計算多個目標尺度而減緩跟蹤速度的問題,速度最高可達到200 幀/s。該算法將SiameseFC與Faster R-CNN 巧妙地聯(lián)系起來,RPN 并行計算,有效地提高了跟蹤精度。
SiamMask算法[8]能夠并行完成視頻目標跟蹤任務(wù)和視頻目標分割任務(wù),沿用了SiameseFC 的跟蹤框架,將提取特征的AlexNet 換為深層網(wǎng)絡(luò)ResNet,將一維的響應(yīng)圖拓展到了多維,在RPN 原有的回歸分支和分類分支的基礎(chǔ)上,加入掩膜分支用于目標分割,能夠更好地定位目標。在三個分支訓練了三個子網(wǎng)絡(luò),主干網(wǎng)絡(luò)與子網(wǎng)絡(luò)均采用離線端到端的訓練方式,掩膜分支利用logistic回歸損失:
式中:θ、φ 為主干網(wǎng)絡(luò)與子網(wǎng)絡(luò)的參數(shù);yn為第n 個候選響應(yīng)窗口的標簽為第n個候選相應(yīng)窗口中像素(i,j)對應(yīng)的掩碼標簽;為分割網(wǎng)絡(luò)預測結(jié)果。SiamMask總損失函數(shù)為:
式中:Lscore、Lbox分別為分類分支損失和回歸分支損失,λ1、λ2、λ3為權(quán)值。
本文算法的框架如圖1 所示。在視頻第一幀確定跟蹤目標,利用相同的CNN對模板圖像z和待檢測圖像x進行特征提取。為了適應(yīng)目標表征變化,從第二幀開始,每幀計算一次模板特征,并與第一幀模板特征進行融合學習,更新后的模板特征與待檢測圖像特征進行卷積計算得到多維響應(yīng)圖。另外,為了得到更精確的目標掩膜,在掩膜分支加入了加權(quán)融合策略,減少了冗余特征的干擾。
圖1 所提算法框架Fig. 1 Framework of the proposed algorithm
深度卷積神經(jīng)網(wǎng)絡(luò)提取的特征有很好的表達能力。淺層卷積提取的特征包含目標的空間信息,能很好地區(qū)分背景干擾;深層卷積提取的特征包含目標的語義信息,能很好地區(qū)分相同類別的物體。SiamMask 選用了深層網(wǎng)絡(luò)ResNet 的Conv4_3 層的特征,模板特征僅在初始幀進行提取,在跟蹤過程中不進行更新,待檢測圖像特征與模板特征進行多維相似度度量計算,得到用于定位的多維響應(yīng)圖;但由于模板特征固定不變,當目標被嚴重遮擋或者發(fā)生形變時,容易出現(xiàn)跟蹤失敗的情況。所以通過設(shè)置學習率對模板特征更新,使模板特征能夠更好地適應(yīng)目標的表征變化。
圖1上路即模板路(從模板圖像z到更新后的模板特征),首先通過CNN 提取初始幀模板特征并保留,第二幀以第一幀獲取的目標中心點為中心截取127× 127× 3 的圖片塊,再通過CNN 對圖片塊提取特征,將提取的第二幀模板特征與第一幀模板特征進行加權(quán)融合。選取第一幀模板特征進行融合是因為目標是在非遮擋下提取的特征,包含的目標語義信息最為豐富。每一幀都進行此操作,極大地豐富了模板特征的語義信息,經(jīng)過學習的模板特征與待檢測圖像提取的特征進行卷積操作,得到的多維響應(yīng)圖更加精準。模板特征更新公式為:
式中:η 為學習率;f1(z)為第一幀圖像提取的模板特征;fi(z)為第i幀圖像提取的模板特征。
掩膜細化模塊如圖2 所示。多維響應(yīng)圖被分成大小相等的單位候選響應(yīng)窗口,候選響應(yīng)窗口表示模板圖像與待檢測圖像在某一區(qū)域的相似度。通過分類分支找到多維響應(yīng)圖中得分最高的候選響應(yīng)窗口,通過上采樣的方式,將低分辨率的特征圖與高分辨率的特征圖進行融合。
圖2 掩膜細化模塊Fig. 2 Mask refinement module
在融合的過程中,將模板圖像z 提取的第一層、第二層和第三層特征通過降維的方式與候選響應(yīng)窗口上采樣的特征直接相加,在這個過程中,包含目標空間信息的通道被舍棄,包含背景干擾信息的通道被保留,導致目標分割定位不準確。在保留模板特征空間信息的前提下,對其進行加權(quán),將更多的注意力放在上采樣的優(yōu)質(zhì)特征上,以減小降維特征對上采樣特征的干擾。該方法經(jīng)實驗證明,模板圖像z 提取的第二層和第三層卷積降維特征對上采樣的特征干擾最大。在跟蹤過程中,為了保證跟蹤器的性能,需要設(shè)置合理的融合權(quán)重以充分發(fā)揮特征的表現(xiàn)能力。所以,將第二層降維特征與上采樣特征進行加權(quán)融合,其融合權(quán)重比例為1∶1.25,第三層降維特征與上采樣特征融合比例為1∶2。該特征融合公式為:
為了評估本文改進算法的有效性,選用VOT2016[12]、VOT2018[13]這兩個被廣泛應(yīng)用以及具有挑戰(zhàn)性的數(shù)據(jù)集進行測試,這兩個數(shù)據(jù)集均有60組長短不一的視頻,包含6種視覺干擾,每組視頻序列中至少包含一種視覺干擾,具有代表性。
實 驗 平 臺 為 ubuntu16.04 系 統(tǒng) 下 的 PyCharm PROFESSIONAL2017,所有跟蹤實驗均在配置為Intel Core i5-4590CPU,GTX 1060 GPU,內(nèi)存為16 GB 的計算機上完成。實驗中采用的評價標準為精確性(Accuracy)、魯棒性(Robustness)以及預期平均重疊率(Expected Average Overlap Rate,EAO),其中Accuracy 是根據(jù)跟蹤算法預測的目標框與標注的真實框的重疊率計算得到的。首先計算第t 幀的重疊率:
式中Nvalid表示視頻序列的長度。Robustness 用來測試跟蹤算法的穩(wěn)定性,數(shù)值越大,表示穩(wěn)定性越差,如下式所示:
式中:F(k)為跟蹤算法在跟蹤的第k 次重復中的失敗次數(shù)。EAO 是根據(jù)精確性和魯棒性計算得到的,將數(shù)據(jù)集中所有序列按長度Ns分類,計算長度為Ns的視頻序列每一幀一次性的準確性,然后計算每個長度為Ns視頻序列的準確性,通過下式得出該長度Ns的EAO值:
最后對不同長度的EAO 值求平均,設(shè)序列長度范圍為[Nmin,Nmax],則:
EAO為一個數(shù)值,可用此值評測跟蹤算法的綜合性能;使用每秒鐘處理的幀數(shù)(Frames Per Second,F(xiàn)PS)評估跟蹤的速度,即實時性。
本部分實驗對比模板更新過程中不同學習率對跟蹤過程的影響和掩膜細化模塊根據(jù)不同權(quán)重融合特征對結(jié)果的影響,并做了可視化對比實驗。
3.1.1 不同學習率對比實驗
本文算法通過設(shè)置學習率的方式去更新模板,使得模板特征能夠更好地適應(yīng)目標的表征變化。在測試的眾多學習率中選出了四組不同的學習率在VOT2016 和VOT2018 上進行了測試,以精確性和預期平均重疊率EAO 對跟蹤結(jié)果進行評估,實驗結(jié)果如表1 所示。學習率為0 是SiamMask 算法的實驗結(jié)果,當把學習率設(shè)置為0.06時精確性和EAO 在VOT2016和VOT2018 中提升幅度較為明顯,表明通過學習目標變化后的模板特征有效地提高了跟蹤器的魯棒性。
3.1.2 不同權(quán)重融合特征的對比實驗
SiamMask 算法在掩膜細化模塊將含有空間信息的高維特征降維后直接與相同通道數(shù)的候選響應(yīng)窗口上采樣的特征相加,為了減少因為降維帶來的冗余特征干擾,在本實驗中對模板圖像z所提取的第二層(Conv2)以及第三層(Conv3)降維后特征乘以不同的權(quán)重系數(shù)再進行相加操作,實驗結(jié)果如表2 所示。權(quán)重系數(shù)是通過反復實驗得到的,表中選取了三組有代表性的權(quán)值進行比較,這三組權(quán)值均提高了跟蹤性能,其中對Conv2 乘以0.8 和對Conv3 乘以0.5 時跟蹤效果最好,說明稀釋模板圖像z降維特征再融合的方式有效,最終選取權(quán)重系數(shù)為0.8和0.5。
表1 不同學習率時的性能對比Tab. 1 Performance comparison with different learning rates
表2 不同權(quán)值時的性能對比Tab. 2 Performance comparison with different weights
在VOT2016 數(shù)據(jù)集中選取了四種基于孿生網(wǎng)絡(luò)框架的算法和兩種主流算法進行對比,分別是:SiameseFC 算法[1]、SiamRPN 算法[6]、DaSiamRPN[7]以及 SiamMask[8]算法、ECO 算法[14]和 CCOT 算法[15],實驗結(jié)果如表 3 所示,本文算法的精確性和魯棒性均優(yōu)于其他六種對比算法。另外,在VOT2016 數(shù)據(jù)集測試中,本文算法的EAO 比SiamMask 算法高了1.7 個百分點,比VOT2016 短時跟蹤挑戰(zhàn)賽冠軍CCOT 算法高了11.9個百分點,并沒有因為改進策略影響跟蹤速度,仍達到實時跟蹤的要求。
表3 VOT2016上7種算法的結(jié)果對比Tab. 3 Result comparison of 7 algorithm on VOT2016
在VOT2018 數(shù)據(jù)集中選取了六種基于孿生網(wǎng)絡(luò)框架的算法進行比較,分別是:SiameseFC 算法[1]、SiamRPN 算法[6]、DaSiamRPN[7]、SiamMask[8]算 法 、DSiam[5]算 法 以 及SA_Siam_R[16],精確性、魯棒性和實時性的實驗結(jié)果如表 4 所示。在VOT2018 數(shù)據(jù)集測試中,本文所提算法的EAO 高于VOT2018短時跟蹤挑戰(zhàn)賽冠軍EAO 為0.389的自適應(yīng)學習的判別式相關(guān)濾波器(Learning Adaptive Discriminative Correlation Filters,LADCF)算法[17],EAO、精確性和魯棒性均高于其他六種基于孿生網(wǎng)絡(luò)框架的算法。
表4 VOT2018上7種算法的結(jié)果對比Tab. 4 Result comparison of seven algorithms on VOT2018
圖3 給出了四種基于孿生網(wǎng)絡(luò)的跟蹤算法在graduate、girl、gymnastics1、car1這四組數(shù)據(jù)上的跟蹤效果。
圖3 四種跟蹤算法的部分跟蹤結(jié)果對比Fig.3 Comparison of tracking results of four tracking algorithms
在圖3(a)的graduate 視頻序列中,主要的干擾因素是遮擋,在目標被遮擋前,四種算法均可以較好地定位到目標,在第287 幀左右時,目標發(fā)生遮擋,SiameseFC 算法和DSiam 算法出現(xiàn)了明顯的跟蹤偏差,本文算法和SiamMask 依然能夠準確地跟蹤目標;在圖3(b)的girl 視頻序列中,主要的干擾因素也是遮擋,在第106 幀左右時,目標發(fā)生遮擋,SiameseFC 和DSiam 跟丟目標,SiamMask 出現(xiàn)了跟蹤偏移的現(xiàn)象,遮擋結(jié)束后本文文算法在視頻的第139 幀依然穩(wěn)定跟蹤到目標,其他三種算法全部跟丟目標;在圖3(c)的gymnastics1 視頻序列中,主要的干擾因素是形變,從圖中可以看出目標從發(fā)生形變到最后一幀,本文算法和SiamMask 有良好的穩(wěn)定性;在圖3(d)的car1 視頻序列中,主要的干擾因素是模糊運動,目標在模糊運動前,本文算法與SiamMask 有較好的跟蹤效果,在第683 幀左右時,目標發(fā)生模糊運動,可以看出四種算法均出現(xiàn)了明顯的偏移現(xiàn)象。綜上所述,在目標發(fā)生遮擋、形變時本文算法能夠更好地跟蹤目標。
SiamMask 算法的跟蹤效果優(yōu)于其他基于孿生網(wǎng)絡(luò)框架的跟蹤算法,由于深度卷積特征具有超高的表征能力,所以性能比較穩(wěn)定,但出現(xiàn)類內(nèi)物體干擾或者目標被嚴重遮擋時,會出現(xiàn)跟蹤丟失或者跟錯的情況,因此本文做出以下改進:首先,利用第一幀模板特征通過設(shè)置學習率與后續(xù)幀提取的模板特征進行融合學習,豐富了模板特征的語義信息,增強了特征的表現(xiàn)力,提高了跟蹤器的魯棒性;同時,在掩膜細化模塊對降維特征進行了加權(quán)操作,減少了冗余特征的干擾,提高了跟蹤精確性。在VOT2016 和VOT2018 數(shù)據(jù)集上進行測試,并對不同學習率和不同權(quán)重對跟蹤效果的影響進行了分析,結(jié)果顯示本文算法在VOT2016 數(shù)據(jù)集中測試的EAO 比SiamMask 算法高 1.7 個百分點,在 VOT2018 中比 SiamMask 算法高1 個百分點,實驗結(jié)果均優(yōu)于其他對比算法,從而驗證了本改進算法的有效性;而且在兩個數(shù)據(jù)集測試速度均超過了34 幀/s,滿足實時跟蹤的要求。下一步工作將針對快速移動和模糊運動干擾,進一步提高目標跟蹤的效果。