景星爍, 鄒衛(wèi)軍, 夏 婷, 李 超, 許 旭
(1.南京理工大學,南京 210094; 2.山東農業(yè)大學,山東 泰安 271018)
目標跟蹤是在連續(xù)的圖像序列中估計目標的位置,需要面臨諸多困難,是一個具有挑戰(zhàn)性的難題。最初的研究算法主要是基于生成模型來進行跟蹤,如文獻[1-2],但這些算法的魯棒性不是太高,計算量很大,不適合進行實時跟蹤。隨著目標跟蹤算法的進一步發(fā)展,基于判別模型[3]的跟蹤成為研究熱點?;趬嚎s感知理論[4]的壓縮跟蹤算法[5]就是基于判別模型,通過生成一個稀疏的投影矩陣,然后將壓縮后的數(shù)據作為特征來進行分類,優(yōu)點是簡單、高效;但該算法仍存在一些缺陷,如對光照比較敏感,而且不能適應目標尺度的變化。隨后,研究人員在壓縮跟蹤的基礎上也做了一些改進。文獻[6]以多個矩陣作為壓縮感知中的投影矩陣,將壓縮后的數(shù)據作為特征提取出跟蹤所需的多種特征,使算法能夠適應紋理和光照變化,但跟蹤框大小固定,所以不能夠適應目標尺度的變化。文獻[7]通過結構約束性采樣,獲取不同位置不同尺度的掃描窗,離線計算不同尺度下的稀疏隨機感知矩陣,并用于降維,解決了目標的基本姿態(tài)變化及尺度縮放的問題,但是沒有解決光照變化、遮擋等問題。
本文綜合考慮以上缺陷,提出了改進算法:分析了HOG類特征對光照的不敏感性,與Haar-like特征采用固定比值方式進行融合,并結合尺度估計相關濾波器[8],尋找使濾波器得到最大響應的尺度,更新特征提取模板,從而實時地調整跟蹤窗口進行精確跟蹤。
壓縮跟蹤算法的主要思想就是利用符合壓縮感知RIP條件的隨機感知矩陣對高維圖像特征進行降維,并且對降維后的特征采用簡單的樸素貝葉斯分類器進行二分類,然后每幀通過在線學習更新分類器,實現(xiàn)目標跟蹤。基于壓縮感知理論[4]的降維公式可以描述為:V=RX,其中,X為高維特征信號(m維),V為低維特征信號(n維),R代表隨機測量矩陣。其特征降維過程為
(1)
Haar-like特征[5]是通過統(tǒng)計多個矩形框內的像素和,然后由這幾個矩形框內的像素和線性表示而成,此特征在圖像內的不同區(qū)域形成像素灰度特征,在目標發(fā)生一定形變時有較好的魯棒性,但是該特征由于引入的是顏色信息,所以對光照比較敏感,不能應對較大的光照變化情況。
每個樣本[5]的Haar-like特征算式為
(2)
式中:f(i)為第i個特征;Rrect(rk)為第k個矩形框內像素值的和;wk為第k個矩形框的權重;N是矩形特征f(i)中含有的矩形框總個數(shù),其值在2~4之間。
2005年,DALAL提出HOG(梯度向量直方圖)[9]特征,是指使用梯度的幅值和方向圍繞興趣點或圖像的一個區(qū)域構建直方圖。HOG特征表征了圖像矩形區(qū)域內的梯度強度和梯度方向的分布情況,由于它是在圖像的局部單元上操作的,所以對圖像的幾何和光學上的形變有著良好的不變性,彌補了Haar-like特征的不足。
計算HOG特征時首先要計算像素的梯度與梯度方向。圖像各像素點(x,y)的梯度算式為
Gx(x,y)=i(x+1,y)-i(x-1,y)
(3)
Gy(x,y)=i(x,y+1)-i(x,y-1)
(4)
式中,Gx(x,y),Gy(x,y),i(x,y)分別代表輸入圖像中像素點A(x,y)水平方向上的梯度、垂直方向上的梯度和該點像素值。所以,該像素點的梯度值與梯度方向分別為
(5)
θ=arctan(Gx/Gy)。
(6)
但是,使用上式直接計算梯度,計算量十分巨大,不能滿足實時性的要求,所以實際計算時采用中心向量算子[9][1,0,-1]來估計梯度。
為了與Haar-like特征進行融合,本文提出一種有別于傳統(tǒng)HOG特征的HOG類特征表示方法:在采集得到正負樣本之后,首先計算每個樣本圖像中所有像素點的梯度和梯度方向。其次,把梯度方向平均分成B個特征區(qū)間,按照每個像素點的梯度方向統(tǒng)計各像素點的梯度向量直方圖。最終,在每個特征區(qū)間,都能得到一幅梯度幅值圖像,進而得到B幅梯度幅值圖像。根據式(2),對每個梯度幅值圖像分別采用與Haar-like相同的處理方法,便可以得到上文所提到的HOG類特征。其特征數(shù)量為Haar-like特征數(shù)量的B倍。
由于每個Haar-like特征與HOG類特征提取時要統(tǒng)計矩形框內像素的和,計算量是十分龐大的,無法滿足實際要求。為了減少計算量,本文仍采用積分圖像[5]進行加速運算。
在實際提取特征時,需要使用上述所提到的隨機測量矩陣的方法進行降維。本文采用Haar-like特征與HOG類特征固定比值融合的方法,提取圖像更多有用的信息。利用隨機測量矩陣將高維特征X投影到低維空間。
vi=(yi1,yi 2,…,yiB,zi)
(7)
V=(v1,v2,…,vn)=RX
(8)
式中:(yi1,yi 2,…,yiB)代表HOG類特征值,B代表每個融合特征組中HOG類特征個數(shù);zi代表Haar-like特征值;V代表壓縮之后的特征向量,即通過隨機測量矩陣R得到的所有融合特征組。本文為了保持算法的實時性,在特征融合過程中采用的是固定比值融合,即參與訓練的Haar-like特征數(shù)與HOG類特征數(shù)的比值設置為1:B(B的大小可以根據不同場景和目標特征進行適當調整),然后使用融合特征組訓練和更新分類器并進行分類。
對于上述所計算的Haar-like與HOG類特征組,本文仍采用樸素貝葉斯分類器進行分類,假定V中的各元素是獨立分布的,構建分類器為
(9)
(10)
這4個參數(shù)會進行增量更新,即
(11)
式中:學習因子λ>0;
(12)
式(11)可以由最大化似然估計[5]得到。
針對目標運動過程中出現(xiàn)的尺度變化問題,本文借鑒多尺度跟蹤方法[10],通過學習一個獨立的一維相關濾波器去檢測目標尺度的變化,稱之為尺度相關濾波器。尺度估計方法為:首先在檢測出的目標周圍采集一系列不同尺度的圖像塊xsi,提取d維HOG特征進行圖像塊表達,對應的高斯函數(shù)標簽為ysi;利用這些圖像塊訓練RLS分類器[9],并在線性空間進行求解,獲得一個一維的尺度相關濾波器;最后通過尋找這個濾波器的最大輸出響應來完成尺度檢測。
訓練RLS分類器,得到尺度相關濾波器模板Bnum,Bden的計算和更新公式分別為
Bnum(i)=(1-ηs)Bnum(i-1)+ηsF(ysi)⊙F*(xsi)
(13)
(14)
式中,ηs是固定的參數(shù)。
尺度分類器的輸出響應為
(15)
隨著目標尺度的變化,特征提取模板也要變化。本文采用比例縮放的方式更新模板,即通過縮放特征模板中小矩形框的大小來保證適應目標尺度的改變。
改進后的算法流程如下:
1) 初始化有關參數(shù)[5,10]并手動設定第一幀中被跟蹤目標的中心位置及尺度;
2) 讀取新幀圖像,判斷是否為初始幀,若是,轉到8);否則,轉3);
3) 在圖像上一幀的目標中心位置的候選區(qū)域(距離半徑r≤γ[5])中提取候選樣本,并計算Haar-like和HOG類特征組的特征值;
4) 使用樸素貝葉斯分類器從候選區(qū)域中找到使分類數(shù)最大的目標中心位置作為新位置;
5) 在新目標區(qū)域周圍為尺度相關濾波器提取33個尺度樣本[10],并計算其特征值;
6) 計算尺度分類器的響應值,找到最大響應時的尺度;
7) 更新目標尺度,并更新特征模板;
8) 在圖像目標中心的內鄰域(距離半徑r≤α[5])與環(huán)形域(距離半徑ζ≤r≤β[5])分別提取當前尺度的正樣本和負樣本,用稀疏測量矩陣在正負樣本上提取Haar-like和HOG類特征組,并計算特征值;
9) 由8)得到的特征值更新樸素貝葉斯分類器參數(shù);
10) 在目標區(qū)域周圍為尺度相關濾波器提取33個尺度樣本[10],并計算樣本特征值;
11) 更新尺度分類器的參數(shù);
12) 判斷是否為最后一幀,如果是,則算法終止;否則,轉到2)。
本文實驗的計算機配置為:處理器為Intel(R) Core(TIM) i5-3230M CPU@2.60 GHz,內存為8.00 GB,64位Windows8 操作系統(tǒng)。開發(fā)環(huán)境為Matlab與C++的混合編譯環(huán)境,版本為Matlab 2014a。實驗中所用到的6組視頻序列來自公開的OTB數(shù)據集,每個視頻序列的特點如表1所示。Struck跟蹤算法[11]是基于結構輸出預測的自適應目標跟蹤框架,利用支持向量機(SVM) 原理實現(xiàn)跟蹤,其跟蹤速度與精度都不錯。實驗中,對比了原始壓縮跟蹤算法和Struck跟蹤算法,并在下文做出了具體分析。
表1 各視頻序列的特點
實驗過程中,設置基本參數(shù)為:梯度區(qū)間B取4,Haar-like特征數(shù)仍然取原始壓縮跟蹤算法中的50,學習率為0.85,α=4,β=30,ζ=8,γ=20;有關尺度估計的參數(shù)設置見文獻[10]。
中心距離精度PD、重疊率RO、中心位置誤差ECL是度量跟蹤算法性能的重要指標。其中:ECL是跟蹤目標位置與實際位置的歐氏距離,單位為像素;PD是ECL<20的幀數(shù)占總幀數(shù)的比值;RO的定義為
(16)
式中:RT為跟蹤得到的目標框;RG為標定目標框;S(·)表示矩形框(·)的面積。當RO大于0.5時,認為可以成功跟蹤到目標。
選取的6組視頻序列分別用Struck算法、CT算法及本文算法進行跟蹤測試,跟蹤效果對比如圖1所示。
通過以上跟蹤結果的定性對比,并且結合每個視頻序列所具有的特點,可以分以下幾種情況進行分析。
光照變化情況:圖1c、圖1d、圖1e中所示的視頻序列展示了光照變化對跟蹤算法的影響。對于CarDark序列,在夜晚道路上有明顯的光照變化,原始CT算法在開始時就已經跟蹤失敗,而Struck算法開始時跟蹤良好,但后期目標框產生了少許偏移,本文算法整體跟蹤都十分成功;Man序列中黑暗背景下CT算法與本文算法跟蹤很好,但發(fā)生光照劇烈變化時,CT算法跟蹤失敗,本文算法仍然可以精確跟蹤;Trellis序列中的光照變化也十分明顯,可以看到后期光照變化時Struck算法與CT算法直接跟丟目標,而本文算法十分穩(wěn)定。可以看出,Struck算法與CT算法對光照都十分敏感。
尺度變化情況:圖1a、圖1b、圖1e、圖1f所示序列都有目標的尺度變化,明顯看出,本文算法在加入了尺度自適應算法后效果比未加入尺度估計的Struck算法和CT算法效果更好。
旋轉與形變問題:圖1a、圖1b所示序列都涉及平面內旋轉問題,由Dog1序列中第650幀可以看出,本文算法應對此類問題比其他兩類算法更好,Dog2序列中的形變問題在第70,96,113幀可以明顯對比,Struck算法與CT算法跟蹤的目標位置已經出現(xiàn)了偏移,效果不如本文算法。圖1e中涉及平面外旋轉,可以看出,本文算法在應對平面外旋轉的情況時魯棒性有所欠缺。
背景相似干擾與部分遮擋問題:圖1c、圖1e所示序列中含有背景相似干擾,CarDark序列中Struck算法與本文算法都可以成功跟蹤,而在Trellis序列中只有本文算法可以成功跟蹤。對于Walking中的部分遮擋問題,本文算法與Struck算法都能跟蹤目標,且效果較Struck算法好一些。
綜合以上分析,本文算法不僅能夠大大降低對光照的敏感度,而且還能適應目標尺度的變化,另外,對于一些平面內旋轉形變及部分遮擋問題也能進行跟蹤,算法魯棒性有了一定的提高。
分別針對Struck算法、CT算法及本文算法的目標跟蹤結果定量計算出中心距離精度、重疊率以及中心位置誤差3項評價指標,如表2所示,并繪出跟蹤過程中的定位誤差的實時曲線,如圖2所示。
表2 中心距離精度、重疊率及中心位置誤差
圖2 各視頻序列定位誤差對比
表2及圖2都是對本文所進行對比的3種算法針對不同視頻序列的定量分析結果。實驗數(shù)據表明,不論是從中心距離精度、中心位置誤差還是重疊率方面來對比,本文算法性能都更加優(yōu)越。本文算法取得了最低的中心位置誤差,還取得了最高的中心距離精度和重疊率,只有Dog2序列的跟蹤重疊率較其他序列低一些。在實時性上,以Dog1序列為例,在上述計算機配置環(huán)境下,圖像像素大小為240×320,初始跟蹤框像素大小為51×36,本文算法平均速度為13.49幀/s,雖然相比原始壓縮跟蹤算法64.4幀/s和Struck算法20.2幀/s的速度有所降低,但仍然滿足準實時性要求。所以,本文算法整體跟蹤效果優(yōu)于其他兩種算法。
本文以傳統(tǒng)的壓縮跟蹤算法為基礎,提出了一種融合HOG類特征的尺度自適應壓縮跟蹤算法。由于融合了HOG類特征,大大降低了算法對光照變化的敏感度,而且加入了相關濾波尺度估計,能夠適應目標尺度的變化,提高了跟蹤算法的性能。實驗表明,本文算法在跟蹤難點如光照變化、平面內旋轉、形變、相似背景干擾及部分遮擋下跟蹤性能表現(xiàn)良好,具有較好的魯棒性。算法雖然仍具有準實時性,但在原始CT算法基礎上降速很多,所以在本文算法基礎上繼續(xù)提升速度是下一步的研究計劃。另外,本文對于兩類特征的融合采用了固定比值的融合方式,在保證算法實時性條件下兩種特征的自適應融合也將是本文未來的研究方向。