王 林,鄭有玲
(西安理工大學(xué) 自動(dòng)化與信息工程學(xué)院,西安 710048)
目標(biāo)跟蹤是計(jì)算機(jī)視覺領(lǐng)域的一個(gè)主流方向[1],而長期目標(biāo)跟蹤因更接近實(shí)際應(yīng)用而受到越來越多的關(guān)注[2].但對(duì)于長期目標(biāo)跟蹤算法中存在的形變、運(yùn)動(dòng)模糊、遮擋及目標(biāo)短暫出視野等問題,所以,建立一個(gè)同時(shí)具有魯棒性和良好運(yùn)行速度的長期目標(biāo)跟蹤系統(tǒng)是有必要的.
相關(guān)性,通常是指兩種事物中存在的聯(lián)系.對(duì)于信號(hào)處理中的函數(shù)來說,相關(guān)即判斷兩個(gè)函數(shù)在某時(shí)刻的相似程度.在目標(biāo)跟蹤中,相關(guān)濾波方法的本質(zhì)就是在運(yùn)動(dòng)模型預(yù)測(cè)的下一幀目標(biāo)位置中找到與給定目標(biāo)產(chǎn)生最大響應(yīng)的區(qū)域來作為下一幀中的目標(biāo)位置.相關(guān)濾波[3]由于其性能優(yōu)越,研究者一直對(duì)其進(jìn)行研究.2010年,文獻(xiàn)[4]首次將相關(guān)濾波用于目標(biāo)跟蹤,MOSSE算法也是“相關(guān)”思想在目標(biāo)跟蹤中應(yīng)用的開端,該算法的目的就是尋找一個(gè)能在目標(biāo)位置響應(yīng)最大的濾波器,且使用傅里葉變換將相關(guān)運(yùn)算轉(zhuǎn)換到頻域,很大程度上提高了算法的運(yùn)行速度.文獻(xiàn)[5]提出了CSK 算法,利用循環(huán)矩陣的特性達(dá)到了密集采樣的目的,增加了樣本的可分性.隨后,文獻(xiàn)[6]提出KCF(kernelized correlation filter)算法,它拓寬了已有算法所使用的特征范圍,選擇了對(duì)方向敏感的方向梯度直方圖特征,提高了算法的精度.同時(shí)文獻(xiàn)[7]提出一種利用顏色特征的目標(biāo)跟蹤算法,也獲得不錯(cuò)的效果.隨著深度學(xué)習(xí)的發(fā)展,文獻(xiàn)[8]提出一種利用高級(jí)語義特征的ECO 算法,該算法同時(shí)壓縮了訓(xùn)練樣本空間,在提升算法性能的同時(shí)加快了算法運(yùn)行速度.文獻(xiàn)[9]提出的算法根據(jù)不同的應(yīng)用場(chǎng)景采用不同的特征選擇,使算法可以應(yīng)對(duì)更多干擾因素.
在目標(biāo)跟蹤的過程中,目標(biāo)會(huì)因嚴(yán)重遮擋和出視野造成目標(biāo)丟失,為解決這一問題,2011年,文獻(xiàn)[10]提出TLD 算法,是一種將目標(biāo)檢測(cè)和目標(biāo)跟蹤相結(jié)合的跟蹤器,實(shí)現(xiàn)在目標(biāo)丟失后重新出現(xiàn)在視野時(shí),檢測(cè)器可以再次捕捉到目標(biāo).由于其使用特征點(diǎn)跟蹤的模式,跟蹤的進(jìn)度較低.為提高精度,文獻(xiàn)[11] 提出了LCT 算法,一種基于相關(guān)濾波和隨機(jī)蕨分類器結(jié)合的長時(shí)目標(biāo)跟蹤器,有效提高了算法的精度,但檢測(cè)范圍存在局限性.
綜上,針對(duì)長期目標(biāo)跟蹤算法LCT 出現(xiàn)的特征使用單一和重檢分類器的局限性問題,本文在將目標(biāo)跟蹤任務(wù)分解為目標(biāo)的平移和尺度估計(jì)的基礎(chǔ)上,融合了改進(jìn)的方向梯度直方圖特征、顏色特征和局部二值模式特征,提高跟蹤器的魯棒性;用孿生網(wǎng)絡(luò)實(shí)例搜索替代了LCT 中用于目標(biāo)重檢的蕨分類器,解決了蕨分類器存在的檢測(cè)范圍局限性的問題.
長期相關(guān)濾波算法(long-term correlation tracking,LCT)是基于相關(guān)濾波器的跟蹤算法,它從單一框架中學(xué)習(xí)了兩個(gè)回歸模型.一個(gè)是時(shí)間上下文回歸器,利用目標(biāo)和周圍時(shí)間相關(guān)性,積極適應(yīng)平移估計(jì)來解決重大變形和遮擋問題;另一個(gè)是目標(biāo)回歸器,僅模擬目標(biāo)外觀,并建立外觀金字塔以進(jìn)行尺度估計(jì).目標(biāo)回歸器同時(shí)也作為判別回歸模型,用最大響應(yīng)值評(píng)估跟蹤結(jié)果置信度,并使用閾值 τr來控制檢測(cè)器是否被激活.選擇隨機(jī)蕨分類器作為在目標(biāo)跟蹤失敗時(shí)的重檢測(cè)器.
LCT 跟蹤器將跟蹤任務(wù)分解成位置估計(jì)和尺度估算兩個(gè)子任務(wù).分別由兩個(gè)相關(guān)濾波器Rc和Rt來實(shí)現(xiàn).
相關(guān)濾波器的獲得方式,是利用循環(huán)矩陣的性質(zhì)對(duì)大小為M×N個(gè)像素的圖像進(jìn)行密集采樣得到更多的循環(huán)樣本即xm,n(m,n),訓(xùn)練嶺回歸分類器如式(1):
其中,φ(xm,n)是核空間映射函數(shù);ω為所求濾波器;λ為正則化項(xiàng)參數(shù).
最終計(jì)算求得ω的具體表達(dá)式為φ(xm,n),對(duì)系數(shù)α做傅里葉變換如式(2):
在新的圖像幀中,需要對(duì)每一個(gè)預(yù)估的目標(biāo)框計(jì)算相應(yīng)的輸出值,計(jì)算方式為:
所得響應(yīng)的最大值被認(rèn)作新一幀中感興趣區(qū)域的位置.
在更新機(jī)制和目標(biāo)重檢測(cè)方面,LCT 算法均使用設(shè)定閾值的方法來控制是否進(jìn)行模型更新和目標(biāo)重檢.
當(dāng)濾波器的響應(yīng)值yi大于閾值τa時(shí),更新濾波器Rt,模型更新方式如式(4)、式(5):
其中,t代表當(dāng)前幀,α是學(xué)習(xí)速率.
當(dāng)目標(biāo)發(fā)生遮擋或出視野時(shí),算法會(huì)出現(xiàn)跟丟目標(biāo)的情況.這時(shí)為了保持跟蹤器模型的準(zhǔn)確性,要停止目標(biāo)模型更新.為此,LCT 算法通過判定跟蹤框響應(yīng)值與規(guī)定閾值大小來判定是否更新模型.
跟蹤器在新一幀所得目標(biāo)框的響應(yīng)值記為該幀的置信度,研究者經(jīng)多次實(shí)驗(yàn)選定置信度閾值,低于該值,證明所得目標(biāo)錯(cuò)誤率較高,需要再次檢測(cè).此時(shí)暫停模型更新,開始進(jìn)行目標(biāo)重檢測(cè).選擇將高置信度的每個(gè)跟蹤結(jié)果調(diào)整為15×15 大小,以形成灰度特征向量來訓(xùn)練隨機(jī)蕨分類器.同時(shí),將重檢器獲得到的檢測(cè)框位置作為這一幀圖像確定的目標(biāo)位置,并繼續(xù)進(jìn)行跟蹤.
選擇合適的特征有助于跟蹤器更好的學(xué)習(xí)目標(biāo)的外觀模型.HOG 特征,對(duì)幾何方向敏感而對(duì)顏色變化不敏感.為了得到一個(gè)性能優(yōu)良的跟蹤器,本文將多種特征融合在一起,即使用局部二值模式(LBP)特征、改進(jìn)的方向梯度直方圖(FHOG)特征以及顏色(CN)特征進(jìn)行融合.
2.1.1 FHOG 特征
FHOG 特征由Felzenszwalb 等人[12]提出,它在HOG(histogram of oriented gradient)特征的基礎(chǔ)上利用每個(gè)cell 的4 個(gè)鄰域進(jìn)行歸一化和截?cái)嗵幚?由于方向敏感的劃分方式和不敏感劃分方式在不同目標(biāo)類別上表現(xiàn)效果各異,故選擇對(duì)方向敏感的(18 維)特征和對(duì)方向不敏感的(9 維)特征,但特征維度太大對(duì)特征在行列兩方向上累加,進(jìn)行特征降維提取方式如圖1所示.
圖1 FHOG 特征提取原理圖
2.1.2 LBP 特征
LBP(local binary pattern)是局部二值模式,體現(xiàn)圖像的局部紋理特征,可以有效對(duì)抗旋轉(zhuǎn)和灰度的變化.提取方式為:選中圖像中的某一像素并將其作為閾值,以其為中心建立3×3 的窗口,讓每一小格像素值分別與閾值比較.若此值大于或等于閾值,則在LBP 編碼圖中,對(duì)應(yīng)位置記為1,反之記為0.對(duì)產(chǎn)生8 位二進(jìn)制數(shù)十進(jìn)制化,得到LBP 編碼值.LBP 特征是對(duì)目標(biāo)外觀模型的紋理特征的體現(xiàn),反映物體表面的變化.它的提取示意圖如圖2所示.
圖2 LBP 特征提取原理圖
2.1.3 CN 特征
CN(color names)特征是圖像重要的特征之一,但顏色特征對(duì)一些形變不敏感,在一些判別性場(chǎng)景中應(yīng)用廣泛.CN 顏色特征應(yīng)對(duì)目標(biāo)形變效果不佳,適用于不涉及目標(biāo)空間位置的情景.相比其他特征,顏色特征以低復(fù)雜度獲得研究者的青睞.該特征將傳統(tǒng)的RGB 空間的特征映射為11 維度的CN 特征,在面對(duì)光照變化的干擾因素時(shí)可以較好地應(yīng)對(duì)和處理,從而保證跟蹤效果的準(zhǔn)確性.
2.1.4 特征融合策略
對(duì)當(dāng)前圖像序列采用FHOG 特征、LBP 特征、CN 特征3 種特征根據(jù)各自權(quán)重實(shí)現(xiàn)融合.首先用公式對(duì)3 個(gè)特征均訓(xùn)練一個(gè)外觀模型,它們?yōu)樵诟櫟倪^程中,分別由式(6)-式(8)計(jì)算3 個(gè)表現(xiàn)模型與新一幀圖像的相關(guān)響應(yīng)圖.
α、β、γ分別為FHOG 特征、LBP 特征、CN 特征的融合權(quán)重.最后,根據(jù)所得的融合權(quán)重得到最終的響應(yīng)如式(12):
本文提出使用基于深度學(xué)習(xí)的重檢測(cè)器.用全局孿生網(wǎng)絡(luò)實(shí)例搜索SINT 來改善隨機(jī)蕨分類器對(duì)目標(biāo)重檢測(cè)范圍的局限性,從而提高重檢測(cè)器的跟蹤性能.
SINT 網(wǎng)絡(luò)模型如圖3所示,左右兩邊網(wǎng)絡(luò)結(jié)構(gòu)相同.左邊網(wǎng)絡(luò)存儲(chǔ)目標(biāo)模板信息,右邊網(wǎng)絡(luò)用于目標(biāo)區(qū)域特征提取,孿生網(wǎng)絡(luò)的工作核心是學(xué)習(xí)一個(gè)匹配函數(shù),能夠?qū)⒚糠鶊D像對(duì)應(yīng)特征空間中的一個(gè)特征向量.訓(xùn)練時(shí),度量距離即向量差異,最終,通過擬合此距離來表示與輸入圖像的相似度差異.
圖3 SINT 模型的整體結(jié)構(gòu)
當(dāng)SINT 在外部視頻中學(xué)習(xí)一個(gè)用于跟蹤的通用匹配函數(shù),可以穩(wěn)健地處理一個(gè)對(duì)象在視頻序列中可能經(jīng)歷的常見外觀變化.學(xué)習(xí)到的函數(shù)可以不需要任何調(diào)整,直接應(yīng)用到新的跟蹤視頻中.該視頻中的目標(biāo)對(duì)象是之前沒有看到過的對(duì)象.故本文利用ALOV 數(shù)據(jù)集中訓(xùn)練好的SINT 網(wǎng)絡(luò)模型參數(shù).當(dāng)重檢模塊被激活時(shí),SINT 簡單的將第一幀中初始目標(biāo)區(qū)域與新幀中的候選目標(biāo)區(qū)域進(jìn)行匹配,并通過匹配函數(shù),返回最相似的區(qū)域.候選框的選擇采用半徑采樣策略,即圍繞前一幀的預(yù)測(cè)位置,在不同半徑的圓上均勻采樣位置,搜索半徑設(shè)置為第一幀中初始框的較長軸.將重檢響應(yīng)值與閾值 τr比較,若大于閾值則確定目標(biāo)位置;若小于閾值則在更大的搜索區(qū)域內(nèi)采用滑動(dòng)窗口生成目標(biāo)候選區(qū)域最終檢測(cè)結(jié)果如式(13):
改進(jìn)的算法流程圖如圖4所示,具體步驟描述如算法1.
圖4 改進(jìn)的算法流程圖
算法1.改進(jìn)算法輸入:初始目標(biāo)中心點(diǎn)位置pos1 與尺度s1.RcRt輸出:輸出目標(biāo)估計(jì)狀態(tài)中心點(diǎn)位置post 與尺度st.兩個(gè)濾波器模型和 .Step 1.根據(jù)pos1 和s1,從第1 幀中裁剪搜索窗口并提取3 種特征.Rc Step 2.用 和相關(guān)濾波分?jǐn)?shù)計(jì)算相關(guān)響應(yīng)圖yt 估計(jì)新的目標(biāo)中心點(diǎn)位置post.st=argmax s(max(y1),max(y2),···,max(ys))Step 3.在新的目標(biāo)中心點(diǎn)位置post 周圍構(gòu)建目標(biāo)金字塔,然后用濾波器Rt 和式估計(jì)最優(yōu)尺度st.max(ys)>τr Step 4.使用最優(yōu)尺度下的響應(yīng)值來確定跟蹤結(jié)果的置信度,若執(zhí)行Step 6 否則激活重檢模塊.τr Step 5.使用孿生網(wǎng)絡(luò)實(shí)例搜索SINT 搜索目標(biāo)的新位置,若新位置post′的響應(yīng)值大于 ,則post=post′.max(yi)>τa Step 6.若,則使用式(4)、式(5)更新模型.Step 7.若序列結(jié)束,則停止算法,否則重復(fù)Step 3~Step 6.
本文所提算法的核相關(guān)濾波器的參數(shù)設(shè)置和LCT算法設(shè)置一致.對(duì)于重檢器孿生網(wǎng)絡(luò),訓(xùn)練時(shí),總共從ALOV 數(shù)據(jù)集中采樣了60 000 對(duì)幀,使用ImageNet預(yù)先訓(xùn)練好的網(wǎng)絡(luò)參數(shù)Siamese 網(wǎng)絡(luò)進(jìn)行微調(diào).初始設(shè)定學(xué)習(xí)率為0.001、權(quán)重衰減為0.001.學(xué)習(xí)率每隔兩個(gè)周期下降10 倍.當(dāng)驗(yàn)證損失不再減少時(shí),停止調(diào)優(yōu).
算法的實(shí)驗(yàn)代碼在LCT 的開源的Matlab 代碼上進(jìn)行改進(jìn).將重檢測(cè)模塊用訓(xùn)練好的孿生網(wǎng)絡(luò)實(shí)例搜索代替原有算法中的隨機(jī)蕨分類器,使用的軟件平臺(tái)為Matlab 2020a.硬件配置為:NVIDIA GXT 1070 GPU,8 GB 內(nèi)存,使用Caffe 深度學(xué)習(xí)框架.
本文選擇重疊成功率(overlap success rate,OSR),距離精度(distance precision,DP)和選擇幀率(frame per second,FPS)評(píng)測(cè)算法且本文都選擇采用一次性評(píng)估方式,即只在視頻序列第一幀進(jìn)行初始化.
重疊成功率是指給定的標(biāo)注框與算法得到的實(shí)際框之間的重疊率大于閾值的幀數(shù)與總幀數(shù)的比.本文閾值選擇0.5.重疊得分定義如式(14):
其中,Bt表示實(shí)際跟蹤得到的框,Bgt表示標(biāo)注框,|·|表示區(qū)域內(nèi)的像素?cái)?shù).
中心位置誤差CLE 指的是實(shí)際框中心(xt,yt)與標(biāo)注框中心(xgt,ygt)的歐氏距離.
距離精度是指中心位置誤差小于設(shè)定閾值的視頻幀數(shù)占總幀數(shù)的比例.本文閾值為20 pixels.
使用幀率來評(píng)估算法的運(yùn)行速度.
由于OTB100 公開數(shù)據(jù)集涵蓋了大量的具有挑戰(zhàn)性情況的視頻集,包含遮擋、形變、運(yùn)動(dòng)模糊、光照變化、目標(biāo)出視野等.為了與其他算法進(jìn)行對(duì)比,將本文與4 種跟蹤算法進(jìn)行對(duì)比,它們分別是LCT、LCT+、KCF、ECO.表1 為實(shí)驗(yàn)所得數(shù)據(jù),圖5 為5 種算法在OTB100 數(shù)據(jù)集上得到的精度曲線圖和成功率曲線圖.由表1 可知,本文算法精確度為80.7%,重疊成功率為71.6%,運(yùn)行速率為16.5 fps,與原始算法對(duì)比,本文算法的距離精度和重疊成功率分別提高了13%和10.3%.相較于深度學(xué)習(xí)的目標(biāo)跟蹤算法,本文算法在與其性能相當(dāng)?shù)幕A(chǔ)上,運(yùn)行速度為16.5 fps 可以實(shí)現(xiàn)實(shí)時(shí)跟蹤.圖6、圖7、圖8 分別為遮擋、尺度變化和運(yùn)動(dòng)模糊情況下的結(jié)果對(duì)比圖.由對(duì)比得出,與主流算法相比,本文提出算法的抗干擾能力更強(qiáng),也更具魯棒性.
圖5 OTB100 數(shù)據(jù)集的結(jié)果對(duì)比
圖6 OTB100 的遮擋數(shù)據(jù)集結(jié)果對(duì)比
圖7 OTB100 的尺度變化數(shù)據(jù)集結(jié)果對(duì)比
圖8 OTB100 的運(yùn)動(dòng)模糊數(shù)據(jù)集結(jié)果對(duì)比
表1 在OTB100 數(shù)據(jù)集上5 種跟蹤算法對(duì)比
從實(shí)驗(yàn)視頻中選取5 個(gè)跟蹤成功的視頻對(duì)本文算法與主流算法進(jìn)行定性分析.所選視頻序列存在遮擋(OCC)、尺度變化(SV)、形變(DEF)、運(yùn)動(dòng)模糊(MB)等不同的挑戰(zhàn).跟蹤結(jié)果如圖9所示.
如圖9所示,在圖9(a)Jogging和圖9(e)Learning視頻序列中,所有算法在目標(biāo)沒有被遮擋時(shí),都能穩(wěn)定的跟蹤,圖9(a)序列在53 幀及圖9(e)序列262 幀、334幀在目標(biāo)發(fā)生嚴(yán)重遮擋時(shí),本文算法使用孿生網(wǎng)絡(luò)重檢器,目標(biāo)重現(xiàn)時(shí),可再次捕捉目標(biāo)并繼續(xù)跟蹤.而KCF算法和ECO 算法在目標(biāo)被嚴(yán)重遮擋后,無法重新跟蹤目標(biāo).在圖9(b)Bird2 中,目標(biāo)多次發(fā)生平面內(nèi)旋轉(zhuǎn)、平面外旋轉(zhuǎn)、形變、運(yùn)動(dòng)模糊等情況,51 幀目標(biāo)發(fā)生平面內(nèi)旋轉(zhuǎn)之后,發(fā)生了形變,我們的算法可以繼續(xù)跟蹤目標(biāo)而LCT 算法和KCF 出現(xiàn)了跟蹤失敗的情況,LCT+算法和ECO 算法的跟蹤框也發(fā)生了偏離.第91 幀到99 幀,目標(biāo)由于平面內(nèi)旋轉(zhuǎn)再次發(fā)生形變,而此時(shí)多個(gè)算法出現(xiàn)跟丟的情況,只有本文算法可以穩(wěn)定跟蹤目標(biāo).在圖9(c)BlurCar1 中,第786 幀出現(xiàn)嚴(yán)重的運(yùn)動(dòng)模糊狀況,跟蹤算法都能繼續(xù)跟蹤目標(biāo),而本文算法能更準(zhǔn)確地跟蹤目標(biāo).本文算法在目標(biāo)發(fā)生嚴(yán)重遮擋時(shí),由于目標(biāo)周圍的上下文仍可能保持不變,所以時(shí)間上下文回歸器Rc可以很好地應(yīng)對(duì)目標(biāo)嚴(yán)重遮擋,依然穩(wěn)定地跟蹤目標(biāo).
圖9 不同算法在5 個(gè)視頻序列上的跟蹤效果
針對(duì)長期相關(guān)濾波跟蹤算法特征單一、重檢精度低,提出了一種結(jié)合深度學(xué)習(xí)的多特征融合的長期目標(biāo)跟蹤算法.在LCT 算法的基礎(chǔ)上,使用FHOG 特征、LBP 特征、CN 特征來訓(xùn)練位置濾波器Rc和尺度濾波器Rt,當(dāng)目標(biāo)發(fā)生遮擋或出視野時(shí),采用選定閾值判斷是否激活孿生網(wǎng)絡(luò)重檢器.在目標(biāo)位置構(gòu)建目標(biāo)金字塔及尺度濾波器Rt判斷目標(biāo)尺度并與相應(yīng)閾值來判斷是否更新目標(biāo)模型.本文的算法在OTB100 數(shù)據(jù)集上進(jìn)行了實(shí)驗(yàn),得到的結(jié)果表明,與LCT 算法相比,本文算法在跟蹤精度和覆蓋成功率上都有所提高;和一些相關(guān)算法對(duì)比,本文算法的跟蹤性能有所提升.但在運(yùn)行速率上有待提高.