任靜
摘 要:針對目標圖像跟蹤過程中提取待匹配圖像較大的特征向量時,很難滿足準確性和快速性要求,提出了結(jié)合卡爾曼濾波的SIFT目標跟蹤算法。算法利用Kalman濾波器對動態(tài)目標在下一幀圖像中可能出現(xiàn)的位置,在自適應(yīng)窗口中識別動態(tài)目標。實驗證明,該算法可以縮短了待匹配圖像的SIFT特征點提取時間,提高了目標跟蹤的效率。
關(guān)鍵詞:尺度不變特征變換算法;卡爾曼濾波;目標識別;特征點提取
中圖分類號:TP391.4 文獻標志碼:A
SIFT Tracking Algorithm Combined with Kalman Filter
REN Jing
(Colleage of Computer Science,Xian Aeronautical University,Xian,Shaanxi 710077,China)
Abstract:Target image extraction and matching image tracking larger feature vectors,It is difficult to meet the requirement of accuracy and rapidity,
when extracting the eigenvectors to be matched during the target image tracking.
A SIFT target tracking algorithm based on Kalman filter is proposed.The algorithm makes use of the Kalman filter to identify the dynamic target in the next frame image,which can be used to identify the dynamic object in the adaptive window.Experiments show that the proposed algorithm can shorten the time of SIFT feature points extraction and improve the efficiency of target tracking.
Key words:scale invariant feature transform(SIFT);Kalman filter;object recognition;feature point extraction
1 引 言
隨著計算機視覺技術(shù)的迅速發(fā)展,對視頻序列中的動態(tài)目標進行實時跟蹤成為計算機視覺領(lǐng)域的重要研究方向,其核心是在圖像序列中識別出目標的同時對其進行精確定位。
在視頻的動態(tài)場景中,動態(tài)目標是不停運動的,背景也是不停變化的??梢园l(fā)現(xiàn)觀察視頻流中背景是不停變化的,而動態(tài)目標是一直出現(xiàn)在視頻流中的。提取一幀圖像中的特征點,那么屬于目標的特征點是包含在這些特征點中的,而隨著背景的變化,背景上的特征點卻而逐漸消失。針對這一特點,可以采用特征匹配方法來提取出動態(tài)背景下的動態(tài)目標[1]。
David G.Lowe于1999年首次提出尺度不變特征轉(zhuǎn)換SIFT算法(Scale-invariant feature transform),常用來偵測與描述視頻中的局部性特征[2][3],由自發(fā)表后于2004年完善總結(jié)。該特征屬于局部特征,它的不變性或說穩(wěn)定性主要體現(xiàn)在圖像旋轉(zhuǎn)、尺度大小變化以及光照明暗的同時,并且還能夠較好地應(yīng)對觀察視角的調(diào)整、噪聲干擾以及仿射變換[4][5]。
在圖象中,由于特征點的數(shù)量比圖像的象素點要少,所以使用特征點進行匹配可以大大減少計算量;同時,特征點對位置的變化比較敏感,使用特征點進行匹配能提高精確度;此外特征點的提取過程可以減少噪聲的影響,使用特征點可以適應(yīng)于灰度變化,圖象形變以及遮擋等?;谝陨显?,本文研究了基于一種特征點(SIFT)的視頻序列中動態(tài)目標提取算法。SIFT算法提取的關(guān)鍵點特征向量不會隨著尺度縮放、旋轉(zhuǎn)、亮度等變化而變化,對于目標受到部分遮擋的情況,該算法也有很好的適應(yīng)性能。
2 SIFT特征提取算法
SIFT算法基于圖像特征尺度選擇的思想,建立圖像的多尺度空間,在不同尺度下檢測到同一個特征點,確定特征點位置的同時確定其所在尺度,以達到尺度抗縮放的目的,剔出一些對比度較低的點以及邊緣響應(yīng)點,并提取旋轉(zhuǎn)不變特征描述符以達到抗仿射變換的目的。包括了以下步驟:檢測尺度空間局部極值點;
確定關(guān)鍵點的位置和方向參數(shù);描述關(guān)鍵點特征向量。
(1)檢測尺度空間局部極值
檢測該空間局部極值的前提條件需要創(chuàng)建合適的尺度空間。一些圖像特性在某一尺度下不容易看出或獲取,當在很容易在另外的尺度下看出來或檢測到。所以??梢岳枚喑叨雀行У靥崛D像特征,獲取圖像內(nèi)容。
線性核是實現(xiàn)尺度變換的唯一的高斯卷積核,一副二維圖像的尺度空間可以定義為:
L(x,y,σ)=G(x,y,σ)I(x,y)(1)
其中 G(x,y,σ)是尺度可變高斯函數(shù)
G(x,y,σ)=12πσ2e-(x2+y2)/2σ2(2)
(x,y)是空間坐標,σ是尺度空間因子[6]。
提出了高斯差分尺度空間(DOG scale-space)可以在尺度空間有效的檢測到穩(wěn)定的關(guān)鍵點。高斯差分尺度空間利用不同尺度的高斯差分核與圖像卷積生成。
D(x,y,σ)=(G(x,y,kσ)-G(x,y,σ))I(x,y)=L(x,y,kσ)-L(x,y,σ)(3)endprint
用兩個不同尺度高斯濾波器相減從而得到結(jié)果是DoG算子的核心思想。
(2)確定關(guān)鍵點的位置和方向參數(shù)
對于候選集合中的極值點,成為最終成為關(guān)鍵點還必須通過兩步檢測:與其“相鄰”點相比,要求特征點的灰度值的差異明顯,且邊緣點不能作為極值點。
可以通過擬合二階微分方程,找到低對比度的點。對D (x ,y,σ)進行泰勒展開至二次項得到:
3 基于SIFT的動態(tài)目標跟蹤方法
在視頻序列中可能包含各種復(fù)雜的場景,卡爾曼濾波跟蹤和Mean Shift跟蹤,只適應(yīng)于背景簡單的視頻目標跟蹤。由于很難用灰度門限分割圖像,因此當物體被遮擋或者出現(xiàn)多個物體時,相關(guān)跟蹤就成為動態(tài)目標跟蹤的一個很好的選擇。在相關(guān)跟蹤中,識別和測定目標位置的依據(jù)是預(yù)先存儲目標圖像樣板,通過比較目標樣板與實時圖像的各個區(qū)域圖像,當前的動態(tài)目標就是和目標樣板最相似的區(qū)域,可以很好的利用SIFT算法識別兩幅圖像中的相同物體。
由于SIFT的特征點對噪聲也保持一定的穩(wěn)定性,而且對旋轉(zhuǎn)、尺度縮放、亮度變化十分不敏感,因為相關(guān)跟蹤的關(guān)鍵技術(shù)是圖像的相關(guān)匹配,因此,在相關(guān)跟蹤中利用SIFT特征點,可能會提高傳統(tǒng)相關(guān)跟蹤方法的魯棒性[8]。
利用SIFT算法進行目標跟蹤算法的具體步驟如下:
(1)提取目標物體的SIFT特征點,生成描述字符D1;
(2)提取一段視頻中的一幀圖像,并提取這一幀圖像上的SIFT特征點,設(shè)其描述字符為D2;
(3)匹配D1與D2,如果特征點個數(shù)在匹配上大于閾值N,則匹配成功,進入第(4)步,否則返回第(2)步;
(4)鎖定匹配上的結(jié)果,返回視頻下一幀圖像,再進行第(2)步。
4 結(jié)合卡爾曼濾波的SIFT目標跟蹤算法
基于SIFT的特征匹配方法雖然具有旋轉(zhuǎn)、尺度縮放、亮度變化不變性,仿射變換、對視角變化、噪聲具有一定程度的穩(wěn)定性。但是提取待匹配圖像較大的特征向量則需要大量的時間。很難滿足實時性的要求。如果動態(tài)目標在待匹配圖像中的大致位置能預(yù)先知道,那么就只需要提取動態(tài)目標可能出現(xiàn)區(qū)域的特征向量,然后進行圖像特征匹配,這將提高動態(tài)目標檢測的效率,大大縮短圖像匹配的時間,滿足實時性的需要。目前,主要有多假設(shè)跟蹤、基于Monto Carlo方法的濾波器和卡爾曼濾波器等三種狀態(tài)估計方法??柭鼮V波器算法運算簡單,速度較快,是一種最常用和最簡單的狀態(tài)估計算法。因此,本文提出結(jié)合SIFT特征提取與匹配算法進行目標匹配,運用卡爾曼濾波器對動態(tài)目標進行運動狀態(tài)估計,完成動態(tài)目標檢測的目的。
另外,基于SFIT的目標檢測,某些帶有高強度噪聲的圖片容易產(chǎn)生誤匹配。而卡爾曼濾波可以用來估計信號的過去和當前,甚至于將來的狀態(tài)。結(jié)合卡爾曼濾波估計均方誤差最小和狀態(tài)估計的特性,計算候選目標的精確位置,同時對特征點運動向量進行聚類分析,有效地剔除了噪聲干擾所引起的錯誤匹配,提高了匹配精度。
利用卡爾曼濾波算法預(yù)測了下一時刻動態(tài)目標可能出現(xiàn)的位置后,就需要對該預(yù)測所得到位置周圍區(qū)域進行目標識別匹配??梢苑Q這個區(qū)域為自適應(yīng)匹配窗口,在動態(tài)目標跟蹤時,它是真正的圖像檢測窗口。自適應(yīng)匹配窗口的設(shè)計實際上是截取了原圖像的一部分,該大于目標圖像而小于視場,同時必須保證在跟蹤過程中可以一直包含動態(tài)目標的特征。因此,不需要在整個視野圖像進行特征提取和匹配,只針對匹配窗口中的圖像進行特征提取和特征匹配,這樣不但減少了需要處理的數(shù)據(jù)量,縮短了動態(tài)目標圖像特征的提取和匹配時間,而且減少了自適應(yīng)窗口外的其它干擾因素。
結(jié)合卡爾曼濾波的SIFT目標跟蹤算法的流程圖如圖2所示。
5 實驗結(jié)果與分析
在Windows 7系統(tǒng)下,酷睿2雙核 (2.5G Hz)處理器,內(nèi)存2G,在Matlab7.0上進行仿真,視頻格式為.avi,圖像大小為360*240,幀率為25 fps。本文算法的跟蹤結(jié)果如圖3所示,單獨使用卡爾曼濾波算法的跟蹤結(jié)果如圖4所示。
卡爾曼濾波結(jié)合SIFT算法與單獨使用卡爾曼濾波算法對于測試圖像序列的跟蹤結(jié)果比較如圖5與圖6所示。圖5比較的是跟蹤誤差,縱坐標表示目標中心的偏差,橫坐標表示幀數(shù)。
圖6比較的是目標矩形框的尺度誤差。橫坐標表示幀數(shù),縱坐標表示算法的跟蹤矩形框?qū)挾扰c人工標定的矩形框?qū)挾鹊恼`差(X),以及算法跟蹤矩形框高度與人工標定矩形框高度的誤差(Y)。從此圖中可以看出單獨使用卡爾曼濾波算法的目標矩形框,隨著目標尺寸的變化不發(fā)生改變。而本文提出的算法,跟蹤框隨著目標尺寸的改變而變化。
6 結(jié) 論
對目標跟蹤過程易受噪聲干擾導(dǎo)致跟蹤效果不理想,甚至丟失跟蹤目標的問題,利用了尺度不變特征變換(SIFT)方法對單幀圖像進行了目標特征點的提取和匹配。
針對目標圖像跟蹤的準確性和快速性要求,提出了基于Kalman目標運動軌跡預(yù)測的SIFT特征目標跟蹤算法。利用Kalman濾波器對動態(tài)目標在下一幀圖像中可能出現(xiàn)的位置,并在自適應(yīng)窗口中識別動態(tài)目標,該算法可以縮短了待匹配圖像的SIFT特征提取時間,提高了目標跟蹤的效率。
參考文獻
[1] 毛華.動態(tài)場景中運動目標跟蹤算法研究與實現(xiàn)[D].成都:電子科技大學,2009.
[2] LOWE D G.Object recognition from local scale-invariant features[C].International Conference on Computer Vision,Corfu,Greece,1999(9):1150-1157.
[3] LOWE D G.Distinctive Image Features from Scale-Invariant Keypoints[C].International Journal of Computer Vision,60,2(2004):91-110.
[4] 李志華,陳耀武.基于多攝像頭的目標連續(xù)跟蹤[J].電子測量與儀器學報,2009,23(2):46-51.
[5] 劉兆慶,李瓊,劉景瑞,等.一種基于 SIFT 的圖像哈希算法[J].儀器儀表學報,2011,32(9):2024-2028.
[6] 程成,須文波,冷文浩.基于 iSIGHT 平臺 DOE方法的螺旋槳敞水性能優(yōu)化設(shè)計 [ J].計算機工程與設(shè)計,2007,28( 6): 1455- 1459.
[7] 于麗莉,戴青.一種改進的 SIFT 特征匹配算法[J].計算機工程,2011,37(2):210-212.
[8] 吳銳航.基于SIFT特征的圖像檢索技術(shù)研究[D].廈門大學,2007.endprint