位寶燕 楊紹清 劉松濤
摘要:在多目標(biāo)跟蹤中,目標(biāo)尺度變化和姿態(tài)變化容易導(dǎo)致目標(biāo)丟失,本文將時空上下文視覺(STC)單目標(biāo)跟蹤算法應(yīng)用于多目標(biāo)跟蹤,該算法通過構(gòu)造各目標(biāo)和其上下文區(qū)域的時空關(guān)系模型,計算置信圖得到下一幀圖像的目標(biāo)位置,并且對窗口大小進(jìn)行自適應(yīng)變換,當(dāng)目標(biāo)發(fā)生旋轉(zhuǎn)等姿態(tài)變化或者尺度變化時,窗口可以根據(jù)目標(biāo)變化而變化。實驗結(jié)果表明,該算法能夠準(zhǔn)確跟蹤多個運(yùn)動目標(biāo),并在目標(biāo)姿態(tài)或者尺度變化時能夠自適應(yīng)的檢測出目標(biāo)變化,并穩(wěn)定跟蹤目標(biāo)。
關(guān)鍵詞:多目標(biāo)圖像跟蹤;時空上下文;自適應(yīng)窗口;尺度變化
中圖分類號? TP391.4? ? ? 文獻(xiàn)標(biāo)識碼? A
文章編號:1009-3044(2019)17-0207-04
開放科學(xué)(資源服務(wù))標(biāo)識碼(OSID):
目標(biāo)跟蹤是計算機(jī)視覺的重要研究領(lǐng)域之一,目標(biāo)跟蹤的本質(zhì)是將非平穩(wěn)的、隨時間變化的目標(biāo)和背景圖像流進(jìn)行處理,提取出圖像流中目標(biāo)的信息[1]。在視頻序列中如何實現(xiàn)對目標(biāo)進(jìn)行穩(wěn)健、實時跟蹤,是計算機(jī)視覺領(lǐng)域的熱點問題[2]。其中,多目標(biāo)跟蹤無論在軍事還是民用方面尤其重視。如軍事彈道導(dǎo)彈防御、空中預(yù)警、空中多目標(biāo)攻擊,海洋預(yù)警(水面艦艇或潛艇),民用方面的交通監(jiān)控或者空中飛機(jī)管制,醫(yī)療診斷等。
目前,經(jīng)過近年來的深入研究與發(fā)展,多目標(biāo)跟蹤技術(shù)取得了很大的進(jìn)步,但是由于監(jiān)控設(shè)備距離目標(biāo)較遠(yuǎn)、多目標(biāo)在運(yùn)動過程發(fā)生姿態(tài)變化或者尺度變化,監(jiān)控場景太過復(fù)雜等都導(dǎo)致無法穩(wěn)定跟蹤多個目標(biāo),上述難題一直無法被克服。
多目標(biāo)跟蹤即確定圖像序列中的各個目標(biāo)的位置坐標(biāo),大致可以分為兩類方法:基于目標(biāo)表示的方法和基于目標(biāo)定位的方法。Jepson等人提出了基于紋理特征的自適應(yīng)表觀模型[3],然而當(dāng)目標(biāo)發(fā)生尺度變化或者被遮擋時,無法精確地跟蹤目標(biāo);Avidan結(jié)合光流法與支持向量機(jī)算法用于跟蹤車輛[4],使用Boosting分類器跟蹤運(yùn)動目標(biāo),但是隨著分類器訓(xùn)練中誤差積累使分類器易發(fā)生漂移。在基于目標(biāo)定位的算法中,基于Meanshift的跟蹤算法較為典型,然而Meanshift算法[5]適用于目標(biāo)外觀不變的場景;也可以將目標(biāo)跟蹤問題轉(zhuǎn)化為貝葉斯濾波理論框架下的預(yù)測目標(biāo)狀態(tài)概率問題,一般使用Kalman濾波對目標(biāo)在下一幀的位置進(jìn)行預(yù)測,當(dāng)噪聲為非高斯分布時,可以使用粒子濾波[6]預(yù)測目標(biāo)在下一時刻的位置,但是當(dāng)目標(biāo)發(fā)生姿態(tài)變化時仍不能獲得很好的跟蹤效果。近幾年研究發(fā)現(xiàn)跟蹤時目標(biāo)的上下文信息(周圍環(huán)境)與目標(biāo)之間存著密切的相關(guān)性,所以很多研究者開始研究如何運(yùn)用這種相關(guān)性對目標(biāo)進(jìn)行跟蹤。文獻(xiàn)[7-9]中利用上下文信息對目標(biāo)進(jìn)行跟蹤,跟蹤效果好。Yang和Wu等人[10]充分利用目標(biāo)上下文區(qū)域的空間關(guān)系有效地解決了目標(biāo)的遮擋問題。張開華等人[11]融合了貝葉斯框架和相關(guān)濾波將時空上下文算法改進(jìn)地更完善,但是該算法對目標(biāo)尺度和姿態(tài)變化時性能欠佳。
綜上所述,本文將時空上下文視覺(STC)單目標(biāo)跟蹤算法[12]應(yīng)用于多目標(biāo)跟蹤,構(gòu)建了各目標(biāo)及其上下文區(qū)域的時空關(guān)系模型,計算置信圖得到下一幀圖像的目標(biāo)位置,運(yùn)算速度快,并且對窗口大小能夠進(jìn)行自適應(yīng)變換,當(dāng)目標(biāo)發(fā)生旋轉(zhuǎn)等姿態(tài)變化或者尺度變化時,窗口可以根據(jù)目標(biāo)變化而變化。實驗結(jié)果表明,本文算法可以有效地解決多目標(biāo)跟蹤時姿態(tài)變化或者尺度變化等復(fù)雜問題,能夠?qū)崟r、準(zhǔn)確、魯棒地跟蹤多個目標(biāo)。
1 自適應(yīng)窗口調(diào)整的時空上下文
時空上下文(STC)是一種基于貝葉斯框架下的快速跟蹤算法,利用目標(biāo)周圍區(qū)域的時間信息和空間信息確定目標(biāo)位置[13]。時間信息指的是連續(xù)幀間目標(biāo)本身所能夠提供的位置、速度、尺度姿態(tài)等信息的傳遞,空間信息指的是目標(biāo)和上下文區(qū)域內(nèi)的背景之間的某種相關(guān)性,當(dāng)目標(biāo)變化時,空間信息可以區(qū)分目標(biāo)和干擾背景。
1.1 STC算法公式化表示
貝葉斯框架下的目標(biāo)跟蹤關(guān)鍵是得到后驗概率函數(shù),也就是計算一個估計目標(biāo)位置的似然函數(shù)置信圖。
式中,[X=R2]是目標(biāo)的位置區(qū)域,[o]是目標(biāo)在場景中出現(xiàn)的情況,[X*∈X]是目標(biāo)區(qū)域的中心點,[XC=I(Z),Z|Z∈ΩCX*]為上下文區(qū)域的特征表示,[IZ]表示位置Z點的像素灰度值,[ΩCX*]是中心位置[X*]的空間上下文區(qū)域。如圖1所示。
1.2 目標(biāo)模型的建立
1.2.1空間上下文模型
式(1)中,條件概率[Px|c(z),o]表示的是目標(biāo)中心位置和上下文區(qū)域的空間信息,具體定義為:
式中,[hscx-z]是對目標(biāo)中心位置[X*]和上下文區(qū)域內(nèi)任意點Z間的相對距離和方向的統(tǒng)計,該函數(shù)是非徑向?qū)ΨQ函數(shù),即[hscx-z≠hscx-z],因此可分辨出周圍相似物體,不易混淆。
1.2.2上下文先驗?zāi)P?/p>
式(1)中,[P(c(z)|o)]表示的是先驗概率,具體定義為:
式中,[Iz]是點Z的灰度值,用以描述目標(biāo)上下文區(qū)域Z的特征。[ω]是一個加權(quán)函數(shù),[a]是歸一化參數(shù),取值為[0,1],[σ]是一個尺度參數(shù),[σ2]為高斯函數(shù)方差,[ωσz-X*]是區(qū)域中心的加權(quán)高斯函數(shù)。
1.2.3置信圖
該算法中本質(zhì)是求出目標(biāo)的置信圖,但是我們需要對目標(biāo)進(jìn)行初始化。在給定目標(biāo)的位置[X*]的基礎(chǔ)上,我們通過下列公式來計算得到上下文區(qū)域任何一點X的似然得到的。目標(biāo)位置的置信圖模型由式(5)表示。
1.2.4快速學(xué)習(xí)空間上下文模型
基于置信圖函數(shù)式(5)和上下文先驗概率模型(3),快速學(xué)習(xí)得到空間上下文模型[Px|c(z),o],式(1)可表示為:
在離散狀態(tài)下,時域內(nèi)求積分的過程可以卷積轉(zhuǎn)化為頻域下的點積操作,并結(jié)合著快速傅立葉變換算法,可以提高計算速度,節(jié)省運(yùn)算時間。因此式(6)經(jīng)過快速傅立葉變換(FFT)算法加速后,得:
1.2.5位置的確定
目標(biāo)跟蹤其實是一個檢索的過程。手動標(biāo)記第一幀圖像中各目標(biāo),則在第t幀通過式(7)可以學(xué)習(xí)得到第t+1幀的各目標(biāo)空間上下文模型[htsc(x)]。該模型我們可以用來檢測第t+1幀的目標(biāo)位置,得到時空上下文模型后,我們就可以在新的一幀圖像中計算目標(biāo)的置信圖[cx]:
則新一幀各目標(biāo)的位置[X*]即為置信圖中的最大概率點相對應(yīng)的位置。
1.3 目標(biāo)模型的更新
目標(biāo)在跟蹤過程中外觀、尺度、光照等都在發(fā)生著變化,如果當(dāng)前的模型只含有初始的目標(biāo)樣本信息,當(dāng)目標(biāo)變化較大時,容易導(dǎo)致目標(biāo)丟失。因此需要更新目標(biāo)模板以適應(yīng)目標(biāo)的變化。但是,若更新目標(biāo)模型過快,誤差積累較快,容易產(chǎn)生漂移現(xiàn)象。在本算法中的模型更新策略是對時空上下文模型進(jìn)行更新:
1.4 自適應(yīng)窗口調(diào)整
在應(yīng)用場景中,場景和目標(biāo)都存在著動態(tài)性,隨著距離的變化,目標(biāo)的尺度也時刻在發(fā)生著變化,或隨著目標(biāo)姿態(tài)的變化,尺度也會發(fā)生變化,所以跟蹤窗口的大小在跟蹤過程中非常重要,如果跟蹤窗口太小或太大真實目標(biāo)會消失。為解決此問題,本文利用相似度反饋對目標(biāo)尺度進(jìn)行更新。
首先計算新一幀圖像目標(biāo)位置與目標(biāo)模板之間的歸一化距離[ρ]:
如果[ρ]大于預(yù)定義的閾值[e],則以不同的比例(即相機(jī)縮放或目標(biāo)進(jìn)場/離開)搜索目標(biāo)。在這種情況下,通過增加或減少目標(biāo)模板大小來對目標(biāo)尺寸進(jìn)行更新。通過這種方式,將以目標(biāo)模板的每個像素為中心的不同縮放矩形作為候選區(qū)域。通過將前一幀的目標(biāo)模板的尺寸乘以比例系數(shù)[κ]來確定不同縮放長方形的尺寸。跟蹤器包含兩個收縮和兩個增長比例系數(shù)。通過這種方式,使用四種不同的尺度在[Ω]內(nèi)搜索目標(biāo),考慮目標(biāo)尺寸在正方向和負(fù)方向上的變化。這種方法基于蒙特卡羅的目標(biāo)更新策略[14]。將當(dāng)前導(dǎo)致最大概率點的候選區(qū)域選擇為下一幀的目標(biāo)區(qū)域。
綜上,可以得出自適應(yīng)窗口調(diào)整的時空上下文多目標(biāo)跟蹤算法的整體流程圖如圖3所示。
2 仿真實驗與結(jié)果分析
本文算法可實現(xiàn)手動框選多目標(biāo)的實時跟蹤,仿真環(huán)境為Matlab語言,分別對兩個、三個等多目標(biāo)進(jìn)行跟蹤,利用VIVID視頻集[15]的兩個視頻序列進(jìn)行性能測試。參數(shù)設(shè)置部分,在基于時空上下文信息的位置計算中,目標(biāo)上下文區(qū)域的大小設(shè)置為初始幀目標(biāo)大小的兩倍。學(xué)習(xí)置信圖的過程中模型參數(shù)[α=2.25,β=1]。其中置信圖中的參數(shù)[σ]因為目標(biāo)尺度的改變需要進(jìn)行更新,則初始值設(shè)定為[a+b2](a和b分別是初始目標(biāo)模板的寬和高)。在尺度更新部分,相似度閾值[e=1]。比例系數(shù)[κ=0.8,0.9,1.1,1.2]。基于上述參數(shù)的設(shè)定,在所有的圖片序列中的參數(shù)值都是一樣的,具有廣范圍的應(yīng)用場景。下面列出了本文算法的跟蹤結(jié)果。
圖4 Walking序列中,對路上的行人進(jìn)行跟蹤,行人由近至遠(yuǎn)運(yùn)動,且其中一個行人目標(biāo)環(huán)境背景較為復(fù)雜,實驗結(jié)果表明,當(dāng)兩個目標(biāo)由近至遠(yuǎn)變化時,本文算法跟蹤目標(biāo)穩(wěn)定。
圖5EgTest01序列中,目標(biāo)逐漸由兩個變?yōu)槿齻€,最后增至六個,且目標(biāo)在運(yùn)動過程中,會發(fā)生大幅度的旋轉(zhuǎn)等表觀變化,從實驗結(jié)果中可以看出前180幀時,可以準(zhǔn)確地對目標(biāo)進(jìn)行跟蹤,180幀后對于左下方的目標(biāo)旋轉(zhuǎn)時,模板沒有更新,這是由于模板初始化時,對目標(biāo)的前部進(jìn)行匹配跟蹤,所以當(dāng)車旋轉(zhuǎn)后,模板仍然只跟蹤目標(biāo)前部,導(dǎo)致尺寸無法學(xué)習(xí)更新。綜上,本文算法可以較精準(zhǔn)地跟蹤多個目標(biāo),且當(dāng)目標(biāo)發(fā)生較大形變時,仍具有較高的準(zhǔn)確率和魯棒性。
由圖4圖5的實驗結(jié)果可以得出結(jié)論:在對移動視頻序列的多目標(biāo)跟蹤中,本文設(shè)計的基于上下文時空的跟蹤算法是有效的,并且當(dāng)目標(biāo)環(huán)境背景較復(fù)雜、目標(biāo)發(fā)生旋轉(zhuǎn)等姿態(tài)變化或者尺度變化時,仍然可以準(zhǔn)確地跟蹤目標(biāo)。
3 結(jié)語
本文針對多目標(biāo)運(yùn)動中姿態(tài)變化和尺度變化跟蹤效果不理想問題,提出了一種基于時空上下文的多目標(biāo)跟蹤算法,通過每個目標(biāo)的上下文時空信息對目標(biāo)進(jìn)行匹配跟蹤,同時設(shè)置了相似度反饋機(jī)制用以更新跟蹤窗口的尺度大小,提高了目標(biāo)的跟蹤精度。本文選取了兩組有目標(biāo)尺度變化和姿態(tài)變化的視頻序列進(jìn)行實驗驗證,實驗表明,當(dāng)不同目標(biāo)發(fā)生不同的尺度或者姿態(tài)變化時,本文算法都能準(zhǔn)確地跟蹤目標(biāo),有效地解決了目標(biāo)尺度姿態(tài)變化時造成的目標(biāo)丟失問題,具有良好的魯棒性。
參考文獻(xiàn):
[1] 李靜宇,王延杰.基于子空間的目標(biāo)跟蹤算法研究[J].液晶與顯示,2014,29(4):617-622.
[2] 郭敬明,何盺,魏仲慧.基于在線支持向量機(jī)的Mean Shift彩色圖像跟蹤[J].液晶與顯示,2014,29(1):120-128
[3] Li X,Hu W,Shen C.A Survey of Appearance Models in Visual Object Tracking[J].Acm Transactions on Intelligent Systems & Technology,2013,4(4):1-48.
[4] 許佳佳.基于MeanShift算法的航空影像聯(lián)合分割[J].液晶與顯示,2014,29(4):586-591.
[5] Baydoun M,Dawi M,Ghaziri H. Enhanced Parallel Implementation of the K-Means Clustering Algorithm[C].International Conference on Advances in Computational TOOLS for Engineering Applications.IEEE,2016:7-11.
[6] Wang C,Shen Y,Wang Y,et al.Gesture tracking and recognition based on spatio-temporal context[J].Computer Engineering & Applications,2016,52(9):202-207.
[7] Yang M,Wu Y,Lao S.Intelligent Collaborative Tracking by Mining Auxiliary Objects[C].Computer Vision and Pattern Recognition,2006 IEEE Computer Society Conference on.IEEE,2006:697-704.
[8] Zhang K,Zhang L,Yang M H,et al.Fast Tracking via Spatio-temporal Context Learning[J].Computer Science,2013, 41(11):88-92.
[9] 趙洲,黃攀峰,陳路.一種融合卡爾曼濾波的改進(jìn)時空上下文跟蹤算法[J].航空學(xué)報,2017,38(2):269-279.
[10] 武亞寧.基于時空上下文的目標(biāo)跟蹤算法研究[D].燕山大學(xué),2017.
[11] 馮新喜,魏帥,王泉,等.魯棒標(biāo)簽多伯努利機(jī)動目標(biāo)跟蹤算法[J].華中科技大學(xué)學(xué)報(自然科學(xué)版),2018(2).
[12] Walha A,Wali A,Alimi A M.Video Stabilization with Moving Object Detecting and Tracking for Aerial Video Surveillance[J].Multimedia Tools & Applications,2015,74(17):6745-6767.
【通聯(lián)編輯:朱寶貴】