孫紫君, 黃福珍
(上海電力學院 自動化工程學院, 上海 200090)
計算機視覺是所有從二維圖片中獲得情景信息的計算機處理方法的總稱[1]。目標跟蹤是國內外計算機視覺領域的研究熱點[2-3],在機器人、視頻監控、人機交互和無人駕駛等領域應用廣泛。通常目標在視頻或圖像序列中存在著外觀變形、尺度變化、光照變化、快速旋轉運動、背景相似干擾和視野丟失等現象[4-5]。這些現象的存在,使得目標跟蹤具有一定的難度。研究人員針對不同的問題提出了不同的解決方法。這些方法可以分為兩大類:一是生成類方法,二是判別類方法。生成類方法是在前一視頻幀的目標區域建模,在當前幀尋找與模型最相似的區域;判別類方法是在前一視頻幀的目標區域和背景區域中提取正負樣本進行訓練,從而得到一個目標分類器,利用訓練好的目標分類器找到待檢測目標的位置。
基于相關濾波(Correlation Filtering,CF)的跟蹤方法屬于判別類方法[6]。CF方法的跟蹤性能良好,計算效率極高,能夠跟蹤較復雜的目標,是目標跟蹤領域的研究熱點之一。在跟蹤過程中,CF方法通過前一幀的訓練數據集訓練分類器,利用訓練好的分類器跟蹤當前幀的目標,同時更新分類器。HENRIQUES J F等人[7-8]將核函數引入誤差最小平方和濾波(Minimum Output Sum of Squared Error,MOSSE)算法,提出了基于循環結構核(Circulant Structure Kernels,CSK)算法,并在該算法的基礎上改進得到了核相關濾波(Kernelized Correlation Filters,KCF)算法。KCF算法加入了多通道方向梯度直方圖(Histogram of Oriented Gradient,HOG)特征,提高了跟蹤器的跟蹤精度。但當跟蹤的目標外觀發生變化時,僅利用圖像的單一特征進行跟蹤會產生模型誤差,從而影響目標跟蹤的穩健性。
針對上述問題,本文在KCF算法的基礎上,提出了一種多特征融合的核相關濾波跟蹤方法。從特征融合入手,將優缺點可以互補的特征進行融合,同時在數據集上進行實驗,以驗證改進算法的跟蹤性能。
KCF算法是利用循環矩陣構造訓練樣本。假設基礎樣本x是一組1×n維的向量[x1,x2,x3,…,xn],通過循環移位可以得到樣本矩陣X,表示為
(1)
其中矩陣X的第一行為向量x,其他各行是向量x向右移動1,2,3,…n-1位得到的樣本。文獻[7]表明,所有的循環矩陣都能夠在傅里葉域使用離散傅里葉矩陣進行對角化,即
(2)
式中:F——離散傅里葉矩陣;
FH——F的復共軛的轉置;
∧——離散傅里葉變換。
樣本訓練是為了找到一個函數f(xi)=wTxi,讓樣本xi與其對應的yi的均方誤差最小。
(3)
式中的λ是正則化參數,其作用是提高分類器的泛化能力,防止過度擬合。
由線性最小二乘法解得
w=(XHX+λI)-1XHy
(4)
利用循環矩陣的特性,將式(2)代入式(4)中,再進行離散傅里葉變換,可得
(5)

α=(K+λI)-1y
(6)

(7)
對于待檢測樣本z,其對應的回歸值為
(8)
當待檢測樣本z數量較多時,采用循環矩陣構造檢測樣本。定義訓練樣本和檢測樣本的核矩陣為
KZ=C(kxz)
(9)
結合式(8)和式(9)可得
f(z)=(KZ)Tα
(10)
為了提高計算速度,將式(10)轉化到傅里葉域計算,此時目標函數可以表示為
(11)
跟蹤目標對應的位置,就是目標函數的最大響應值,詳細的算法計算過程可以參考文獻[8]。
在跟蹤算法中,特征表達的是否有效直接決定跟蹤結果的好壞。為了平衡特征表達能力和計算復雜度,在KCF算法的基礎上提出了融合具有相互互補性的特征。在不同的跟蹤場景中,不同的特征對目標的描述各有側重,本文主要介紹灰度特征、HOG特征和局部二值模式(Local Binary Patterns,LBP)特征。
2.1.1 灰度特征
灰度(Gray)特征是跟蹤算法中使用較早的一種特征,例如在MOSSE算法和CSK算法中均采用了灰度特征進行目標描述。灰度特征是先將原始圖像轉化為灰度圖,然后對灰度值進行歸一化,使得光照變化對該特征的影響減弱。灰度特征如圖1所示。

