葉秋笛,袁 亮,呂 凱
(新疆大學 機械工程學院,新疆 烏魯木齊 830047)
目標跟蹤是計算機視覺中非常具有挑戰性的研究課題[1,2],近年來,以準確性和實用性并稱的相關濾波器的跟蹤方法[3-7]迅速發展。相關濾波器跟蹤的思想是對當前幀目標及其周圍一定區域進行特征提取,并采用循環矩陣對訓練樣本增廣,將提取到的特征通過傅里葉變換從時域轉化到頻域,帶入嶺回歸方程來訓練濾波器[8],最后將濾波器與下一幀的待預測區域做相關運算,用最大響應位置來更新目標位置。相關濾波器在跟蹤速度和準確率上比粒子濾波器有了顯著的提升,但是依然沒有很好解決目標尺變化、目標周圍存在復雜干擾等問題;很多主流相關濾波跟蹤器[8-10]均采用單一(histogram of oriented gradient,HOG)特征作為提取到的特征來進行跟蹤,HOG特征在對于目標發生旋轉,形態變化等情況時,跟蹤魯棒性明顯降低。
為了提升相關濾波器在面對上述問題的魯棒性,在KCF算法上提出一種具有良好抵抗尺度變化、復雜干擾能力的跟蹤算法。對HOG與CH(color histogram)特征[11]進行加權融合,通過融合CH特征光照魯棒性與HOG特征的形變魯棒性,增強跟蹤器在復雜跟蹤場景下的泛化能力。在解決尺度變化的問題時,采用一個含有7個尺度因子的尺度池,在尺度池里尋找響應最大的尺度作為當下尺度;最后在模板更新策略上,采用APCE,average peak-to-correlation energy[12]作為評判標準,一定程度上防止了模板錯誤更新而導致的跟蹤飄移、丟失等問題。
KCF算法中采用嶺回歸來訓練分類器,通過核函數將線性空間的嶺回歸映射到高維的非線性回歸,最后求解映射后的嶺回歸函數,得到所求最高響應位置;在傅里葉變換的過程中,運用循環矩陣在傅里葉空間可對角化的性質將矩陣的運算轉化為元素之間的點乘,從而加速了運算的過程。
在嶺回歸的訓練過程中,定義訓練樣本集為(xi,yi),那么線性回歸函數f(x)=wTx, 式中:w是x的權重;定義損失函數為
(1)

w=(XTX+λI)-1XTY
(2)
式中:X,Y分別是樣本與標簽的矩陣。這里通過使用核函數,將低維的線性問題映射為核空間的非線性問題,使得樣本在新的空間里線性可分;定義核相關
k(x,x′)=〈φ(x),φ(x′)〉
(3)
式中:φ(x)為w的線性組合,即
(4)
式中: 〈·,·〉 表示內積,將式(4)帶入式(2),求解w的問題轉化為求解x的問題
a=(Kxx+λI)-1y
(5)
式中:Kxx為相關矩陣XTX的核空間表示,訓練相關濾波器需要大量的樣本作為數據支撐,而大量的訓練樣本又會減緩濾波器的運算,這對于樣本的生成與濾波器訓練提出了新的要求。循環矩陣的使用比較好地解決了這個問題;對于一對樣本與其真實標簽 (x,y|x,y∈Rn×1), 如果x=(a1,a2,…,an)T的循環仍是樣本,定義由樣本循環位移產生的循環矩陣
(6)
對于一個新的樣本x′=(a′1,a′2,…,a′n)T, 那么x與x′所有循環樣本的內積可以表示為
(7)
式中:⊙表示矩陣的Hadamard積,F,F-1分別表示離散傅里葉變換與逆離散傅里葉變換,符號*表示共軛復數。利用循環矩陣的酉矩陣性質,在頻域計算式(5)中的核參數a
(8)
式中:kxx是核函數矩陣Kxx中第一行元素組成的向量。同樣的,我們構建關于待測樣本的核函數,計算所有待測樣本的響應
(9)
式中:kxz是核函數矩陣Kxz中第一行元素組成的向量。使用高斯核作為濾波器的核函數,最終得到樣本的核相關表示為
(10)
式中:L表示特征的通道數。
在多種跟蹤問題同時存在的跟蹤場景下,配置單一特征的跟蹤器往往會出現跟蹤失敗的情況,這對特征提取提出了新的要求。通過在KCF跟蹤器下加入CH特征,利用HOG與CH的互補特性,提取到更加豐富的特征信息。
CH特征定義為一個平均特征像素的線性函數
(11)
式中:βT表示權重,H是全局像素數量,ψ[u]表示顏色特征像素。參考VOT13挑戰中PLT方法,設定一種特殊形式的特征索引方式ψ[u]=ek[u], 索引向量ei在索引i方向為1,其余方向都為0;如此,只需查找所有滿足βTψ[u]=βk[u]的情況并計算單一稀疏內積,而非全局內積。為了更好的與HOG特征融合,對跟蹤目標和背景區域獨立計算損失,并線性相加

