劉 波,許廷發(fā),李相民,史國(guó)凱,黃 博
(北京理工大學(xué) 光電學(xué)院 光電成像技術(shù)實(shí)驗(yàn)室,北京 海淀 100081)
人工智能是計(jì)算機(jī)學(xué)科的一個(gè)分支,被稱為世界三大尖端技術(shù)之一[1-3],近年來(lái),它飛速發(fā)展,在其他學(xué)科領(lǐng)域也獲得廣泛應(yīng)用,并取得了豐碩的成果。人工智能主要是使計(jì)算機(jī)可以模擬人的某些思維過(guò)程和智能行為,如:思考、學(xué)習(xí)、推理等。作為人工智能領(lǐng)域的重要的基礎(chǔ)組成部分的計(jì)算機(jī)視覺(jué)也受到越來(lái)越多國(guó)內(nèi)外研究者的重視。而基于視頻的目標(biāo)跟蹤是計(jì)算機(jī)視覺(jué)領(lǐng)域的核心問(wèn)題之一,也是當(dāng)前最熱門的研究方向之一[4-5]。
近年來(lái),相關(guān)濾波跟蹤算法由于其優(yōu)異的性能,受到廣大研究者的關(guān)注。2010年,Blome[6]等人提出了MOSSE(Minimum Output Sum of Squared Error Filter)算法,該算法首次將相關(guān)濾波引入目標(biāo)跟蹤領(lǐng)域,并在計(jì)算目標(biāo)和待測(cè)樣本集之間相關(guān)性時(shí),運(yùn)用了傅立葉變換,將運(yùn)算直接轉(zhuǎn)到頻域中,大大降低了運(yùn)算量。隨后,Henriques[7]等人在MOSSE的基礎(chǔ)上提出了采用循環(huán)矩陣結(jié)構(gòu)和核空間映射的CSK(Exploiting the Crculant Structure of Tracking-by-detection with Kernels)方法。這種方法只需要在目標(biāo)位置提取一次待測(cè)樣本,然后對(duì)該樣本進(jìn)行循環(huán)偏移,構(gòu)成循壞矩陣,即樣本集。但其只用到了較為簡(jiǎn)單的灰度特征。 Danelljan[8]等人提出了基于顏色屬性的相關(guān)濾波跟蹤(CN),該方法是在CSK 的基礎(chǔ)上將灰度特征改為了顏色屬性。2014年,Henriques[7]等人在CSK的基礎(chǔ)上引入了核方法,并采用了HOG(Histogram of Oriented Gradients)多維特征對(duì)目標(biāo)外觀進(jìn)行描述(KCF)。雖然基于核相關(guān)濾波改進(jìn)的相關(guān)濾波目標(biāo)跟蹤算法很多,但對(duì)于背景感知這方面的相關(guān)濾波目標(biāo)跟蹤算法卻相對(duì)較少。Kiani[10]等人提出了BACF(Learning Background-Aware Correlation Filters for Visual Tracking)目標(biāo)跟蹤算法。是在核相關(guān)濾波框架上,擴(kuò)大了循壞采樣的區(qū)域(整幅圖片),這樣就增加了樣本的數(shù)量,并且在每個(gè)樣本上裁剪出有用區(qū)域。較之前KCF的循環(huán)采樣方法,樣本的信息更加多樣化,訓(xùn)練出來(lái)的濾波器也更加穩(wěn)定。Mueller[11]等人在2017年的CVPR(Conference on Computer Vision and Pattern Recongnition)上提出了一種新的相關(guān)濾波框架,即聯(lián)合全局上下文進(jìn)行背景訓(xùn)練的CA-CF(Context-Aware Correlation Filter Tracking)算法。該算法既能夠合理增加更多信息,又沒(méi)帶來(lái)其他較大負(fù)面的影響,在速度上的影響也比較小。此外其跟蹤魯棒性和準(zhǔn)確性也有所提高。該算法在目標(biāo)外觀表示上增加了背景約束信息,即在目標(biāo)位置的上下左右方向各取了一塊背景區(qū)域,加到跟蹤濾波器中,對(duì)它們進(jìn)行背景監(jiān)督訓(xùn)練,使得目標(biāo)跟蹤更加魯棒。此框架也適合其他相關(guān)濾波算法,事實(shí)證明,加了背景約束的其他算法,如:DCF[9]、SAMF[12]、STPALE[13],在精準(zhǔn)度和成功率上,都有了一定的提高,尤其是STAPLE[13]算法提升的最為明顯。
目前,在目標(biāo)跟蹤系統(tǒng)中,除了目標(biāo)外觀表示的特征選擇問(wèn)題和模型更新問(wèn)題之外。還需應(yīng)對(duì)跟蹤過(guò)程中的各種干擾因素。如:目標(biāo)遮擋、尺度變化、光照變化、運(yùn)動(dòng)模糊、形變及背景雜亂等。因此,在這么多的因素干擾下,設(shè)計(jì)一個(gè)魯棒的目標(biāo)跟蹤算法仍然是當(dāng)今跟蹤領(lǐng)域的難點(diǎn)問(wèn)題[1]。
針對(duì)這一問(wèn)題,本文提出了一種基于卡爾曼濾波的自適應(yīng)上下文感知相關(guān)濾波跟蹤算法。該方法利用卡爾曼濾波對(duì)目標(biāo)做運(yùn)動(dòng)估計(jì),預(yù)測(cè)目標(biāo)的運(yùn)動(dòng)方向,并提取目標(biāo)運(yùn)動(dòng)方向上的背景區(qū)域樣本學(xué)習(xí)到濾波器中,同時(shí),為了應(yīng)對(duì)目標(biāo)形變,提取其他非目標(biāo)運(yùn)動(dòng)方向上的背景樣本也學(xué)習(xí)到濾波器中,其中,分配給運(yùn)動(dòng)方向上的背景樣本訓(xùn)練權(quán)重高于其他方向上的權(quán)重。從而提高了跟蹤器對(duì)目標(biāo)及背景的辨別性。為了解決目標(biāo)遮擋問(wèn)題,引入了一種新的遮擋判據(jù)APCE(Average Peak-to Correlation Energy),只有當(dāng)前的響應(yīng)峰值和APCE數(shù)值同時(shí)大于各自的歷史均值時(shí),才對(duì)目標(biāo)模型進(jìn)行更新,從而防止目標(biāo)被遮擋后,濾波器被污染,使得跟蹤器無(wú)法再檢測(cè)到目標(biāo),有效解決了目標(biāo)遮擋的問(wèn)題。
設(shè)有訓(xùn)練樣本集(xi,yi),則線性回歸函數(shù)可以表示為f(xi)=wTxi,w是權(quán)重系數(shù),嶺回歸函數(shù)可以表示為:
(1)
對(duì)式(1)求導(dǎo),并令其導(dǎo)數(shù)為0,求解得:
w=(XTX+λI)-1XTy,
(2)
其中,X、y分別是樣本矩陣和標(biāo)簽矩陣,I表示一個(gè)單位矩陣,λ對(duì)應(yīng)著正則化系數(shù),是個(gè)常數(shù)。由于在后面的變換中會(huì)用到傅立葉變換,所以將式(2)轉(zhuǎn)換到復(fù)數(shù)域下,其解析解為:
w=(X*X+λI)-1X*Y,
(3)
其中,X*=(XH)T,XH是X的復(fù)共軛。
相關(guān)濾波算法中,只需要對(duì)目標(biāo)基礎(chǔ)樣本進(jìn)行一次采樣,其他樣本都是由基礎(chǔ)樣本循環(huán)偏移產(chǎn)生的虛擬樣本(如圖1所示),這樣可以大大提高算法的運(yùn)算速度。
圖1 循環(huán)采樣Fig.1 Cyclic sampling
假設(shè)一個(gè)向量n=[n1,n2,…,nm],那么由該向量循環(huán)偏移后的m×m的循環(huán)矩陣C(n)表示為:
(4)
循環(huán)矩陣經(jīng)傅立葉變換可相似對(duì)角化,故可以將樣本循環(huán)矩陣N進(jìn)行如下轉(zhuǎn)換:
(5)
用循環(huán)矩陣的特性來(lái)化簡(jiǎn)公式(3)得:
(6)
非線性嶺回歸較線性嶺回歸,在變量上有所變化,且非線性方程f(z)的求解方程會(huì)隨著樣本數(shù)量的增加而變得越來(lái)越復(fù)雜。為了克服這一缺點(diǎn),引入了內(nèi)核方法,使用內(nèi)核方法,即采用將線性問(wèn)題映射到非線性特征空間的映射函數(shù)φ(x),可以將相關(guān)濾波器用樣本的線性組合來(lái)表示:
(7)
由核函數(shù)的特點(diǎn)知,將低維空間線性不可分的樣本通過(guò)映射函數(shù)φ(x)轉(zhuǎn)換到高維空間后將變得線性可分??蓪⒐?7)代入式(1)式中,求得α的閉環(huán)解的表達(dá)式為:
α=(K+λI)-1y,
(8)
其中,K是核矩陣,且是個(gè)循環(huán)矩陣。根據(jù)循環(huán)矩陣經(jīng)傅立葉變換可相似對(duì)角化這一特性,把式(8)轉(zhuǎn)化為:
(9)
Mueller[11]等人在2017年的CVPR會(huì)議上提出了一種新的相關(guān)濾波的框架CA-CF。與傳統(tǒng)的CF算法相比,CA-CF將目標(biāo)框的上下左右4塊背景信息也加到了相關(guān)濾波器中去學(xué)習(xí),從而提高了跟蹤器對(duì)目標(biāo)及背景的辨別性,可將式(1)改為:
(10)
從式(10)可以看出,它對(duì)所有的上下文背景樣本集都加了約束,并使他們回歸到零。對(duì)式(10)求解為:
(11)
本文提出的自適應(yīng)上下文感知相關(guān)濾波跟蹤是基于卡爾曼濾波對(duì)目標(biāo)做運(yùn)動(dòng)估計(jì)。
將需要估計(jì)的元素用列向量表示:
e=[x,y,vx,vy]T,
(12)
其中,x,y表示目標(biāo)的中心坐標(biāo),vx,vy表示目標(biāo)平面內(nèi)水平速度和垂直速度,兩初始值都是0。下一幀的預(yù)測(cè)位置為:
ek=Aek-1+G(σ) ,
(13)
其中,G(σ)是高斯白噪聲,A是狀態(tài)轉(zhuǎn)移矩陣,其為:
(14)
結(jié)合式(13)運(yùn)用卡爾曼濾波的其余4個(gè)迭代公式對(duì)其做狀態(tài)估計(jì),公式為:
(15)
其中,觀測(cè)矩陣H、以及矩陣Q矩陣R的初始矩陣為:
(16)
由于只從估計(jì)的變量元素中取運(yùn)動(dòng)矢量,并不估計(jì)目標(biāo)的位置,故目標(biāo)的定位仍為響應(yīng)峰值對(duì)應(yīng)的圖像位置。
V=[vx,vy]T,
(17)
當(dāng)速度不為0時(shí),單位矢量為:
V=[vx/abs(vx),vy/abs(vy)]T.
(18)
由于時(shí)空一致性,將目標(biāo)運(yùn)動(dòng)方向上的背景信息作為先驗(yàn)信息,賦予其較其他背景區(qū)域塊多的權(quán)重,加到濾波器學(xué)習(xí)中,有利于提高跟蹤器對(duì)目標(biāo)及背景樣本的辨別性。由此可將式(10)轉(zhuǎn)化為:
(19)
對(duì)其求解為:
(20)
其中,Aj(j∈[1,k])為上下文背景信息運(yùn)動(dòng)方向上的背景樣本。在目標(biāo)跟蹤過(guò)程中,是一個(gè)自適應(yīng)項(xiàng)。k表示所取背景區(qū)域的數(shù)量,在本文中,圍繞目標(biāo)的上下左右選取了4塊背景區(qū)域樣本。
本文引入了Wang等人在文獻(xiàn)[14]提出的遮擋判據(jù)APCE:
(21)
其中,F(xiàn)max、Fmin、Fw,h分別表示響應(yīng)圖中的峰值,谷值以及位置(w,h)對(duì)應(yīng)的響應(yīng)值。這個(gè)APCE判據(jù)可以反映出響應(yīng)圖的振蕩程度,當(dāng)APCE突然減少時(shí),就是出現(xiàn)了目標(biāo)被遮擋或者目標(biāo)丟失的情況。只有當(dāng)響應(yīng)值峰值和APCE同時(shí)都一定比例γ1,γ2大于它們各自的歷史均值時(shí),才認(rèn)為此時(shí)刻的跟蹤結(jié)果是準(zhǔn)確的,并對(duì)模型進(jìn)行更新,反之,只要其中有一個(gè)低于歷史均值,就不更新目標(biāo)模型。這樣既可以減少模型漂移的情況,也可以減少模型的更新次數(shù),達(dá)到了加速的效果,從而可以有效解決目標(biāo)遮擋的問(wèn)題。
為了驗(yàn)證本文算法的可行性,本文將本算法與當(dāng)前主流的跟蹤算法在CVPR2013 Benchmark[15]中進(jìn)行對(duì)比實(shí)驗(yàn)。
本文的仿真實(shí)驗(yàn)都是基于MATLAB R2016a平臺(tái)進(jìn)行的,使用的臺(tái)式電腦配置為:intel(R)core(TM)i5-4590 CPU@3.30GHz處理器、8G系統(tǒng)內(nèi)存以及64位的Windows10專業(yè)版系統(tǒng)。本論文仿真實(shí)驗(yàn)選取的視頻集為CVPR2013數(shù)據(jù)集的全部的50個(gè)視頻序列(實(shí)際是51個(gè)視頻序列),同時(shí)為了更加直觀地對(duì)本文提出算法的整體性能進(jìn)行評(píng)估,還將本文算法與當(dāng)前多個(gè)主流目標(biāo)跟蹤算法做了大量的對(duì)比仿真實(shí)驗(yàn)。選取的主流算法為:CSK[7]、DCF_CA[11]、DCF[9]、Struck[16]、MOSSE_CA[11]、TLD[17]、VTD[18]、CXT[19]、OAB[20]等9個(gè)目標(biāo)跟蹤算法。本文算法的參數(shù)如下:正則化系數(shù)λ1=10-4,λ2=25,λ3=5,學(xué)習(xí)率η=0.015,搜索框padding=2,γ1=0.5,γ2=0.35。
(1)中心位置誤差
中心位置誤差就是指計(jì)算每一幀中跟蹤目標(biāo)的中心位置與手工標(biāo)記的真值之間的歐氏距離,也可以叫精準(zhǔn)率。通過(guò)歐式距離的大小評(píng)估跟蹤的精確度。那么精準(zhǔn)率可以表示為:
(22)
(2)成功率
成功率是在重疊率的基礎(chǔ)上提出的新的評(píng)價(jià)標(biāo)準(zhǔn),其反映了目標(biāo)丟失后在后續(xù)跟蹤過(guò)程中還可以重新檢測(cè)到目標(biāo)的真實(shí)性能。它是通過(guò)統(tǒng)計(jì)所有視頻序列中重疊度超過(guò)一定閾值tθ的幀數(shù)Hx獲得的,成功率的表達(dá)式為:
(23)
其中,N表示視頻序列的總幀數(shù)。在Benchmark中設(shè)定的閾值為0.5。
本文算法與當(dāng)前主流算法在CVPR 2013Benchmark進(jìn)行對(duì)比實(shí)驗(yàn),得到實(shí)驗(yàn)結(jié)果如圖2、圖3所示,圖2為精準(zhǔn)率圖,圖3為成功率圖。
圖2 精準(zhǔn)率圖Fig.2 Precision rate map
由圖2可知,本文提出算法的得分為0.810,排名第一位,比排名第二名的DCF_CA(得分為0.784)高出了0.026,同時(shí)比基準(zhǔn)算法DCF(得分為0.740)高出了0.070。如圖3所示,本文算法在成功率上也是排名第一,得分為0.701,比第二名的DCF_CA(得分為0.680)高出了0.021,比基準(zhǔn)算法DCF(得分為0.623)高出了0.078。
圖3 成功率圖Fig.3 Success rate map
圖4(彩圖見(jiàn)期刊電子版)顯示了遮擋情況下的對(duì)比實(shí)驗(yàn)結(jié)果,從圖中可以看出,本文提出的算法在目標(biāo)被遮擋的情況下,仍可以很好地跟蹤目標(biāo)。表明了本文算法在目標(biāo)遮擋的情況下進(jìn)行跟蹤的可行性。
圖4 不同算法有遮擋情況的對(duì)比實(shí)驗(yàn)Fig.4 Contrast experiment of different algorithms under occlusion
圖5為算法在其他屬性視頻的跟蹤性能,從圖中可以看出,本文提出的算法性能總體優(yōu)于其他對(duì)比算法,充分體驗(yàn)了本文提出算法的魯棒性。達(dá)到了預(yù)期設(shè)計(jì)效果。
圖5 其他屬性下對(duì)比實(shí)驗(yàn)Fig.5 Comparative experiments under other attributes
本文提出了一種自適應(yīng)上下文感知相關(guān)濾波跟蹤方法。通過(guò)利用卡爾曼濾波器對(duì)目標(biāo)進(jìn)行運(yùn)動(dòng)估計(jì),預(yù)測(cè)目標(biāo)的運(yùn)動(dòng)方向。在濾波器訓(xùn)練時(shí),對(duì)目標(biāo)運(yùn)動(dòng)方向上的背景樣本訓(xùn)練時(shí)賦予較多的權(quán)重,同時(shí)為了解決遮擋的問(wèn)題,在模型更新時(shí)引入了一個(gè)新的遮擋判定指標(biāo)APCE,只有當(dāng)響應(yīng)峰值和APCE數(shù)值分別以一定比例大于各自的歷史均值時(shí),才對(duì)目標(biāo)模型進(jìn)行更新。將本文算法與當(dāng)前一些主流的跟蹤算法在CVPR 2013 Benchmark進(jìn)行對(duì)比實(shí)驗(yàn)。仿真實(shí)驗(yàn)結(jié)果表明,本文提出的算法,精準(zhǔn)率和成功率分別為0.810和0.701,均優(yōu)于其他對(duì)比算法,充分體現(xiàn)出了本文算法的魯棒性。