圖1 灰度特征示意
2.1.2 HOG特征
HOG特征的主要思想是,在圖像中計算圖像的梯度或邊沿方向的分布情況來反映部分圖像目標的表示和形狀[9]。HOG特征通過計算每個像素點的梯度(包括大小和方向兩個方面),將輸入圖像劃分為若干大小的單元格,再將單元格中的梯度方向劃分成不同的方向。單元格中的每個像素在不同的梯度方向上的加權投影,最終形成梯度直方圖,幾個相鄰的單元格就形成了一個塊。其詳細的特征提取過程可參考文獻[10]。輸入圖像和單元格為4×4的HOG特征可視化結果如圖2所示。

圖2 HOG特征可視化結果示意
2.1.3 LBP特征
LBP算子是在一個3×3的窗口內,將窗口內的中心像素點灰度值設為閾值,并將其周圍8個鄰域內的各像素點的灰度值與中心像素點的灰度值進行比較。若灰度值大于中心點的灰度值,則在該位置標記為“1”,否則標記為“0”。最終將二值化后的結果按照一定的順序組成一個8位二進制數,即該數表示的就是該點的LBP值。其詳細的特征提取過程可參考文獻[11]。LBP算子的特征可視化結果如圖3所示。

圖3 LBP算子可視化結果示意
灰度特征只有一維,便于與其他特征融合;同時它計算簡單、復雜度較低,可以最大程度地描述目標本身的狀態。當圖像目標尺寸較小或圖像的分辨率較低時,計算過程復雜的特征描述子并不能夠完全描述目標,這時采用灰度特征可以改善跟蹤效果。
HOG特征屬于局部形狀特征,對光照影響和幾何形變不敏感,計算復雜度也較低,符合實時目標跟蹤的要求。當跟蹤場景中有形變、光照變化以及局部遮擋發生時,利用HOG特征跟蹤目標效果良好。在目標和背景顏色相近、目標邊緣或者背景有噪聲的場景中,HOG特征和灰度特征無法有效地描述目標,此時則可以利用紋理特征對跟蹤目標進行補充描述。LBP特征的描述方法與HOG特征相似,易與HOG特征融合。
多特征融合需要融合的特征對目標的描述有互補性,還要有相似的計算過程。由上述介紹可知,3種特征在不同的場景中對目標的跟蹤各有優劣,三者之間存在一定的互補性且將這3種特征進行融合是可行的。
針對HOG特征,本文采用的是快速Felzenszwalb’s HOG特征[12]。該特征將梯度方向分為9個,利用9個方向通道的直方圖計算HOG特征。其中,有2×9維方向通道的對比度敏感,有1×9維的方向通道的對比度不敏感,還有1×4維的紋理通道。因此,本文采用的HOG特征的總維數是18+9+4=31維。
針對LBP特征,本文采用的是LBP算子的等價模式。對于標準LBP特征,將其二進制數串記為首尾循環,若其中從0到1或者從1到0跳變次數小于等于兩個,則稱該局部二進制模式為等價模式[13]。利用等價模式,LBP算子就可以從原始的256種減少到58種,其特征維數就可以降為58維。
通常,按照融合系統中數據抽象的層次,圖像融合可以劃分為像素級融合﹑特征級融合和決策級融合3個級別[14]。文獻[15]指出,采用特征級圖像融合方法描述所識別的性能要優于像素級圖像融合和決策級圖像融合。特征融合的方法一般有串聯融合和并聯融合兩種。串聯融合后形成新的特征矩陣,此時特征矩陣的維數為特征向量維數相加;并聯融合后形成的新特征矩陣維數為特征向量中維數的最大值。當需要融合的特征向量維數較多時,串聯融合會使融合后的新特征向量維數也較多,會加大需計算的特征通道數,進而影響算法的跟蹤速度。并聯融合不會增加需計算的特征通道數,但要求融合的特征向量之間具有相似的特征維數,從待融合特征本身而言,待融合的特征還需有相似的表達方式和歸一化的表達空間。
在3種待融合特征中,HOG特征和LBP特征具有相似的特征表達方式。HOG特征(31維)和LBP特征(58維)特征維數相似,若這兩者之間采用串聯融合,算法需計算的特征通道就會增加,所以串聯融合不適用于這兩種特征的融合,應采用并聯融合。灰度特征只有一維,采用串聯融合不會給其他特征造成特征維數的負擔。相比于其他融合方式,串聯融合和并聯融合較為常見且易于編程實現。本文先將HOG特征(31維)和LBP特征(58維)并聯融合,再串聯融合灰度特征,融合后的特征為HLG(HOG+LBP+Gray)特征(59維)。特征層融合的方法如圖4所示。