(12)
式中:x為樣本,p為真實目標框位置,O為目標區域像素,B為背景區域像素;將目標在每個特征維度分解為獨立的項
(13)

(14)


(15)
式中:γ∈[0,1] 是權值超參數,最后由融合后的最大置信值yi確定當前幀的目標位置。
針對跟蹤過程中目標尺度發生變化的問題,提出了通過設定一個不同尺度的尺度池,將池內不同尺度大小的目標與真實值做相關計算,最后將響應最大的尺度更新為當前尺度。設原始圖像空間中的目標窗口大小為st,通過雙線性差值將模板大小固定為ST=(Sx,Sy), 并定義一個線性變尺度的尺度池S=[t1,t2,…,tk]。 式中:k為設定尺度的數量。對于當前幀,在 {tist|ti∈S} 中以預先設定好的尺度池采樣k個不同尺度的目標,分別計算k次響應
(16)
式中:zti表示歸一為ST大小的ti尺度樣本;所得最大響應的ti即為當前幀的目標尺度。
在改進算法中,采用k=7,S=[0.985, 0.990, 0.995, 1, 1.005, 1.010, 1.015]。
目標跟蹤的過程中,會根據響應值的變化來更新模板,在復雜的跟蹤場景下,目標如果過于頻繁的更新模板,會將背景的干擾信息更新到模板里,進而使得跟蹤器錯誤將背景信息理解為目標信息,最終導致目標跟丟。針對這個問題,提出了利用APCE作為檢測置信度的評價指標
(17)
式中:Fmax表示全局最高響應,Fmin表示全局最低響應,Fw,h表示在位置 (w,h) 時的響應。這個判斷依據反映了響應的震蕩程度,當APCE突然減小時,說明目標出現了被遮擋的情況,這時模板會停止更新,防止跟蹤失敗或目標框漂移;通過設定兩個閾值參數η1,η2,在當前幀t時,只有同時滿足式(18)和式(19)時,目標模板才會繼續更新,否則模板停止更新,默認為上一幀的模板
(18)
(19)

改進的算法流程詳見表1。

表1 改進算法流程
首先,將提出的改進算法在OTB100測試集上進行部件分析,OTB100一共有100個視頻序列,其中有彩色序列也有灰度序列;這些序列包含了11種跟蹤問題,它們分別是快速運動(FM)、背景干擾(BC)、動態模糊(MB)、形變(DEF)、光照變化(IV)、平面內旋轉(IPR)、平面外旋轉(OPR)、低分辨率(LR)、遮擋(OCC)、出視野(OV)和尺度變化(SV)。隨后將改進算法與4種流行的相關濾波目標跟蹤算法進行比較,這4種算法分別是KCF、DSST、Staple、SAMF。在分析實驗結果上,采用OPE(one pass evaluation)模式,使用的評價指標為精準度和成功率。精確度指的是中心位置誤差小于20像素的幀數占視頻序列總幀數的比例
(20)
式中: (xt,yt) 為跟蹤算法在跟蹤過程中獲得的目標中心位置, (xg,yg) 為真實目標中心位置。成功率指的是算法的成功率曲線與坐標軸所圍成的面積,成功率曲線由式(21)確定
(21)
式中:rt為跟蹤算法跟蹤過程的回歸邊框,r0為真實邊框。
實驗平臺的硬件配置為I5-4460 3.20 GHz 4核CPU,8 GB RAM的計算機,算法的開發平臺為MATLAB 2018b。在參數設置上,除非特殊說明,參數配置均參照原始論文中配置的默認參數。
如表2所示,從OTB100中選取10個具有特點的視頻集,將改進算法及4種對比算法在視頻集中的回歸框同時放在視頻集的每一幀圖片上。

