賈 亮,于昊充,王貴宇
(沈陽航空航天大學(xué)電子信息工程學(xué)院,沈陽 遼寧 110136)
在計算機視覺領(lǐng)域中,跟蹤是非?;A(chǔ)且重要的問題之一[1,2],在視頻監(jiān)控,無人機巡航,機器人感知等應(yīng)用中發(fā)揮著重要的作用。近年來,隨著相關(guān)濾波[3-5]的出現(xiàn),使得魯棒性得到了顯著提升[6],矩形框在視頻的初始幀確定,再根據(jù)初始幀訓(xùn)練跟蹤器,在下一幀圖像進行相關(guān)濾波計算,最大響應(yīng)值點即為下一幀的目標(biāo)位置,并用矩形框跟住目標(biāo),具備較高的運算速度。然而,并不能較好的應(yīng)對存在如目標(biāo)尺度變化、遮擋及低分辨率等復(fù)雜背景的問題。在傳統(tǒng)核相關(guān)濾波跟蹤(kernel correlation filter,KCF)算法[7]的基礎(chǔ)上,通過將HOG特征與CN特征[8]進行線性融合[9-12],彌補HOG特征無法描述目標(biāo)顏色特征的不足,將融合后的特征代替?zhèn)鹘y(tǒng)KCF算法的單一特征;在更新階段引入平均峰值相關(guān)能量[13](average peak-to correlation energy,APCE)通過計算最大響應(yīng)峰值及APCE來判斷當(dāng)前幀跟蹤器是否進行更新從而避免遮擋導(dǎo)致的更新失敗;在未受到遮擋時,對目標(biāo)尺度進行放縮,尋找不同尺度間的最大響應(yīng)值,從而找到當(dāng)前目標(biāo)的最佳尺度。
本文所提出的算法在檢測階段,更新階段分別做出了改進。在檢測階段通過多特征融合技術(shù)加強對目標(biāo)的特征的描述,在更新階段分別采用多峰值檢測更新機制與尺度池的方式避免遮擋與尺度變化導(dǎo)致的跟蹤失敗。與傳統(tǒng)KCF算法相比,改進后算法在尺度變化、遮擋以及低分辨率等復(fù)雜背景下具有較好的穩(wěn)定性。
KCF跟蹤算法對目標(biāo)進行采樣的方式是通過建立循環(huán)矩陣,實現(xiàn)對目標(biāo)的密集采樣。并且通過核函數(shù)的方式將線性空間中的回歸問題擴展到非線性空間,這樣就把低維空間不可分的情況擴展到高維空間之后變線性可分,使得核相關(guān)濾波更加具有魯棒性。
在樣本采集的過程中,傳統(tǒng)的目標(biāo)跟蹤算法通常采用的是稀疏采樣方式,這樣的采集方式會使得目標(biāo)特征表達不完全,并且計算量也較大,運行速度較慢。KCF跟蹤算法是通過使用循環(huán)位移的方式對訓(xùn)練樣本進行采樣,進而可實現(xiàn)對目標(biāo)樣本的密集采樣。使用一個一維向量作為基本樣本x=(x1,x2,…,xn)通過循環(huán)移位對基本樣本進行密集采樣
(1)
由循環(huán)矩陣在傅里葉域中可進行對角化性質(zhì),可將循環(huán)矩陣化簡
(2)
KCF跟蹤算法的分類器使用了嶺回歸分類器,嶺回歸分類器可以快速的得到訓(xùn)練目標(biāo)的閉式解,并且在實際應(yīng)用中,嶺回歸分類器擁有較高的性能水平,分類性能與SVM相近。通過采用嶺回歸找到一個回歸函數(shù)
f(z)=ωTz
(3)
式中:z為樣本,ω為濾波器系數(shù)。
通過該函數(shù)計算樣本xi與回歸目標(biāo)yi的平方誤差,并且使平方誤差最小化。該過程要使得誤差函數(shù)取最小值,即尋找最優(yōu)的ω
(4)
式中:ω為濾波器系數(shù),λ是正則化參數(shù),用于抑制過擬合。yi是樣本xi的期望輸出。
對(4)式求導(dǎo),使導(dǎo)數(shù)等于0求得ω,得到閉式解并寫成復(fù)數(shù)域的形式
ω=(XTX+λI)-1XHy
(5)
式中:y是每個元素對應(yīng)一個樣本的標(biāo)簽的列向量,XH為X的共軛轉(zhuǎn)置。
將式(2)的循環(huán)矩陣進行對角化,并用對角化形式來化簡式(5)中的嶺回歸公式可得
(6)
用矩陣元素的點乘代替矩陣求逆的運算過程,可大幅提高訓(xùn)練時的計算速度,并得到
(7)
KCF采用高斯核函數(shù),其計算公式為
(8)
在非線性問題的處理上,通過使用核函數(shù)把非線性問題從非線性空間轉(zhuǎn)換到線性空間,使在低維空間線性不可分到高維空間線性可分。濾波器ω表示為
(9)
由此得出ω的最優(yōu)解問題變?yōu)闉閷ふ覍ε伎臻g中α的最優(yōu)解。由高斯核可知
K(x,x′)=φT(x)φ(x′)
(10)
使用核矩陣K表示所有元素的點乘結(jié)果,其中Ki,j=K(xi,xj)。所以可得
(11)
式中:K是核矩陣,α是αi的矢量。
引入核函數(shù)后得到嶺回歸的閉式解
α=(K+λI-1)y
(12)
若核矩陣K為循環(huán)矩陣,可將式(11)化簡得到
(13)
訓(xùn)練樣本x和待測樣本z的核矩陣通過Kz表示,并且x和z均為循環(huán)移位獲得,故Kz也是循環(huán)矩陣,即定義為
KZ=C(kxz)
(14)
將其代入式(10)中得
f(z)=(Kz)Tα
(15)
將其進行傅里葉變換并進行對角化處理得
(16)
當(dāng)前幀中目標(biāo)的所在位置即為響應(yīng)f(z)的峰值所在位置。
本文在KCF算法基礎(chǔ)上進行了相關(guān)改進,算法的魯棒性有了明顯提高。改進后算法的的流程如圖1所示。
圖1 改進后的KCF算法流程
其步驟如下:
1)特征提取階段分別計算HOG特征與CN特征,將HOG特征與CN特征進行線性融合;
2) 相關(guān)濾波階段使用新的特征進行計算,并計算當(dāng)前幀的響應(yīng)值;
3) 更新階段通過采用APCE更新準(zhǔn)則,目的是為了防止遮擋等干擾導(dǎo)致更新錯誤信息使得跟蹤失敗;
4) 在未受到遮擋時,對目標(biāo)進行尺度放縮,計算每一個尺度的響應(yīng)值,通過比較響應(yīng)值大小來尋找最大響應(yīng)值,最大響應(yīng)值所對應(yīng)的尺度即為當(dāng)前目標(biāo)的最佳尺度。
5) 最后,通過確定目標(biāo)區(qū)域與每一個像素的相似度,來確定這一幀的目標(biāo)位置。
傳統(tǒng)的KCF跟蹤算法對目標(biāo)特征的提取通常采用單一的目標(biāo)特征,使用單一的目標(biāo)特征會導(dǎo)致跟蹤器在存在大量復(fù)雜背景的場景中跟蹤失敗,例如:HOG特征在目標(biāo)背景具有較強的光照變化,目標(biāo)與背景顏色相近等顏色干擾情況下具有較強的穩(wěn)定性,但是在快速運動,模糊背景等干擾下的適應(yīng)性較差;CN特征在快速運動、低分辨率等情況下表現(xiàn)良好,但是對于顏色干擾表現(xiàn)較差。為了解決這一問題,本文將HOG特征與CN特征進行線性融合,因HOG特征與CN特征可以相互彌補其缺點,所以本文算法采用這兩種特征進行線性融合來提高跟蹤精度,并將融合后的特征用于目標(biāo)跟蹤中。
HOG用于檢測目標(biāo)的幾何特征。通過計算目標(biāo)區(qū)域的梯度方向直方圖的方式來描述感興趣目標(biāo)的特征,因HOG反應(yīng)的是目標(biāo)的外形輪廓,對目標(biāo)的顏色變化不敏感,但是對于模糊背景以及遮擋等適應(yīng)性較差。
CN是一種描述顏色語言的顏色標(biāo)簽。CN特征能夠檢測目標(biāo)的顏色,檢測的顏色信息為目標(biāo)的重要特征信息,在快速運動、低幀數(shù)背景和光照變化等復(fù)雜背景下的敏感度很低,但是無法良好的應(yīng)對顏色相似干擾。
本文算法多特征融合的具體步驟為:
1)進行HOG特征與CN特征的特征提取;
2)將HOG特征與CN特征進行線性融合,HOG特征的通道數(shù)為31,CN特征的通道數(shù)為10,融合后得到41個通道特征;
3)通過對應(yīng)像素相加的方式將41個通道特征進行相加,最終得到一個單通道的特征圖;
在目標(biāo)跟蹤過程中,尺度變化是較為重要也是較為基礎(chǔ)的問題。如果在跟蹤過程中,跟蹤框不能自適應(yīng)變化尺度,在目標(biāo)大小發(fā)生變化時,將會遭遇以下問題:當(dāng)目標(biāo)尺寸變小時,跟蹤器將會學(xué)習(xí)大量的背景信息;當(dāng)目標(biāo)尺寸變大時,跟蹤器不能學(xué)習(xí)完整的目標(biāo)信息,使得目標(biāo)信息不完全。
SAMF[14]算法通過計算7個不同尺度的響應(yīng)值,選擇最大響應(yīng)值尺度作為最佳尺度。本文也采用尺度池的方式來實現(xiàn)尺度自適應(yīng)變化。首先,對目標(biāo)縮放到不同尺度Si,在對所有尺度進行核相關(guān)濾波計算,得到不同尺度的響應(yīng)值FSi,再通過比較響應(yīng)值大小來尋找最大響應(yīng)值,最大響應(yīng)值對應(yīng)的尺度為最佳尺度,尋找最佳尺度過程如圖2所示。
圖2 基于尺度池方法的尺度不變性算法原理框圖
本文為了不大幅降低算法的運算速度,且保證算法的實時性,將尺度數(shù)量設(shè)置為三個,尺度池Si={0.95,1.0,1.05},通過計算以上三個尺度的響應(yīng)值來尋找最佳尺度。
在目標(biāo)跟蹤過程中,除了初始幀之外,在每一次跟蹤器更新前增加一個多峰值檢測機制,在沒有出現(xiàn)干擾情況下,響應(yīng)的峰值都將出現(xiàn)單一峰值;如果出現(xiàn)遮擋等復(fù)雜背景的干擾,響應(yīng)將不再是單峰值,而是將會出現(xiàn)多峰值情況。如圖3所示。
圖3 Jogging圖像序列的51幀、79幀的響應(yīng)圖
圖3采集自O(shè)TB-100數(shù)據(jù)集中的Jogging序列,在51幀時未出現(xiàn)遮擋,響應(yīng)呈現(xiàn)單峰值;在79幀出現(xiàn)了明顯的多峰值,這代表在此刻周圍環(huán)境出現(xiàn)了遮擋,跟蹤器計算了大量相似的背景信息,將無法正確尋找響應(yīng)最大值,導(dǎo)致目標(biāo)丟失,跟蹤失敗。
在原有核相關(guān)濾波算法(KCF)基礎(chǔ)上加入APCE更新準(zhǔn)則,并且只有在檢測的響應(yīng)值存在唯一且明顯的單峰值時,才會對跟蹤器進行更新。若出現(xiàn)干擾等產(chǎn)生多峰值,會根據(jù)當(dāng)前幀的APCE值和響應(yīng)峰值的最大值(Fmax)來判斷目標(biāo)是否受到遮擋干擾。APCE更新準(zhǔn)則如下:
(17)
式中:Fmax代表響應(yīng)最大值;Fmin代表響應(yīng)的最小值;Fω,h代表在目標(biāo)在(ω,h)位置處的響應(yīng)值。
APCE更新準(zhǔn)則可以反映出在跟蹤過程中的整體響應(yīng)情況,當(dāng)APCE驟然減小時,代表著目標(biāo)受遮擋影響,為了避免在此幀更新干擾信息,跟蹤器將不會進行更新。加入APCE評價標(biāo)準(zhǔn)即在一定程度上減少跟蹤時跟蹤器的漂移情況,又減少了跟蹤器的更新次數(shù),起到了一定的加速效果。
在KCF算法中對跟蹤器系數(shù)α進行線性插值
α=(1-β)αpre+βαx′
(18)
式中:α為下一幀的跟蹤器系數(shù);αpre為前一幀的跟蹤器系數(shù);β為線性插值因子;αx′由當(dāng)前幀跟蹤器訓(xùn)練得到。
本次算法所用的實驗平臺配置為AMDRyzen7 4800H withRadeon Graphics CPU,主頻2.9GHz,8G內(nèi)存,使用Matlab2018b開發(fā)平臺進行測定。在本次實驗中,傳統(tǒng)的KCF參數(shù)保持不變,padding值由原本的1.5設(shè)置為2.5,標(biāo)準(zhǔn)差σ設(shè)置為0.7,插值因子β設(shè)置為0.014,正則項系數(shù)λ設(shè)置為0.0001。
尺度步長為1.05。
在本次實驗中,根據(jù)Wu等[15]提出的OTB(online object tracking)跟蹤性能評估標(biāo)準(zhǔn)來評估本文算法的性能,并且評價指標(biāo)采用中心位置誤差(CLE)與重疊率(Overlap)。CLE是指通過算法計算得到的跟蹤目標(biāo)的中心坐標(biāo)與目標(biāo)所在的真實位置坐標(biāo)之間的歐氏距離
(19)
式中:(x,y)為算法計算所得的目標(biāo)中心坐標(biāo),(xc,yc)為目標(biāo)的真實位置坐標(biāo)。精確度是計算CLE小于某一閾值(本文取值為20pixel)的視頻幀數(shù)與該視頻序列總幀數(shù)的百分比大小。
帕斯卡爾重疊率可用來評估跟蹤成功率,重疊率是指給定跟蹤框BT與實際跟蹤框BG區(qū)域面積的交集,而成功率計算的是目標(biāo)的重疊率大于設(shè)定的重疊率閾值(本文取值為0.5)的視頻幀數(shù)總和占總幀數(shù)的百分比大小
(20)
為驗證本次改進算法的魯棒性,將本文算法KCF_HC1(包含多特征融合、APCE更新標(biāo)準(zhǔn)、尺度自適應(yīng))、KCF_HC(包含多特征融合、APCE更新標(biāo)準(zhǔn))、KCF_AS(包含APCE更新標(biāo)準(zhǔn)、尺度自適應(yīng))、KCF_APCE(僅有APCE更新標(biāo)準(zhǔn))、KCF以及本文參考的SAMF算法進行比較,精確度與成功率結(jié)果對比圖如圖4所示。
圖4 精確度與成功率對比圖
從測試結(jié)果可以看出,本文的改進算法KCF_HC1精確度為80.6%,明顯優(yōu)于改進前KCF算法的精確度,相較于傳統(tǒng)KCF提高14.9%;成功率為77.2%,也明顯優(yōu)于改進前的KCF,相較于傳統(tǒng)KCF提高22.6%,表明增加多特征融合、APCE更新標(biāo)準(zhǔn)以及尺度自適應(yīng)等改進措施確實可以提高算法的魯棒性。
為了進一步驗證本文改進后KCF算法的跟蹤性能,測試時選取了OTB-100數(shù)據(jù)集中較為經(jīng)典的具備遮擋的視頻序列,在視頻序列中同時標(biāo)注出改進前與改進后算法的跟蹤框進行對比,如圖5所示。
圖5 改進前與改進后KCF算法在Jogging1、Couple、Singer1上的跟蹤效果
在圖(a)Jogging1視頻序列中,選擇跟蹤目標(biāo)為左側(cè)跑者,在第57幀時,兩種算法均可正常跟蹤;在第80幀時出現(xiàn)了遮擋情況,改進后的KCF跟蹤器因此幀未進行更新,所以沒有學(xué)習(xí)遮擋的背景信息;在第91幀可明顯看出改進前KCF因?qū)W習(xí)了背景信息,跟蹤框停留在遮擋處,改進后的KCF則正常跟蹤。
在圖(b)Couple視頻序列中,因該視頻序列全程存在窗口劇烈晃動,所以只有在初始時兩算法均正常跟蹤。在后續(xù)幀中因改進前KCF只進行HOG特征提取,改進后的KCF因結(jié)合了CN特征,所以只有改進后的KCF可以正常跟蹤。
在圖(c)Singer1視頻序列中,在第12幀兩種算法均可正常跟蹤;在第58幀到第115幀時,目標(biāo)逐漸縮小,改進后KCF算法因可以進行尺度自適應(yīng)變化,則算法正確跟蹤目標(biāo)且持續(xù)鎖定目標(biāo)大小。
本文提出一種將多特征融合,多峰值檢測機制及尺度自適應(yīng)相結(jié)合的核相關(guān)濾波(KCF)跟蹤算法。將HOG特征與CN特征進行線性融合,將融合后的特征作為新特征,解決了HOG特征對目標(biāo)顏色變化敏感問題;同時提出多峰值檢測更新機制,通過計算最大響應(yīng)峰值及APCE來判斷當(dāng)前幀是否更新跟蹤器來避免跟蹤器學(xué)習(xí)錯誤信息;使用尺度池的方式對目標(biāo)進行放縮,尋找不同尺度間的最大響應(yīng)值來確定最佳尺度;通過OTB-100公開數(shù)據(jù)集對改進后算法進行評估,從結(jié)果得出改進后算法相較于傳統(tǒng)的KCF算法在精確度與成功率上分別提高了14.9%與22.6%,具有更好的跟蹤效果。