圖4 特征層融合法
改進的KCF算法首先從輸入的視頻幀中讀取候選圖像塊,將融合好的HLG特征進行特征提取,然后訓練分類器,通過訓練好的分類器檢測出目標的位置,最后更新跟蹤模型的參數。改進的KCF算法流程如圖5所示。

圖5 KCF算法流程示意
改進算法的詳細步驟如下。
步驟1 參數初始化。從數據集中讀入第一幀和跟蹤目標的初始位置pos,創建跟蹤目標框并將跟蹤框的大小擴大為2.5倍,大小記為M×N,同時對跟蹤框進行余弦加權。


步驟4 樣本檢測。先提取下一幀圖像的HLG特征,再通過步驟3中更新的model_xf計算檢測核相關矩陣,model_alphaf計算響應值。找到響應值中最大的值,即為跟蹤的目標位置。重復步驟2到步驟4,直到所有的圖像序列加載完成。
本實驗的數據集采用的是文獻[4]提出的OTB(Object Tracking Benchmark)數據集。OTB數據集中的視頻序列包含了光照變化、尺度變化、遮擋、目標變形、目標運動模糊、目標快速移動、目標平面內旋轉、目標超平面旋轉、目標離開視野、背景雜亂和低分辨率等不同的運動場景。通過灰度特征、LBP特征、HOG特征和新合成的HLG特征,選取數據集中較為典型的Basketball,Skating1,Shaking,Tiger2,Couple,Freeman4序列進行了跟蹤。利用灰度特征跟蹤目標的實驗結果如圖6所示。LBP特征跟蹤目標的實驗結果如圖7所示。HOG特征和HLG特征跟蹤目標的實驗結果如圖8所示。
由圖6可以看出,圖6(a)中跟蹤框出現漂移現象;圖6(b)中由于目標和背景太過接近,跟蹤框無法確定目標的準確位置;圖6(c)和圖6(d)中出現了目標丟失的情況;圖6(e)中的跟蹤較好;圖6(f)中出現了短暫的目標丟失,但最終仍能實現對目標的跟蹤。由圖6(e)和圖6(f)可以看出,灰度特征在跟蹤目標較小、目標在平面內快速移動的場景中跟蹤效果較好。
由圖7可以看出,圖7(a)和圖7(b)、圖7(e)和圖7(f)序列中都出現了目標丟失的情況,跟蹤效果不佳,但在圖7(c)和圖7(d)序列中的跟蹤效果較佳,在目標跟蹤的過程中沒有出現目標丟失和跟蹤框的漂移。可見LBP特征在背景復雜、光照變化強烈、有部分遮擋的場景中可以很好地跟蹤到目標。

圖8 HOG特征和HLG特征實驗結果
圖8中每組序列的上面一行是HOG特征的跟蹤效果,下面一行是新合成的HLG特征的跟蹤效果。由于原算法采用的是HOG特征,故將HOG特征和HLG特征的跟蹤效果進行對比。由圖8可以看出,HLG特征的跟蹤效果要優于HOG特征的跟蹤效果。由圖6和由圖7可以看出,LBP特征和灰度特征均不能很好地實現實時跟蹤,都存在一定的缺陷。由此可知,相較于單一的特征,融合后的特征能夠適應在更多的場景中進行跟蹤,且跟蹤效果較好,彌補了原算法僅使用單一特征跟蹤目標的缺陷。
跟蹤效果的好壞與跟蹤準確度有很大的關系。本實驗采用跟蹤準確度作為定量分析指標。在跟蹤過程中,準確度定義為跟蹤框中心距離目標真實位置中心在一定閾值范圍以內的幀數占視頻序列總幀數的比例[16]。圖9為改進算法和KCF算法在OTB數據集上進行跟蹤測試時的跟蹤性能示意。

圖9 算法跟蹤準確度比較
由圖9可以看出,本文所提算法在KCF算法的基礎上,較好地提高了跟蹤目標的準確度。當閾值為20像素時,原算法準確度是0.609,本文算法準確度是0.649,其準確度較原算法提高了4%,表明在跟蹤過程中,本文算法完全可以在滿足跟蹤實時性的同時具有一定的跟蹤精度。
本文提出的多特征融合的核相關濾波跟蹤算法,較好地克服了目標尺度變化、光照變化、目標形變等挑戰屬性;利用融合后的特征表達,在具有挑戰性的場景中對目標進行跟蹤,獲得了較好的跟蹤效果。由于本文所提算法計算速度快、編程簡單、易于實現,所以能夠適用于更多場景中對目標的實時跟蹤。本文算法的不足之處是目標尺度無法實現自適應的變化,今后可以從目標尺度自適應的方向進行改進,以增加目標跟蹤的準確率。