表2 視頻集信息
通過圖1結果表明,提出的改進算法在解決背景干擾、光照變化、尺度變化及旋轉變化問題時具有更優秀的表現。
3.2.1 背景干擾
在跟蹤的過程中,復雜的背景會為跟蹤任務增加困難,多元的背景信息會迷惑跟蹤器,使得跟蹤器錯誤將模板更新到背景信息上,從而發生目標框的丟失和漂移,最終導致跟蹤失敗。這里以“Couple”、“Bolt2”、“Football1”3個視頻集的跟蹤效果為例,在這3個視頻集中,目標周圍都存在一定程度的背景干擾。從圖1(a)中可以看出,情侶走斑馬線過馬路的過程中,背景存在車輛、路燈等干擾,在第36幀時,KCF算法的目標框開始漂移,而此時DSST算法已經跟蹤失敗;隨著二人行走,背景變得愈發復雜,出現了交通警示牌,遠處的行人以及更多的車輛,在第115幀可以看到,除了改進算法外,其余對比算法均跟蹤失敗。接下來看圖1(b),在跟蹤博爾特的賽跑過程時,其余一同參賽的運動員,站在一旁的裁判都成為跟蹤的背景干擾,在第11幀時,DSST算法、KCF算法和SAMF算法都錯誤將博爾特旁邊的運動員當作跟蹤的目標,在第85幀可以看出,之前錯誤跟蹤博爾特旁邊運動員的3種算法均跟蹤失敗;最后如圖1(c)所示,跟蹤一名橄欖球運動員拼搶的過程中,其余運動員均成為干擾目標,在第73幀時,所有對比算法的回歸框都出現了一定程度的漂移。改進算法在特征上采用了HOG+CN的特征組合,在性能上互相補足,再配合APCE評判標準,在復雜背景干擾情況下使模板的更新適當停止,極大程度緩解了目標框的漂移,增加了算法在復雜背景干擾下的魯棒性。

