張 博
(長(zhǎng)沙師范學(xué)院信息科學(xué)與工程學(xué)院,湖南 長(zhǎng)沙 410100)
視覺目標(biāo)跟蹤從本質(zhì)上來說,是一種為計(jì)算機(jī)視覺工作提供一定幫助的技術(shù)。在計(jì)算機(jī)視覺中,目標(biāo)運(yùn)動(dòng)邊界視覺快速跟蹤算法在智能交通、自動(dòng)監(jiān)控、精確制導(dǎo)、醫(yī)學(xué)診斷等多個(gè)領(lǐng)域得到了廣泛的應(yīng)用[1-2]。跟蹤算法在現(xiàn)實(shí)領(lǐng)域應(yīng)用中主要目的是在連續(xù)的視頻序列中,對(duì)人們感興趣的運(yùn)動(dòng)目標(biāo)進(jìn)行識(shí)別和跟蹤,從而獲取目標(biāo)在運(yùn)動(dòng)過程中所形成的運(yùn)動(dòng)軌跡、自身形態(tài)特征和運(yùn)動(dòng)速度等信息狀態(tài),在實(shí)際的應(yīng)用中能夠根據(jù)視頻的不同幀數(shù)實(shí)現(xiàn)目標(biāo)特征的對(duì)應(yīng)跟蹤匹配[3-4]。
近年來,有關(guān)于運(yùn)動(dòng)目標(biāo)的邊界視覺跟蹤算法的研究很多,該項(xiàng)技術(shù)取得了長(zhǎng)足的發(fā)展。文獻(xiàn)[5]中提出了一種多特征聯(lián)合時(shí)空正則化的相關(guān)濾波目標(biāo)跟蹤算法。該算法主要針對(duì)跟蹤目標(biāo)快速運(yùn)動(dòng)狀態(tài)下模型學(xué)習(xí),算法在第一幀提取過程中得到快速方向梯度直方圖等視頻相關(guān)特征,并降低以上特征維度,緩解邊界跟蹤效應(yīng)退化問題。文獻(xiàn)中跟蹤算法有效解決了目標(biāo)發(fā)生尺度變化過程中的跟蹤不穩(wěn)定問題,取得了一定的結(jié)果。文獻(xiàn)[6]設(shè)計(jì)了一種基于自適應(yīng)空間正則化的視覺目標(biāo)跟蹤算法。該方法借助空間中的正則化項(xiàng)目,構(gòu)建權(quán)重與相鄰幀間的關(guān)系,調(diào)整正則權(quán)重,降低邊界效應(yīng)對(duì)移動(dòng)目標(biāo)的影響,并借助顏色直方圖構(gòu)建新的方法,實(shí)現(xiàn)了目標(biāo)跟蹤。文獻(xiàn)[7]提出一種增強(qiáng)現(xiàn)實(shí)中視覺圖像抗遮擋運(yùn)動(dòng)目標(biāo)跟蹤算法。該方法將圖像中的噪聲進(jìn)行去除,并提取圖像中的特征數(shù)據(jù),在圖像前景的處理中根據(jù)分類器結(jié)構(gòu)完成視覺圖像的前景預(yù)處理,在此基礎(chǔ)上,設(shè)計(jì)跟蹤算法,實(shí)現(xiàn)遮擋目標(biāo)的實(shí)時(shí)跟蹤。該方法操作過程簡(jiǎn)單,易于使用。文獻(xiàn)[8]提出一種基于STC目標(biāo)跟蹤的機(jī)器視覺測(cè)速算法。通過該算法計(jì)算目標(biāo)圖像中角度,并將角度進(jìn)行調(diào)整,并通過STC跟蹤算法跟蹤相鄰圖像,并確定目標(biāo)移動(dòng)的速度,實(shí)現(xiàn)目標(biāo)跟蹤。文獻(xiàn)[9]提出一種自適應(yīng)空間異常的目標(biāo)跟蹤方法。通過將目標(biāo)函數(shù)加入到自適應(yīng)空間正則項(xiàng),提高背景區(qū)域的分辨能力,然后根據(jù)目標(biāo)圖像的每一幀響應(yīng)值確定跟蹤的結(jié)果可信度,實(shí)現(xiàn)目標(biāo)的追蹤。文獻(xiàn)[10]提出一種基于尺度自適應(yīng)的背景感知目標(biāo)跟蹤方法。將尺度與跟蹤器特征融合,得到目標(biāo)背景信息,然后根據(jù)特征分配權(quán)重計(jì)算融合后的目標(biāo)圖像的變化,并根據(jù)直方圖判斷跟蹤特征,設(shè)計(jì)濾波器模型降低跟蹤圖像中的噪聲。文獻(xiàn)[11]提出一種融合顯著性與運(yùn)動(dòng)信息的相關(guān)濾波跟蹤算法。設(shè)定目標(biāo)觀測(cè)模型,通過計(jì)算目標(biāo)背景距離模型,并在復(fù)雜的情況下辨識(shí)目標(biāo)圖像的像素級(jí)別,借助相機(jī)運(yùn)動(dòng)的連續(xù)性計(jì)算背景的運(yùn)動(dòng)模式,通過運(yùn)動(dòng)目標(biāo)估計(jì)的觀測(cè)模型,完成目標(biāo)追蹤。文獻(xiàn)[12]提出一種多特征聯(lián)合時(shí)空正則化相關(guān)濾波目標(biāo)跟蹤魯棒算法。該方法在目標(biāo)區(qū)域中提取關(guān)鍵幀,通過顏色特征和卷積特征并降低目標(biāo)移動(dòng)圖像的維度,在濾波模型中引入正則化項(xiàng),避免模型退化,最后根據(jù)尺度池完成目標(biāo)的自適應(yīng)估計(jì)。文獻(xiàn)[13]提出一種融合TLD框架的DSST實(shí)時(shí)目標(biāo)跟蹤改進(jìn)算法。該方法首先改進(jìn)DSST算法的位置濾波器,然后在正則化方法中引入權(quán)重系數(shù)矩陣,通過此過程對(duì)運(yùn)動(dòng)的目標(biāo)進(jìn)行粗定位,然后借助貝葉斯分類器提升目標(biāo)背景區(qū)分能力,將DSST目標(biāo)響應(yīng)位置進(jìn)行更新,完成目標(biāo)的追蹤。文獻(xiàn)[14]提出一種基于目標(biāo)感知特征篩選的孿生網(wǎng)絡(luò)跟蹤算法。該方法經(jīng)過裁剪處理后的模板幀和檢測(cè)幀送入到ResNet50的特征提取網(wǎng)絡(luò)中,得到不同層次中的不同特征,設(shè)計(jì)的感知模塊中感知追蹤目標(biāo)的敏感特征,并借助卷積核計(jì)算其變化的梯度值。將篩選到的目標(biāo)放置到追蹤的模型中,完成方法的跟蹤。綜合分析可知,上述方法采用了自適應(yīng)空間正則化算法、STC跟蹤算法、尺度自適應(yīng)算法和融合TLD框架等,這些方法均可以跟蹤目標(biāo),但是均存在不足之處,例如跟蹤方法的跟蹤精度低、跟蹤耗時(shí)長(zhǎng)、跟蹤覆蓋率低、跟蹤效果不理想等問題。
為了解決上述問題,結(jié)合殘差神經(jīng)網(wǎng)絡(luò)算法,提出一種基于殘差神經(jīng)網(wǎng)絡(luò)的目標(biāo)運(yùn)動(dòng)邊界視覺快速跟蹤算法。
殘差神經(jīng)網(wǎng)絡(luò)針對(duì)退化現(xiàn)象發(fā)明了 “快捷連接(shortcut connection)”,消除了深度過大的神經(jīng)網(wǎng)絡(luò)訓(xùn)練困難問題。神經(jīng)網(wǎng)絡(luò)的“深度”首次突破了100層,最大的神經(jīng)網(wǎng)絡(luò)甚至超過了1 000層。殘差神經(jīng)網(wǎng)絡(luò)的特點(diǎn)是容易優(yōu)化,并且能夠通過增加相當(dāng)?shù)纳疃?提高準(zhǔn)確率,其內(nèi)部的殘差塊使用了跳躍連接,緩解了在深度神經(jīng)網(wǎng)絡(luò)中增加深度帶來的梯度消失問題。
以殘差神經(jīng)網(wǎng)絡(luò)為基礎(chǔ),以短視頻中的RGB圖像等不同類型的圖像作為輸入值,利用視頻分割的方法從原始的視頻提取RGB圖像,RGB圖像能夠區(qū)分視頻中運(yùn)動(dòng)目標(biāo)和視頻背景[15]。視頻圖像的連續(xù)多幀堆疊后,進(jìn)行數(shù)據(jù)采集的殘差神經(jīng)網(wǎng)絡(luò)的輸入如圖1所示。
圖1 基于殘差神經(jīng)網(wǎng)絡(luò)的視頻圖像的運(yùn)動(dòng)軌跡堆疊方法處理輸入Fig.1 Processing input of motion track stacking method of video image based on residual neural network
圖1中,對(duì)于視屏圖像中的任意幀的圖像τ和殘差神經(jīng)網(wǎng)絡(luò)的第τ幀圖像來說,圖像的輸入量的構(gòu)造結(jié)構(gòu)如下所示:
(1)
根據(jù)圖1中的結(jié)構(gòu),設(shè)置一個(gè)殘差塊,將其定義為
A(x)=W(x,qi)+h,
(2)
式(2)中,x代表該神經(jīng)網(wǎng)絡(luò)中的首層變量,A(x)代表殘差塊的輸出值,h代表學(xué)習(xí)殘差的映射值。
其中,存在
W(x)=f(x)?(qix),
(3)
式(3)中,f(x)代表激活函數(shù),?代表兩層的不同連接權(quán)重值。
連接殘差塊的過程中目標(biāo)運(yùn)動(dòng)圖像中存在一定陰影,需要將其去除,此時(shí)目標(biāo)運(yùn)行邊界數(shù)據(jù)以對(duì)數(shù)的形式表示為
logbi=logsn+logbzi,
(4)
式(4)中,logsn代表目標(biāo)運(yùn)動(dòng)邊界無陰影的區(qū)域,logbzi代表存在陰影的區(qū)域。
設(shè)定目標(biāo)運(yùn)動(dòng)邊界無陰影的區(qū)域與存在陰影區(qū)域的關(guān)系表示為
sn=R(ei,ν),
(5)
式(5)中,R代表模型的學(xué)習(xí)參數(shù)。
在此基礎(chǔ)上,將存在陰影區(qū)域進(jìn)行去除,得到的目標(biāo)運(yùn)動(dòng)邊界圖像為
(6)
目標(biāo)運(yùn)動(dòng)邊界陰影去除后,完成其整體數(shù)據(jù)的采集,得到
(7)
式(7)中,d代表目標(biāo)邊界采樣索引,p0(i)和pn(i)代表邊界圖像起點(diǎn)和終點(diǎn),vi代表目標(biāo)邊界的更新點(diǎn)。
收集數(shù)據(jù)后,實(shí)現(xiàn)視覺跟蹤目標(biāo)運(yùn)動(dòng)邊界,需要從運(yùn)動(dòng)目標(biāo)跟蹤算法中獲取待跟蹤目標(biāo),在圖形中獲取運(yùn)動(dòng)相關(guān)的重要信號(hào)[16-17]。殘差學(xué)習(xí)特征提取的一般形式,如圖2所示。
根據(jù)圖2可知,F(x)表示網(wǎng)絡(luò)中負(fù)責(zé)學(xué)習(xí)特征的部分,將H(x)看作整個(gè)殘差結(jié)構(gòu),F(x)=H(x)-x表示負(fù)責(zé)學(xué)習(xí)的部分,整個(gè)結(jié)構(gòu)學(xué)習(xí)的是輸出結(jié)果與輸入的差值。
圖2 殘差學(xué)習(xí)特征提取的形式Fig.2 Form of residual learning feature extraction
在提取過程,將運(yùn)動(dòng)目標(biāo)邊界圖像視為一種動(dòng)態(tài)數(shù)據(jù),該動(dòng)態(tài)數(shù)據(jù)包含運(yùn)動(dòng)目標(biāo)運(yùn)動(dòng)時(shí)的加速度和角速度。目標(biāo)運(yùn)動(dòng)過程中,假設(shè)目標(biāo)運(yùn)動(dòng)以不同的加速度運(yùn)動(dòng),此時(shí)獲取目標(biāo)加速度矢量為
(8)
式(8)中,Gi代表目標(biāo)在x、y、z方向上的加速度變化量。
融合運(yùn)動(dòng)特征為一個(gè)多維向量。假設(shè)u代表目標(biāo)運(yùn)行的方向點(diǎn),根據(jù)該點(diǎn)構(gòu)建多維矩陣,獲取運(yùn)動(dòng)目標(biāo)邊界信息特征,得到
(9)
式(9)中,ηi代表運(yùn)動(dòng)目標(biāo)邊界信息特征值,ui代表目標(biāo)運(yùn)動(dòng)的方向。
為了更好地實(shí)現(xiàn)跟蹤算法,需要聚合提取的特征,并且為令聚合后的特征充分獲取低層視頻跟蹤目標(biāo)的圖像空間細(xì)節(jié)特征。因此,需要融合提取多種特征,提高算法在實(shí)際的應(yīng)用中的跟蹤性能。特征聚合的過程如圖3所示。
在多特征聚合過程中,聚合研究殘差神經(jīng)網(wǎng)絡(luò)中的多個(gè)特征。經(jīng)過改動(dòng)后的殘差神經(jīng)網(wǎng)絡(luò)所得到的特征分辨率相同,兩個(gè)特征向量中的匹配的像素點(diǎn)需要完成相加運(yùn)算,需要保證向量維度不變。至此完成深度殘差特征的提取與融合。
圖3 多特征聚合流程Fig.3 Multi feature aggregation process
對(duì)于運(yùn)動(dòng)的目標(biāo)來說,邊界分界線包圍的區(qū)域表示目標(biāo)體積。在視頻中背景發(fā)生變化時(shí),其對(duì)于運(yùn)動(dòng)目標(biāo)造成的影響較小[18]。在跟蹤過程中,能夠提高邊界線內(nèi)部區(qū)域與實(shí)際運(yùn)動(dòng)目標(biāo)之間的重合率。目標(biāo)運(yùn)動(dòng)邊界線生成示意圖如圖4所示。
圖4 目標(biāo)運(yùn)動(dòng)邊界線生成示意圖Fig.4 Schematic diagram of target motion boundary line generation
針對(duì)不同視覺技術(shù)產(chǎn)生的視野重疊,能夠獲取靜態(tài)的背景圖像,此時(shí)利用SIFT計(jì)算匹配點(diǎn),獲取投影矩陣[19-20],從而生成目標(biāo)運(yùn)動(dòng)邊界線。對(duì)于圖4中的兩個(gè)獨(dú)立的目標(biāo)而言,邊界線所囊括的范圍不變量可以定義為
(10)
(11)
構(gòu)建一個(gè)目標(biāo)運(yùn)動(dòng)邊界視覺模型,反映目標(biāo)運(yùn)動(dòng)邊界的相關(guān)數(shù)據(jù),在目標(biāo)邊界線生成基礎(chǔ)上,設(shè)置該模型為一個(gè)數(shù)據(jù)結(jié)構(gòu)的序列集合,表示為
(12)
式(12)中,l+,l-分別代表目標(biāo)運(yùn)動(dòng)邊界線圖像的不同方向的背景。
計(jì)算目標(biāo)運(yùn)動(dòng)邊界線之間的相似程度,確定目標(biāo)運(yùn)動(dòng)邊界的最終目標(biāo),得到
sim(li,lj)=γ[ψ(li,lj)+1],
(13)
式(13)中,γ代表歸一化系數(shù),ψ代表目標(biāo)運(yùn)動(dòng)邊界線干擾噪聲。
構(gòu)建目標(biāo)運(yùn)動(dòng)邊界視覺的快速跟蹤模型,得到
(14)
式(14)中,ζi為追蹤的輸出結(jié)果,D為當(dāng)前追蹤的目標(biāo)邊界線閾值,Lr為目標(biāo)運(yùn)動(dòng)的邊界線。
至此完成基于殘差神經(jīng)網(wǎng)絡(luò)的目標(biāo)運(yùn)動(dòng)邊界視覺快速跟蹤算法的研究。
為了驗(yàn)證本文設(shè)計(jì)的算法在實(shí)際應(yīng)用中的有效性,設(shè)計(jì)實(shí)驗(yàn)來驗(yàn)證。在算法測(cè)試環(huán)境設(shè)計(jì)中,通過LabVIEW實(shí)驗(yàn)平臺(tái)實(shí)現(xiàn)目標(biāo)運(yùn)動(dòng)邊界視覺快速跟蹤算法,統(tǒng)一測(cè)試過程中使用的PC機(jī)的CPU型號(hào),確定其頻率為2.4 GHz,內(nèi)存為1 T。編寫跟蹤算法的相關(guān)程序,使用不同的算法實(shí)現(xiàn)目標(biāo)運(yùn)動(dòng)邊界視覺快速跟蹤。在實(shí)驗(yàn)中選擇公共標(biāo)準(zhǔn)圖像序列進(jìn)行測(cè)試,該公共標(biāo)準(zhǔn)圖像序列與其他數(shù)據(jù)集相比,其優(yōu)勢(shì)在于內(nèi)部帶有真實(shí)目標(biāo)運(yùn)動(dòng)邊界檢測(cè)結(jié)果。在該圖像序列中隨機(jī)選擇50段常用的公開標(biāo)準(zhǔn)視頻作為實(shí)驗(yàn)對(duì)象,這些視頻中主要包括光線變化、目標(biāo)物體移動(dòng)、目標(biāo)遮擋以及不同形式的翻轉(zhuǎn)與旋轉(zhuǎn)等,分別使用本文設(shè)計(jì)的跟蹤算法和傳統(tǒng)的基于卷積神經(jīng)網(wǎng)絡(luò)的跟蹤算法進(jìn)行測(cè)試。
為了準(zhǔn)確描述不同算法跟蹤結(jié)果的好壞程度,在實(shí)驗(yàn)中選擇的性能評(píng)價(jià)指標(biāo)為重疊率與中心點(diǎn)的跟蹤誤差。重疊率的計(jì)算公式為
(15)
式(15)中,重疊率r的取值范圍在0~1之間,RT表示目標(biāo)的真實(shí)位置,RG表示算法跟蹤到的目標(biāo)窗口區(qū)域,符號(hào)∩與∪表示運(yùn)動(dòng)目標(biāo)與障礙物之間兩個(gè)區(qū)域的交與并操作,A表示所指代的區(qū)域中像素的總數(shù)量。使用重疊率這個(gè)指標(biāo)進(jìn)行判定時(shí),當(dāng)算法的重疊率大于0.5時(shí),則認(rèn)為算法跟蹤成功。中心點(diǎn)的跟蹤誤差的計(jì)算公式為
(16)
在以上實(shí)驗(yàn)條件下,分別得到本文算法和傳統(tǒng)算法的目標(biāo)運(yùn)動(dòng)邊界跟蹤結(jié)果如圖5所示。
圖5 兩種跟蹤算法跟蹤結(jié)果對(duì)比Fig.5 Comparison of tracking results of two tracking algorithms
圖5(a)和圖5(c)是本文算法的跟蹤結(jié)果,圖5(b)和圖5(d)是基于卷積神經(jīng)網(wǎng)絡(luò)的跟蹤算法的跟蹤結(jié)果。從圖中的邊界跟蹤結(jié)果來看,本文算法所得到的跟蹤結(jié)果與實(shí)際情況更加吻合,基于卷積神經(jīng)網(wǎng)絡(luò)的跟蹤算法在邊界識(shí)別結(jié)果中,容易將目標(biāo)物體的影子部分以及背景中的物體誤識(shí)別為運(yùn)動(dòng)目標(biāo)的一部分。
為了更加清晰地對(duì)比出兩種算法之間的跟蹤差異,在以上跟蹤識(shí)別結(jié)果的基礎(chǔ)上,對(duì)兩種方法的跟蹤性能進(jìn)行定量分析。根據(jù)選擇的兩個(gè)性能評(píng)價(jià)指標(biāo)計(jì)算公式,得到兩種算法下的中心距離誤差情況如圖6所示。
圖6 兩種算法中心距離誤差量化結(jié)果Fig.6 Quantization results of center distance error of two algorithms
圖6將兩種算法在某段視頻中的目標(biāo)跟蹤結(jié)果所產(chǎn)生的中心距離誤差進(jìn)行了量化。從圖中的結(jié)果可以看出,傳統(tǒng)的基于卷積神經(jīng)網(wǎng)絡(luò)的跟蹤算法在實(shí)際應(yīng)用中,針對(duì)嚴(yán)重的相似背景干擾以及連續(xù)的非剛性尺度變化的情況下,dt指標(biāo)惡化嚴(yán)重,說明傳統(tǒng)算法與本文算法相比,擬合運(yùn)動(dòng)目標(biāo)邊界的性能較差。另一種評(píng)估指標(biāo)覆蓋率的量化結(jié)果如圖7所示。
圖7 兩種算法跟蹤覆蓋率量化結(jié)果Fig.7 Quantization results of tracking coverage of the two algorithms
從圖7結(jié)果可以看出,在整個(gè)跟蹤過程中,本文算法的覆蓋率都能夠達(dá)到0.9以上,但傳統(tǒng)方法的跟蹤結(jié)果的覆蓋率變化比較大,變化范圍在0.45~0.9之間,說明本文算法與傳統(tǒng)算法相比,去除相似背景干擾的性能更強(qiáng)。
為驗(yàn)證本文方法的有效性,實(shí)驗(yàn)分別采用本文方法、文獻(xiàn)[6—10]方法對(duì)樣本運(yùn)動(dòng)目標(biāo)進(jìn)行追蹤,分析六種方法的追蹤精度,得到的結(jié)果如圖8 所示。
圖8 不同方法目標(biāo)追蹤的精度對(duì)比Fig.8 Comparison of target tracking accuracy of different methods
分析圖8中曲線走勢(shì)可以看出,采用本文方法、文獻(xiàn)[6—10]方法對(duì)樣本運(yùn)動(dòng)目標(biāo)進(jìn)行追蹤的精度存在一定差異。其中,采用本文方法追蹤的精度曲線波動(dòng)較小,且始終保持在90%以上,而其他傳統(tǒng)方法的跟蹤精度曲線波動(dòng)較大,文獻(xiàn)[9]方法波動(dòng)最大,其次為文獻(xiàn)[6]方法。通過六種追蹤方法的對(duì)比,可以看出本文方法追蹤精度最高,驗(yàn)證了本文方法可以提升追蹤精度。
在樣本運(yùn)動(dòng)目標(biāo)追蹤精度分析基礎(chǔ)上,實(shí)驗(yàn)進(jìn)一步分析了本文方法、文獻(xiàn)[6—10]方法對(duì)樣本運(yùn)動(dòng)目標(biāo)進(jìn)行追蹤的耗時(shí),得到的結(jié)果如圖9 所示。
圖9 不同方法目標(biāo)追蹤耗時(shí)對(duì)比Fig.9 Comparison of target tracking time of different methods
分析圖9實(shí)驗(yàn)結(jié)果可以看出,本文方法、文獻(xiàn)[6—10]方法對(duì)樣本運(yùn)動(dòng)目標(biāo)進(jìn)行追蹤的耗時(shí)存在一定不同。其中,采用的六種方法進(jìn)行追蹤的耗時(shí)均在合理范圍之內(nèi),但相比之下本文方法的追蹤所有耗時(shí)最短,驗(yàn)證了所提方法的有效性。
目標(biāo)運(yùn)動(dòng)視覺快速跟蹤問題不僅具有廣闊的應(yīng)用前景,還能夠給高層級(jí)的計(jì)算機(jī)視覺應(yīng)用提供基礎(chǔ)支撐。針對(duì)背景環(huán)境的復(fù)雜性,應(yīng)用場(chǎng)景的多變性,本文提出基于殘差神經(jīng)網(wǎng)絡(luò)的目標(biāo)運(yùn)動(dòng)視覺快速跟蹤算法。利用殘差神經(jīng)網(wǎng)絡(luò)提取目標(biāo)特征并進(jìn)行整合,計(jì)算邊界線的函數(shù)坐標(biāo)等步驟,實(shí)現(xiàn)目標(biāo)的視覺快速跟蹤,經(jīng)過實(shí)驗(yàn)驗(yàn)證了算法的有效性。