孫運(yùn)達(dá),萬(wàn) 雪*,李盛陽(yáng)
(1.中國(guó)科學(xué)院大學(xué),北京 100049;2.中國(guó)科學(xué)院 空間應(yīng)用工程與技術(shù)中心,北京 100094;3.中國(guó)科學(xué)院 太空應(yīng)用重點(diǎn)實(shí)驗(yàn)室,北京 100094)
自1957 年第一顆人造衛(wèi)星升空以來(lái),據(jù)不完全統(tǒng)計(jì),全世界共執(zhí)行4000 余次發(fā)射任務(wù)。各類航天器在科研、國(guó)防、商業(yè)等領(lǐng)域發(fā)揮著越來(lái)越重要的作用的同時(shí)也讓空間環(huán)境變得愈發(fā)復(fù)雜,復(fù)雜的空間環(huán)境增加了空間任務(wù)的危險(xiǎn)性。在航天器的在軌維修,交會(huì)對(duì)接等空間任務(wù)中,能否快速、準(zhǔn)確地感知和定位航天器直接決定任務(wù)的成??;而對(duì)航天器的感知最終往往集中在其某個(gè)部件上,因此,持續(xù)跟蹤人造衛(wèi)星部件是保證空間任務(wù)順利完成的基礎(chǔ)[1]。
在圖像或視頻中持續(xù)準(zhǔn)確提取視覺(jué)目標(biāo)的主要手段之一是目標(biāo)跟蹤。目標(biāo)跟蹤,其任務(wù)是在給定某視頻序列中獲取特定運(yùn)動(dòng)目標(biāo)并連續(xù)獲取它隨時(shí)間形成的目標(biāo)軌跡[2-5]。
視覺(jué)目標(biāo)跟蹤(Visual Object Tracking),本文所指均為單目標(biāo)視覺(jué)跟蹤,其任務(wù)是在給定某視頻序列初始幀的目標(biāo)尺寸與位置的條件下,預(yù)測(cè)后續(xù)視頻幀中該目標(biāo)的尺寸與位置[2]。作為計(jì)算機(jī)視覺(jué)領(lǐng)域的基礎(chǔ)問(wèn)題之一,視覺(jué)目標(biāo)追蹤在移動(dòng)機(jī)器人,自動(dòng)駕駛,人機(jī)交互,視頻監(jiān)控等領(lǐng)域具有非常廣闊的應(yīng)用前景[6-8]。傳統(tǒng)的目標(biāo)跟蹤算法分為兩大類:生成(generative)模型方法和判別(discriminative)模型方法[2]。受深度學(xué)習(xí)強(qiáng)大特征提取能力的驅(qū)動(dòng),在兩大追蹤框架下又派生出許多非常優(yōu)秀的方法。
生成模型方法專注對(duì)目標(biāo)本身的刻畫(huà),通過(guò)構(gòu)建目標(biāo)模型以預(yù)測(cè)視頻序列中目標(biāo)的位置,比較突出的算法有對(duì)動(dòng)態(tài)系統(tǒng)的狀態(tài)序列進(jìn)行先行最小方差估計(jì)的卡爾曼濾波算法[9];利用梯度優(yōu)化方法實(shí)現(xiàn)快速目標(biāo)定位的mean-shift 算法[10]等等。判別類方法更關(guān)注于目標(biāo)和背景的區(qū)別,以此區(qū)分目標(biāo)和背景,以訓(xùn)練好的分類器尋找最優(yōu)目標(biāo)區(qū)域。判別類方法中比較典型的有Sam Hare 等人利用SVM 構(gòu)建目標(biāo)分類器以實(shí)現(xiàn)目標(biāo)跟蹤的Struck 算法[11];Kalal 等人提出的跟蹤-學(xué)習(xí)-檢測(cè)(Tracking-Learning-Detection)TLD 算法[12]。Bolme 等人在2010 年將相關(guān)濾波引入目標(biāo)跟蹤領(lǐng)域,提出MOSSE 方法[13]。在MOSSE 的基礎(chǔ)上,Henriques J.F 在相關(guān)濾波中加入嶺回歸和循環(huán)位移的密集采樣提出KCF 算法[14]。Martin Danelljan 通過(guò)忽略位移樣本的邊界部分提出SRDCF[15],緩解邊界效應(yīng)問(wèn)題。此外,一些學(xué)者提出了基于深度特征或者深度學(xué)習(xí)的方法,SeungHoon Hong 等人結(jié)合卷積神經(jīng)網(wǎng)絡(luò)與支持向量機(jī)提出了CNN-SVM 算法[16]。Bertinetto 等人利用端到端的訓(xùn)練方式采用孿生網(wǎng)絡(luò)結(jié)構(gòu)提出了一種新穎的目標(biāo)跟蹤網(wǎng)絡(luò)SiamFC[17]。
目前,太空?qǐng)鼍跋箩槍?duì)人造衛(wèi)星部件目標(biāo)的追蹤算法尚不完善,主要原因有以下幾點(diǎn):從數(shù)據(jù)層面上看,在太空?qǐng)鼍跋?,可獲取的樣本數(shù)量不足,無(wú)法滿足機(jī)器學(xué)習(xí)特別是深度學(xué)習(xí)對(duì)數(shù)據(jù)的大量需求;從場(chǎng)景本身看,太空?qǐng)鼍爸械暮教炱鬟\(yùn)動(dòng)自由無(wú)序,存在大量旋轉(zhuǎn)、形變、尺度變化的情況,且航天器同類部件較為相似易混淆視覺(jué)感知,導(dǎo)致同一個(gè)目標(biāo)在不同光強(qiáng)下差異很大,不同目標(biāo)在同一場(chǎng)景下差異較小,以上存在種種問(wèn)題都對(duì)目標(biāo)跟蹤算法提出相當(dāng)大的挑戰(zhàn)。
孿生網(wǎng)絡(luò)結(jié)構(gòu)(Siamese Network),如圖1 所示,具有相同權(quán)重的兩個(gè)神經(jīng)網(wǎng)絡(luò)可以將不同的輸入映射到相同的特征空間,在該特征空間中可以度量?jī)蓚€(gè)輸入的相似程度。孿生網(wǎng)絡(luò)的兩個(gè)輸入x1、x2分別輸入兩個(gè)神經(jīng)網(wǎng)絡(luò),神經(jīng)網(wǎng)絡(luò)將其映射到相同特征空間L中,得到輸出f1、f2。以特征編碼距離衡量其相似性,則x1,x2的距離d(x1,x2)定義如公式(1),d(x1,x2)越小則表示輸入越相似。
圖1 孿生網(wǎng)絡(luò)結(jié)構(gòu)圖Fig.1 Architecture of siamese network
孿生網(wǎng)絡(luò)結(jié)構(gòu)對(duì)網(wǎng)絡(luò)輸入相似性的度量是非語(yǔ)義的,這種相似度量的思想與模板匹配思想類似,因此使用當(dāng)前數(shù)量大,監(jiān)督信息豐富的大型數(shù)據(jù)集訓(xùn)練孿生網(wǎng)絡(luò)結(jié)構(gòu),提升網(wǎng)絡(luò)對(duì)目標(biāo)的表征能力,可以緩解空間目標(biāo)數(shù)據(jù)不足的問(wèn)題。
如圖2,該網(wǎng)絡(luò)結(jié)構(gòu)的訓(xùn)練過(guò)程可以理解為學(xué)習(xí)一個(gè)網(wǎng)絡(luò)模型,該網(wǎng)絡(luò)模型使得真實(shí)正樣本的輸入到預(yù)測(cè)為正樣本的距離遠(yuǎn)遠(yuǎn)小于預(yù)測(cè)為負(fù)樣本的距離。
圖2 孿生網(wǎng)絡(luò)訓(xùn)練過(guò)程Fig.2 Training processing of siamese network
若圖1 中網(wǎng)絡(luò)輸入為圖像數(shù)據(jù),則可度量?jī)蓚€(gè)輸入圖像的相似度,找出最相似位置,將航天器部件追蹤問(wèn)題描述為一個(gè)基于孿生神經(jīng)網(wǎng)絡(luò)的相似性度量問(wèn)題。即學(xué)習(xí)一個(gè)目標(biāo)函數(shù)f(z,x),找到當(dāng)前待搜索圖像x中與搜索目標(biāo)z最相似的位置,且該位置與目標(biāo)真值所在位置距離盡可能小。本文以卷積神經(jīng)網(wǎng)絡(luò)描述目標(biāo)函數(shù)f。Krizhevsky 等人設(shè)計(jì)的AlexNet[18]是一個(gè) 用作圖像分類的神經(jīng)網(wǎng)絡(luò),具有比較優(yōu)秀的特征提取能力,基于此本文提出了一個(gè)AlexNet 的改進(jìn)版本,使其適應(yīng)目標(biāo)追蹤任務(wù)。改進(jìn)的AlexNet相比原網(wǎng)絡(luò)具有以下區(qū)別,網(wǎng)絡(luò)結(jié)構(gòu)對(duì)比如表1所示。
表1 網(wǎng)絡(luò)結(jié)構(gòu)對(duì)比Tab.1 Comparison of network architecture
(1)AlexNet 為了實(shí)現(xiàn)圖像分類功能,在網(wǎng)絡(luò)最后使用兩個(gè)全連接層與一個(gè)分類層。改進(jìn)Alexnet 網(wǎng)絡(luò)去掉了這三層只保留其特征提取能力。
(2)為提升網(wǎng)絡(luò)的表征能力,緩解網(wǎng)絡(luò)訓(xùn)練中的過(guò)擬合現(xiàn)象,在前四層卷積操作之后激活函數(shù)之前對(duì)特征圖進(jìn)行批歸一化計(jì)算即BN(Batch Normalization),防止網(wǎng)絡(luò)對(duì)于明顯相應(yīng)不敏感。
(3)原始AlexNet 使用Padding 計(jì)算 以補(bǔ)全特征圖尺寸,但這一操作會(huì)使目標(biāo)區(qū)域趨向于集中在圖像中心造成誤差,所以在本網(wǎng)絡(luò)結(jié)構(gòu)中去掉Padding 計(jì)算。
(4)為令改進(jìn)AlexNet 可以度量網(wǎng)絡(luò)輸入的相關(guān)性,在完成網(wǎng)絡(luò)輸入的特征提取過(guò)程即前五層卷積層后,增加相關(guān)計(jì)算層,該層將經(jīng)特征提取后的搜索圖像特征圖與模板圖像特征圖進(jìn)行卷積,得到兩者相似性響應(yīng)。
(5)由于本文改進(jìn)的網(wǎng)絡(luò)結(jié)構(gòu)為全卷積網(wǎng)絡(luò),因此對(duì)網(wǎng)絡(luò)輸入圖片的尺寸沒(méi)有要求,可以滿足目標(biāo)模板與待追蹤圖像尺寸不同的需求。
需要指出的是,在邏輯上孿生網(wǎng)絡(luò)結(jié)構(gòu)是兩個(gè)輸入并行的輸入對(duì)應(yīng)兩個(gè)相同的網(wǎng)絡(luò),在實(shí)際算法實(shí)現(xiàn)中是兩個(gè)輸入串行輸入到同一個(gè)網(wǎng)絡(luò)得到結(jié)果。
基于上述描述,本論文所提出算法主要包含算法的前向過(guò)程與網(wǎng)絡(luò)的訓(xùn)練過(guò)程,前向流程圖如圖3,z、x分別表示追蹤目標(biāo)與待搜索圖像,φ表示神經(jīng)網(wǎng)絡(luò)特征提取過(guò)程,由特征圖到追蹤結(jié)果的計(jì)算過(guò)程記為h,R表示目標(biāo)相對(duì)上一幀的位移。算法的前向過(guò)程可用公式(2)描述。算法的訓(xùn)練過(guò)程是指使用大型訓(xùn)練數(shù)據(jù)集進(jìn)行網(wǎng)絡(luò)訓(xùn)練,提升網(wǎng)絡(luò)特征表示能力的過(guò)程。
圖3 算法流程Fig.3 Pipeline of our proposed algorithm
計(jì)算過(guò)程h的描述如式(3)~式(7),本文所使用網(wǎng)絡(luò)φ為全卷積神經(jīng)網(wǎng)絡(luò),不需要目標(biāo)圖像尺寸與待搜索圖像具有同樣尺寸,使待搜索圖像具有更大的尺寸。令目標(biāo)圖像在待搜索圖像上進(jìn)行平移窗口的相似計(jì)算得到相似相應(yīng)圖s_map。此處的計(jì)算過(guò)程被描述為一個(gè)互相關(guān)運(yùn)算,計(jì)算過(guò)程如公式(3)和圖4。經(jīng)互相關(guān)計(jì)算后的特征圖尺寸為17×17,進(jìn)行16 倍上采樣得到272×272 尺寸的相似相應(yīng)圖,以保持尺寸與輸入圖像相近,利于后續(xù)目標(biāo)位置映射。
圖4 互相關(guān)運(yùn)算示意圖Fig.4 Schematic of cross-correlation operation
依據(jù)公式(3)中的相似相應(yīng)圖,獲取其響應(yīng)值最大位置的坐標(biāo)與上一時(shí)刻k 的目標(biāo)位置作差,得到目標(biāo)在相應(yīng)圖上相對(duì)上一幀的位移R'。
本論文中輸入待搜索圖像x尺寸為255×255,將R'k+1經(jīng)過(guò)網(wǎng)絡(luò)反向運(yùn)算可以得到目標(biāo)在待搜索圖像上相對(duì)上一幀的位移Rk+1,計(jì)算過(guò)程如公式(5)。其中strdide 表示在網(wǎng)絡(luò)前向特征提取過(guò)程中總步長(zhǎng),在本文為8,即表示在17*17 的相似相應(yīng)圖中相鄰1 個(gè)像素則在255×255 圖像中相鄰8 個(gè)像素。
其中,σ 表示時(shí)序信息。追蹤過(guò)程中,為提升算法速度,本文所提出方法結(jié)合追蹤的時(shí)序信息:在k+1時(shí)刻的待搜索圖像xk+1的圖像中心為以k時(shí)刻目標(biāo) 尺寸與位置Rk(ck,yk,wk,hk) 的中心(ck,yk),尺寸為C,并在輸入網(wǎng)絡(luò)前將xk+1尺寸調(diào)整為255×255。
尺寸C與上一幀目標(biāo)尺寸相關(guān),自適應(yīng)調(diào)整搜索區(qū)域?yàn)樯弦粠繕?biāo)尺寸的4 倍以上。公式(5)的提出,保證了追蹤過(guò)程的前后時(shí)序關(guān)聯(lián),從而避免了航天器同類部件對(duì)追蹤過(guò)程的干擾。定義目標(biāo)位置為pos,則最終預(yù)測(cè)的目標(biāo)位置為:
為了得到更加準(zhǔn)確的追蹤結(jié)果,待搜索圖像xk+1使用多個(gè)尺度下的相似計(jì)算結(jié)果,選取最高相應(yīng)作 為追蹤 結(jié)果,尺度因 子l為1.037 5[?2,?0.5,1]。
網(wǎng)絡(luò)訓(xùn)練目的是提高公式(3)中φ的特征提取與判別能力,以判別方法對(duì)正負(fù)樣本進(jìn)行網(wǎng)絡(luò)訓(xùn)練,定義正樣本的概率如公式(8):
負(fù)樣本的概率如公式(9):
為評(píng)估網(wǎng)絡(luò)訓(xùn)練過(guò)程中當(dāng)前網(wǎng)絡(luò)模型的性能,計(jì)算交叉熵,使用logistic loss 作為孿生網(wǎng)絡(luò)結(jié)構(gòu)的損失函數(shù),如公式(10),并使用誤差反向傳播的方式訓(xùn)練網(wǎng)絡(luò):
其中:v表示樣本-搜索圖像的實(shí)際值,y∈{+1,?1}表示該位置的標(biāo)注真值。訓(xùn)練過(guò)程中,利用全卷積網(wǎng)絡(luò)的性質(zhì):包含模板圖像和較大的搜索圖像。通過(guò)窗口滑動(dòng)方式,將產(chǎn)生許多有效的樣本,這些樣本構(gòu)成了一個(gè)以v值為基礎(chǔ)的圖D→R。定義圖D的損失為圖中點(diǎn)損失的平均值,即有:
對(duì)圖D中的每一點(diǎn)u都需要一個(gè)真值標(biāo)注y[u]∈{+1,?1},網(wǎng)絡(luò)φ中的卷積核參數(shù)θ在實(shí)驗(yàn)中以pytorch 框架通過(guò)隨機(jī)梯度下降法最小化公式(11)所描述問(wèn)題得到(12):
訓(xùn)練過(guò)程中忽略所跟蹤目標(biāo)的具體類別,并在不破壞圖像長(zhǎng)寬比的情況下對(duì)每幀圖像中跟蹤目標(biāo)的長(zhǎng)寬比進(jìn)行歸一化。通過(guò)判斷得分圖中每一點(diǎn)距離目標(biāo)中心c 的距離與E(以中心c 為圓點(diǎn),與網(wǎng)絡(luò)步長(zhǎng)k相關(guān))的大小關(guān)系,來(lái)決定該點(diǎn)為正樣本還是負(fù)樣本,劃分方式如(13)。
由于正負(fù)樣本分布的不平衡,對(duì)正負(fù)樣本的損失進(jìn)行加權(quán)融合,以提高網(wǎng)絡(luò)訓(xùn)練性能,防止不平衡的樣本主導(dǎo)整個(gè)訓(xùn)練過(guò)程。
訓(xùn)練數(shù)據(jù)采用中科院自動(dòng)化所開(kāi)放的GOT-10k 數(shù)據(jù)集[19],該數(shù)據(jù)集是由中國(guó)科學(xué)院自動(dòng)化研究所發(fā)布的目標(biāo)跟蹤數(shù)據(jù)集,目標(biāo)均為在現(xiàn)實(shí)世界中移動(dòng)的物體,場(chǎng)景為通用場(chǎng)景。目標(biāo)跟蹤問(wèn)題本質(zhì)上是對(duì)類別不敏感的圖像二分類問(wèn)題。本論文使用無(wú)數(shù)據(jù)泄露的方式,從GOT-10k 訓(xùn)練集中隨機(jī)選取500 段視頻作為訓(xùn)練數(shù)據(jù),訓(xùn)練數(shù)據(jù)中不包含空間目標(biāo)數(shù)據(jù)。訓(xùn)練網(wǎng)絡(luò)的特征提取能力和判別目標(biāo)與背景的能力,成功解決了航天器數(shù)據(jù)不足的問(wèn)題。
測(cè)試數(shù)據(jù)選用ESA 開(kāi)放的人造衛(wèi)星仿真視頻。本論文所使用訓(xùn)練數(shù)據(jù)集不存在與測(cè)試數(shù)據(jù)集交叉的數(shù)據(jù),即不存在數(shù)據(jù)泄露現(xiàn)象。因此本實(shí)驗(yàn)可以驗(yàn)證本論文所提出的基于公開(kāi)數(shù)據(jù)驅(qū)動(dòng)進(jìn)行航天器部件追蹤的思路。本文所跟蹤目標(biāo)衛(wèi)星太陽(yáng)能帆板與衛(wèi)星主體。圖5 和圖6 所示分別為測(cè)試數(shù)據(jù)中所跟蹤的航天器主體及太陽(yáng)能帆板示例圖。
圖5 航天器主體Fig.5 Cabin of spacecraft
圖6 航天器太陽(yáng)能帆板Fig.6 Solar panel of spacecraft
圖7 是所選取測(cè)試視頻的部分?jǐn)?shù)據(jù),在這段視頻中,圖a 和d 存在衛(wèi)星整體的大幅度改變及目標(biāo)遮擋現(xiàn)象,圖a 和b 存在較大的光照條件變化,圖a 和c 存在較大幅度的目標(biāo)旋轉(zhuǎn)。本文所提出算法分別實(shí)現(xiàn)對(duì)衛(wèi)星太陽(yáng)能帆板以及衛(wèi)星主體部分的跟蹤,對(duì)以上所提到的挑戰(zhàn)均具有較好的魯棒性。
圖7 部分測(cè)試視頻數(shù)據(jù)Fig.7 Parts of testing video data
為評(píng)估算法跟蹤的精度,以跟蹤結(jié)果與真實(shí)標(biāo)注結(jié)果的交并比作為評(píng)價(jià)指標(biāo)衡量算法的性能。將跟蹤結(jié)果與真實(shí)結(jié)果的交并比定義如公式(14):
公式(14)中,如跟蹤結(jié)果與真實(shí)標(biāo)注結(jié)果重合度越高,則IOU(Intersection Over Union)值越高,反之則越低。對(duì)視頻序列每幀圖片計(jì)算算法結(jié)果與人工標(biāo)注的交并比,如公式(14)取平均值,其中res 表示每幀圖像的算法結(jié)果與真值標(biāo)注的交并比,計(jì)算追蹤平均重合率,其定義如公式(15):
為實(shí)現(xiàn)本文所提出算法,本文搭建如表2 所示實(shí)驗(yàn)環(huán)境作為算法運(yùn)行與測(cè)試環(huán)境。
實(shí)驗(yàn)過(guò)程中,測(cè)試視頻數(shù)據(jù)僅給出第一幀圖像中目標(biāo)的位置,經(jīng)訓(xùn)練后的算法模型僅使用這一幀樣本實(shí)現(xiàn)對(duì)整個(gè)測(cè)試視頻中目標(biāo)的預(yù)測(cè)。計(jì)算預(yù)測(cè)結(jié)果與標(biāo)注真值的交并比,并以該交并比作為追蹤成功與否的閾值,可繪制追蹤成功率曲線。圖8 展示了對(duì)航天器太陽(yáng)能帆板及主體的跟蹤結(jié)果圖。
如圖8 所示,本文所提出算法對(duì)航天器太陽(yáng)能帆板的跟蹤結(jié)果較為穩(wěn)定,可以較為準(zhǔn)確的跟蹤航天器右側(cè)帆板,由于搜索策略側(cè)重于上一幀目標(biāo)所在位置,有效避免了算法將航天器左側(cè)太陽(yáng)能帆板誤識(shí)別為跟蹤目標(biāo)。本文所提出算法對(duì)航天器主體跟蹤結(jié)果較為準(zhǔn)確,克服了航天器艙體旋轉(zhuǎn),光照變化,外觀變化的多種挑戰(zhàn),沒(méi)有出現(xiàn)目標(biāo)丟失的現(xiàn)象。
圖8 航天器主體與太陽(yáng)能帆板追蹤結(jié)果Fig.8 Tracking results of spacecraft cabin and solar panel
使用基于交并比的追蹤成功率評(píng)價(jià)本方法,為得到更加客觀的評(píng)估效果,本實(shí)驗(yàn)與當(dāng)前應(yīng)用較為廣泛的KCF 與Staple 算法進(jìn)行分類別對(duì)比,分別對(duì)比其對(duì)航天器主體與太陽(yáng)能帆板的追蹤精度得到追蹤成功率曲線,如圖9 和圖10,算法速度為38 FPS。圖中紅色表示本方法,綠色表示KCF 算法,藍(lán)色表示Staple 算法,由圖可知本文提出方法完全包裹了另外兩個(gè)對(duì)比算法。圖9 表示為艙體追蹤曲線,圖10 為太陽(yáng)能帆板追蹤曲線。本文提出提出方法在艙體與太陽(yáng)能帆板追蹤結(jié)果交并比達(dá)到57.2%與73.1%,遠(yuǎn)遠(yuǎn)優(yōu)于KCF 與Staple。
圖9 航天器主體追蹤成功率曲線Fig.9 Success plot of spacecraft cabin tracking
圖10 航天器太陽(yáng)能帆板追蹤成功率曲線Fig.10 Success plot of spacecraft solar panel tracking
本文針對(duì)航天器部件追蹤問(wèn)題提出基于孿生網(wǎng)絡(luò)的部件追蹤算法,設(shè)計(jì)基于改進(jìn)AlexNet的孿生網(wǎng)絡(luò)結(jié)構(gòu)將部件模板與待搜索圖片映射到相同的特征空間,映射結(jié)果相似度最高處為追蹤結(jié)果。在追蹤過(guò)程中采用以上一幀追蹤結(jié)果為中心進(jìn)行搜索的策略,在ESA 開(kāi)源的公開(kāi)視頻數(shù)據(jù)上驗(yàn)證,在艙體與太陽(yáng)能帆板追蹤結(jié)果交并比達(dá)到57.2% 和73.1%,速度達(dá)到38 FPS,基本滿足空間任務(wù)所需。