圖1 5種算法在所選序列上的跟蹤效果
3.2.2 光照變化
在一些視頻集中,存在著光照強度的改變,一些跟蹤器在模板更新時不能正確處理目標和背景上改變的亮度信息,從而出現跟蹤發生偏差或失敗。這里以“Shaking”、“Tiger2”兩個視頻集為例;如圖1(d)所示,吉他手演奏的過程中,身后聚光燈的光照變化十分明顯,在第63幀時的光照變化尤為突出,KCF算法、SAMF算法和Staple算法均出現了漂移。接下來看圖1(e),在第126幀中跟蹤目標會閃過強烈的光源,這時KCF算法、DSST算法和SAMF算法均發生了偏移。改進算法中,光照變化對于CH特征的影響較小,通過融合CH特征的響應,從而增加了算法的抗光照變化影響的能力。
3.2.3 尺度變化
在跟蹤的過程中,目標所占整張圖片的比例隨著鏡頭與目標的變化而發生變化,跟蹤目標在表現上就發生了尺度的改變。一些跟蹤算法不能或不能正確適應跟蹤目標的尺度變化而調整回歸框的大小,使得回歸框不能正確獲得跟蹤目標的信息,最終導致跟蹤尺度不匹配或跟蹤失敗。這里選擇“Trellis”、“Human9”、“Vase”3個視頻集為例;從圖1(f)中看出,在目標行走的過程中,目標的頭部發生了一定的尺度變化,在第406幀中,KCF算法由于不具備尺度自適應的能力,從而造成目標框過大,DSST算法與Staple算法沒有準確框選目標尺度。接著看圖1(g),第72幀-第105幀的過程中,目標是一個先遠離后接近攝像頭的狀態,這時KCF算法回歸框保持不變,而DSST算法錯誤估計了尺度,從而使回歸框過大;最后從圖1(h)可以看出,從第17幀到第246幀,攝像頭逐漸接近跟蹤目標,在第116幀中,KCF算法的回歸框和跟蹤開始時一樣,其它算法逐漸適應目標的尺度變化;在第246幀中,SAMF算法和DSST算法的回歸框無法與目標尺度匹配,而Staple算法與改進算法的跟蹤效果發生了分歧,因為前者認為跟蹤目標是筆筒整體,而后者認為跟蹤目標是初始狀態時筆筒正視圖的圖案。加入了尺度池的改進算法可以隨著目標尺度的改變而自適應的隨之改變目標框,使得算法在變尺度的情況下可以更加穩定跟蹤目標。
3.2.4 旋轉變化
旋轉變化分為平面內旋轉和平面外旋轉,旋轉的目標是一個綜合問題的疊加,其尺度和形態均發生了不同程度的改變,不能有效獲取識別目標形態信息的跟蹤器在跟蹤旋轉目標時通常效果欠佳。這里選擇“Bird2”、“Freeman4”這兩個視頻集為例;如圖1(i)所示,在第49幀、第94幀中,目標先后兩次發生平面外旋轉180度,SAMF算法、DSST算法、KCF算法在過程中先后發生回歸框漂移。接著看圖1(j),在第94幀、第177幀、第258幀時,目標一共發生3次平面外的90度旋轉,在頻繁旋轉的過程中,除了改進算法,其它對比算法的回歸框都出現了不同程度的漂移。這是因為CH特征對形變有較高的敏感程度,通過融合HOG+CH特征,可以使跟蹤器從CH特征的響應中獲得較豐富的形態信息,從而在目標發生旋轉時,更加準確進行目標跟蹤。
將10個序列分別在5種算法下進行OPE測試,結果見表3、表4。從兩張表中可以看出,改進的算法在所選擇的10個視頻序列中的平均中心誤差及平均成功率分別達到8.1%和75.41%,在5種算法中排名第一,與KCF相比平均中心誤差及平均成功率分別降低了40.53%和提升了40.77%;實驗結果表明了改進算法在具有復雜干擾(背景及光照),尺度變化,旋轉變化的跟蹤場景下可以更加穩定、準確地跟蹤到目標。

表3 中心度誤差對比/%

表4 重疊度精度對比/%
5種算法在CPU加速的運行情況下,其精度和成功率曲線對比和如圖2所示,從圖2可以看出,通過改進的算法在精度和成功率分別在KCF算法上提高了10.3%和16.3%,相較于SAMF算法,分別提高了4.2%和3.1%。從表5可以得出,改進算法在5個問題的成功率比較中排名第一,5個問題排名第二,一個問題排名第三。所有的問題相較于KCF算法都有一定程度的提升,其中在背景干擾上比第二名的Staple算法高出了9.8%。從運行速度上來分析,可以看出改進算法在跟蹤速率上要慢于其它改進算法,主要原因在于尺度池在估計尺度時需要進行多次響應運算,這個過程大大增加了算法的運算量,從而提升了算法的時間復雜性。

圖2 OTB-100的精度曲線和成功率曲線
針對KCF算法在復雜場景,尺度變化等情況下跟蹤穩定性欠佳的問題,提出了一種尺度自適應的特征融合跟蹤算法。算法在原始HOG特征的基礎上加入了CH特征,實現了兩個特征的互相補足,增強跟蹤器的泛化能力;次之,在尺度自適應上增加了一個具有7個尺度的尺度池,使得算法在變尺度情況下可以更加穩定跟蹤目標;最后,在模板更新上采用平均相關峰值能量作為判斷依據,設定閾值,提高跟蹤器在復雜場景下的魯棒性。通過實驗得出,經過改進的算法相較于KCF算法在復雜場景,多尺度變化,目標旋轉等跟蹤問題上的表現更為出色,并且通過跟蹤評價曲線的對比,表明了改進算法在整體的跟蹤效果上具有更好的魯棒性。算法在抗遮擋上仍有提升的空間,后續的工作可以針對于抗遮擋再展開進一步的研究。