張?zhí)煊?/p>
(北京郵電大學(xué)人工智能學(xué)院,北京 100876)
視覺目標(biāo)跟蹤(Visual Object Tracking, VOT)是指在一段視頻序列的初始幀中給定目標(biāo)的邊界框信息,進(jìn)而標(biāo)定該目標(biāo)在此視頻序列所有后續(xù)幀中的精確位置,從而得到目標(biāo)在視頻中完整的運(yùn)動軌跡。目標(biāo)跟蹤是計(jì)算機(jī)視覺的基本研究方向之一,應(yīng)用范圍十分廣泛,包括視頻監(jiān)控、無人駕駛、人機(jī)交互和增強(qiáng)現(xiàn)實(shí)等。然而,由于視頻亮度、目標(biāo)變形、遮擋和快速運(yùn)動而導(dǎo)致的頻繁外觀變化是目標(biāo)跟蹤任務(wù)一直面臨的挑戰(zhàn)。
現(xiàn)代跟蹤器有兩個(gè)分支:第一個(gè)分支基于相關(guān)濾波器,相關(guān)濾波利用循環(huán)相關(guān)的特征,通過傅里葉域來訓(xùn)練回歸器,該回歸器可以進(jìn)行在線跟蹤并有效地更新過濾器的權(quán)重,隨著深度學(xué)習(xí)的發(fā)展,最近提出的基于相關(guān)濾波的方法也充分利用了深度特征來提高跟蹤器的準(zhǔn)確性;另一分支旨在通過利用深度學(xué)習(xí)來使模型獲得強(qiáng)大的自主學(xué)習(xí)能力。具體來說,有兩種基于深度學(xué)習(xí)的跟蹤器:第一類是經(jīng)過預(yù)訓(xùn)練的判別式分類器,通過區(qū)分前景(目標(biāo))和背景來對目標(biāo)進(jìn)行持續(xù)的跟蹤,這種類型的跟蹤器有效利用了圖像中的背景信息,因此在多個(gè)公開測試集中表現(xiàn)出了具有競爭力的結(jié)果;第二類基于相似性匹配,此類型的跟蹤器通過在模板框架和搜索框架中的候選區(qū)域之間執(zhí)行互相關(guān)操作來獲得得分圖,得分最高的位置將被視為目標(biāo)的當(dāng)前位置。深度卷積神經(jīng)網(wǎng)絡(luò)通常利用Siamese結(jié)構(gòu)來實(shí)現(xiàn)相似性學(xué)習(xí),這種方法在為跟蹤器提供出色計(jì)算效率的同時(shí),又能使其保持具有競爭力的準(zhǔn)確性。因此,在本文的實(shí)驗(yàn)工作中,將Siamese跟蹤器視為ATUNet的基礎(chǔ)跟蹤器。
盡管Siamese結(jié)構(gòu)已經(jīng)很大程度地改善了跟蹤器的性能,但仍然面臨著以下問題。
1)在原始的Siamese跟蹤器中,默認(rèn)以視頻序列第一幀中的目標(biāo)外觀作為跟蹤任務(wù)的模板,該模板在整個(gè)跟蹤任務(wù)中保持固定。然而,目標(biāo)在一段視頻序列中的外觀特征通常會發(fā)生變化,無法實(shí)時(shí)對跟蹤模板進(jìn)行更新,極易導(dǎo)致目標(biāo)丟失。
2)傳統(tǒng)的模板更新策略主要是線性更新。采用線性更新的結(jié)果是,跟蹤器對視頻序列的每一幀所需的模板執(zhí)行恒定的更新速率。顯然,這與實(shí)際應(yīng)用是不符的,因?yàn)槟繕?biāo)外觀的變化幅度在視頻的每一幀中肯定是不同的。因此,線性更新機(jī)制很容易引起跟蹤漂移的現(xiàn)象。
3)模板更新網(wǎng)絡(luò)的結(jié)構(gòu)不能太復(fù)雜,否則會影響Siamese跟蹤器的實(shí)時(shí)性。因此,Siamese跟蹤器需要在準(zhǔn)確性和實(shí)時(shí)性之間達(dá)到一種最佳平衡。
為解決上述這些問題,本文提出了一種自適應(yīng)模板更新網(wǎng)絡(luò)(ATUNet),這項(xiàng)工作的主要貢獻(xiàn)在于三方面。
1)自適應(yīng)更新機(jī)制,突破跟蹤器使用線性插值來更新每幀模板的限制,該網(wǎng)絡(luò)分別將目標(biāo)在第一幀的初始模板、在不同時(shí)刻的累積模板和預(yù)測模板作為幀間殘差計(jì)算模塊的輸入,通過該模塊計(jì)算相互之間的殘差來得出當(dāng)前幀實(shí)際所需的更新幅度,以此來自適應(yīng)性地更新當(dāng)前幀所需要的模板。
2)幀殘差模塊,旨在學(xué)習(xí)預(yù)測模板和初始模板之間的殘差。初始模板可以為跟蹤器提供高度可靠的原始目標(biāo)特征,第5節(jié)的實(shí)驗(yàn)也表明,當(dāng)幀間殘差計(jì)算模塊的跳連結(jié)構(gòu)(Skip)與第一幀的初始模板連接時(shí),模型的表現(xiàn)效果達(dá)到最佳。
3)N
步迭代訓(xùn)練,將網(wǎng)絡(luò)的訓(xùn)練分為連續(xù)的N
個(gè)步驟,以迭代的方式完善ATUNet的性能,從而避免了煩瑣且效率低下的訓(xùn)練過程。本文在實(shí)驗(yàn)部分(第 5節(jié))中通過消融實(shí)驗(yàn)為步數(shù)N
選取了一個(gè)最優(yōu)值。本節(jié)簡要介紹了Siamese跟蹤框架以及現(xiàn)階段的線性更新策略。
最早的Siamese結(jié)構(gòu)是Luca Bertinetto等人提出的全卷積孿生網(wǎng)絡(luò)(SiamFC)。全卷積網(wǎng)絡(luò)的優(yōu)勢在于它可以提供更大的搜索圖像作為卷積網(wǎng)絡(luò)的輸入并計(jì)算模板之間的相似度。在SiamFC之后,出現(xiàn)了許多基于Siamese結(jié)構(gòu)的改進(jìn)跟蹤器。DSiam設(shè)計(jì)了一個(gè)快速更新模塊,該模塊可以有效地利用前幾幀來動態(tài)獲取目標(biāo)的外觀變化和背景情況,從而在目標(biāo)變形和背景混亂的情況下提高跟蹤器的魯棒性。SiamRPN在Siamese網(wǎng)絡(luò)之后引入了區(qū)域生成網(wǎng)絡(luò),因此該網(wǎng)絡(luò)可以基于分類和回歸任務(wù)進(jìn)行聯(lián)合跟蹤。DaSiamRPN在SiamRPN的基礎(chǔ)上進(jìn)行了數(shù)據(jù)增強(qiáng),它不僅擴(kuò)展了訓(xùn)練集的數(shù)量,而且還引入了帶有語義信息的否定樣本對,以增強(qiáng)跟蹤器的判別能力。SiamDW在主干網(wǎng)絡(luò)內(nèi)部設(shè)計(jì)了殘差單元,以允許在Siamese結(jié)構(gòu)中應(yīng)用更深更寬的神經(jīng)網(wǎng)絡(luò)。但是,基于Siamese的各種方法對于干擾因素的魯棒性普遍較差,這也是一直未能克服的缺陷。
iT
~進(jìn)行更新,權(quán)重隨時(shí)間呈指數(shù)衰減。T
~可表示為式中,i
是幀的索引值;T
是僅使用當(dāng)前幀計(jì)算得出的預(yù)測模板;T
~是上一幀的累積模板。假設(shè)目標(biāo)的外觀在連續(xù)的幀中平穩(wěn)且連續(xù)地變化,則將更新率γ
設(shè)置為一個(gè)固定的小值(例如γ
=0.01)。在DCF跟蹤器中,T
對應(yīng)的是相關(guān)濾波器,而在Siamese跟蹤器中,T
代表由全卷積特征提取器從特定幀中提取的目標(biāo)模板特征圖。盡管原始的SiamFC跟蹤器不執(zhí)行任何模型更新,但較新的Siamese跟蹤器已采用式(1)來更新其目標(biāo)模板。本節(jié)提出了一種可直接應(yīng)用于Siamese跟蹤器的自適應(yīng)模板更新網(wǎng)絡(luò),如圖1所示。
圖1 自適應(yīng)模板更新網(wǎng)絡(luò)結(jié)構(gòu)圖
自適應(yīng)模板更新網(wǎng)絡(luò)的三項(xiàng)輸入分別為一段視頻序列中第一幀的初始模板、前一幀的累積模板以及當(dāng)前幀的預(yù)測模板。三項(xiàng)輸入完成級聯(lián)操作后,經(jīng)過一個(gè)殘差計(jì)算單元來更新當(dāng)前幀所需要的累計(jì)模板。上述過程可表示為
Φ
是殘差計(jì)算函數(shù)。所學(xué)習(xí)的函數(shù)Φ
基于初始幀中提取的目標(biāo)模板、上一幀的累積模板和當(dāng)前幀的預(yù)測模板T
來計(jì)算更新后的累計(jì)模板。本質(zhì)上,該函數(shù)通過集成當(dāng)前幀U
給出的新信息來更新上一幀的累積模板。因此,Φ
可以基于當(dāng)前模板和累積模板之間的差異來適應(yīng)當(dāng)前幀的特定更新需求。為提高Φ
對跟蹤飄移的魯棒性,還在每幀的更新過程中考慮了初始模板,可為模板更新提供高度可靠的原始目標(biāo)特征。自適應(yīng)模板更新網(wǎng)絡(luò)的核心功能結(jié)構(gòu)是幀間殘差計(jì)算模塊,其中包括兩個(gè)組卷積層:一個(gè)通道混洗模塊和一個(gè)跳連操作。組卷積層1用于提取輸入信號的特征信息并完成降維,減少后續(xù)操作的參數(shù)量。通道混洗模塊允許組卷積獲得不同組的輸入數(shù)據(jù),從而使組卷積的輸入和輸出通道處于完全相關(guān)的狀態(tài)。組卷積層2用于進(jìn)一步提取圖像的特征信息并完成升維,恢復(fù)圖像信號的原始維度。
N
個(gè)步驟,以迭代地完善自適應(yīng)模板更新網(wǎng)絡(luò)。對于訓(xùn)練的第一步,在訓(xùn)練集上運(yùn)行基于標(biāo)準(zhǔn)線性更新策略的跟蹤器,以獲取訓(xùn)練數(shù)據(jù),包括要在下一步中使用的累積模板和預(yù)測模板。標(biāo)準(zhǔn)線性更新的計(jì)算方法為
γ
是更新率。在實(shí)驗(yàn)中取γ
標(biāo)準(zhǔn)值(γ
= 0.01)。線性更新假定對象的外觀特征在后續(xù)幀中平滑且固定地變化。對于第N
步訓(xùn)練,在前一步驟中獲得的累積模板和預(yù)測模板均用于在當(dāng)前步驟中訓(xùn)練自適應(yīng)模板更新網(wǎng)絡(luò)??梢詫⑦@種特定的實(shí)現(xiàn)形式表示為N
是訓(xùn)練的迭代次數(shù)。N
的最佳值需要通過實(shí)驗(yàn)確定,這將在后續(xù)的實(shí)驗(yàn)部分進(jìn)行說明。對于訓(xùn)練集的選擇而言,由于LaSOT訓(xùn)練集數(shù)量眾多,完全使用將消耗大量時(shí)間,并造成不必要的冗余。因此,本文從LaSOT的70個(gè)類別中隨機(jī)選擇30個(gè)類別,然后將每個(gè)類別中時(shí)間最長的視頻序列添加到訓(xùn)練集中。實(shí)際上,自適應(yīng)模板更新網(wǎng)絡(luò)的訓(xùn)練集僅使用了包含30個(gè)隨機(jī)選擇類別的子序列。從大量實(shí)驗(yàn)中發(fā)現(xiàn),附加數(shù)據(jù)只會給模板更新網(wǎng)絡(luò)帶來很小的性能提升,同時(shí)會增加網(wǎng)絡(luò)模型的訓(xùn)練時(shí)間。
自適應(yīng)模板更新網(wǎng)絡(luò)由兩個(gè)組卷積層、ReLU和通道混洗模塊組成,其中第一個(gè)卷積層的尺寸為1×1×3C
×96×8,第二個(gè)卷積層的尺寸為1×1×96×C
×8。對于不同的Siamese跟蹤器,C
的取值有所不同。當(dāng)與SiamFC和SiamRPN連接時(shí),H
=W
= 6并且C
= 256,而與SiamDW連接時(shí),H
與W
的數(shù)值不變,C
=512。由于采用的訓(xùn)練方式為分布迭代訓(xùn)練,在第一步中,權(quán)重開始初始化,并且學(xué)習(xí)率在每個(gè)epoch從10到10呈對數(shù)遞減。在下一步中,權(quán)重從上一步的最佳結(jié)果開始初始化,并且學(xué)習(xí)率在每個(gè)epoch從10到10呈對數(shù)遞減。整個(gè)訓(xùn)練階段使用大小為64的mini-batch訓(xùn)練50個(gè)epoch,并使用動量為0.9,權(quán)重衰減為0.000 5的隨機(jī)梯度下降(SGD)。所有實(shí)驗(yàn)均在NVIDIA GTX 2080ti GPU上使用Pytorch 進(jìn)行。為了獲得更好的測試結(jié)果,本文選用了視覺目標(biāo)跟蹤(VOT)測試集中幾個(gè)常用的版本:VOT2016,VOT2017和VOT2018。VOT系列測試集通過一種重置方法來評估跟蹤器,只要跟蹤器的結(jié)果與Ground Truth沒有重疊,跟蹤器將在五幀后重新初始化。VOT測試集的主要評估指標(biāo)包括準(zhǔn)確性(A)、魯棒性(R)和預(yù)期平均重疊(EAO)。更好的跟蹤器具有較高的A和EAO得分,但具有較低的R得分。
將本文所提出的自適應(yīng)模板更新網(wǎng)絡(luò)分別應(yīng)用于SiamFC、SiamRPN和SiamDW跟蹤器,在VOT2016和VOT2017上與主流的跟蹤器進(jìn)行了比較,結(jié)果見表1。
表1 自適應(yīng)模板更新網(wǎng)絡(luò)在VOT數(shù)據(jù)集上與其他跟蹤器的比較
?
實(shí)驗(yàn)結(jié)果表明,本文所提出的自適應(yīng)模板更新網(wǎng)絡(luò)可以為多種Siamese跟蹤器帶來超過3%的性能提升,并有效提高了Siamese跟蹤器對于復(fù)雜環(huán)境的魯棒性。此外,還將自適應(yīng)更新模板更新網(wǎng)絡(luò)與應(yīng)用線性更新策略的DSiam和MemTrack進(jìn)行了對比,實(shí)驗(yàn)結(jié)果表明本文的更新策略比之前的線性更新策略更有效。
使用VOT2018數(shù)據(jù)集,并將SiamFC作為基礎(chǔ)跟蹤器來進(jìn)行消融實(shí)驗(yàn),結(jié)果見表2。將N
值固定,幀殘差模塊中的跳連(Skip)結(jié)構(gòu)與相連時(shí),自適應(yīng)模板更新網(wǎng)絡(luò)的性能最優(yōu)。將Skip結(jié)構(gòu)固定,當(dāng)自適應(yīng)模板更新網(wǎng)絡(luò)迭代訓(xùn)練到第3步時(shí),模型的效果最好。該實(shí)驗(yàn)同時(shí)表明,隨著N
值的增加,網(wǎng)絡(luò)的性能并不會越好。根據(jù)消融實(shí)驗(yàn)1所得到的結(jié)論,自適應(yīng)模板更新網(wǎng)絡(luò)在幀殘差模塊中的跳連(Skip)結(jié)構(gòu)與相連,并且迭代訓(xùn)練到第3步時(shí),取得的性能最好。相比于傳統(tǒng)SiameseFC而言,ATUNet使其擁有了對環(huán)境雜亂、目標(biāo)旋轉(zhuǎn)及快速運(yùn)動等干擾因素的魯棒性。自適應(yīng)模板更新網(wǎng)絡(luò)測試效果圖如圖2所示。
表2 消融實(shí)驗(yàn)
?
圖2 自適應(yīng)模板更新網(wǎng)絡(luò)測試效果圖
N
步迭代訓(xùn)練方式。實(shí)驗(yàn)表明,在本文提出的自適應(yīng)模板更新網(wǎng)絡(luò)使Siamese跟蹤器在VOT2016和VOT2017數(shù)據(jù)集上的表現(xiàn)都超過了自身原本的性能,這也證明所提出的自適應(yīng)模板更新網(wǎng)絡(luò)有效地預(yù)測了目標(biāo)在每一幀中的變化。