《電子技術(shù)應(yīng)用》
您所在的位置:首頁 > 其他 > 業(yè)界動態(tài) > 基于邊緣檢測和改進Mean Shift算法的紅外目標(biāo)自動跟蹤方法

基于邊緣檢測和改進Mean Shift算法的紅外目標(biāo)自動跟蹤方法

2008-07-03
作者:連 潔,韓傳久

??? 摘 要:提出了一種邊緣檢測與改進的Mean Shift算法相結(jié)合的紅外目標(biāo)" title="紅外目標(biāo)">紅外目標(biāo)跟蹤方法。利用結(jié)合小波消噪的Canny邊緣檢測方法對初始幀進行目標(biāo)檢測;在目標(biāo)被遮擋或丟失時,利用Kalman預(yù)測與形心定位方法修正Mean Shift的迭代跟蹤過程。
??? 關(guān)鍵詞: 紅外目標(biāo)? 形心定位? 自動跟蹤? Kalman預(yù)測? Mean Shift

?

??? 紅外目標(biāo)跟蹤" title="目標(biāo)跟蹤">目標(biāo)跟蹤是紅外警戒系統(tǒng)、空載下視系統(tǒng)和紅外尋的制導(dǎo)等軍事領(lǐng)域中的關(guān)鍵技術(shù)之一。在紅外目標(biāo)跟蹤中,感應(yīng)器與目標(biāo)運動的不穩(wěn)定、目標(biāo)狀態(tài)的多變且缺乏先驗信息、背景雜波和非目標(biāo)運動的干擾等均給紅外目標(biāo)跟蹤帶來困難。
??? Mean Shift算法是由Fukunaga和Hostetler于1975年首先提出的[1],它作為一種高效的模式匹配算法,已被成功地應(yīng)用于實時性要求較高的目標(biāo)跟蹤系統(tǒng)中。引入計算機視覺領(lǐng)域后[2], Mean Shift算法在圖像分割和跟蹤中亦得到廣泛應(yīng)用[3]。
??? 本文提出了一種結(jié)合目標(biāo)邊緣檢測和改進Mean Shift算法的自動跟蹤方案。一方面,根據(jù)目標(biāo)檢測結(jié)果提取目標(biāo)形心坐標(biāo)作為Mean Shift的起始位置,進行迭代匹配跟蹤;另一方面,在目標(biāo)被遮擋或丟失時,通過Kalman預(yù)測和目標(biāo)形心定位修正當(dāng)前幀目標(biāo)初始位置。這種方法可成功地實現(xiàn)目標(biāo)的實時跟蹤,并對跟蹤偏移有一定的穩(wěn)健性。
1?Mean Shift跟蹤算法
??? Mean Shift目標(biāo)跟蹤算法主要利用目標(biāo)的灰度和紋理特征的統(tǒng)計分布描述目標(biāo),并通過均值移位向量的梯度下降搜索達到目標(biāo)跟蹤。其跟蹤過程是首先對目標(biāo)模型的描述,以一定間隔的灰度值為單位,將取值為像素灰度值的特征空間分為m個特征值" title="特征值">特征值。在紅外視頻序列圖像中跟蹤目標(biāo),由于圖像像素的值域是灰度空間,RGB分量相同。將其分成k個相等的區(qū)間,每個區(qū)間稱為一個bin,構(gòu)成特征空間,特征空間中特征值的個數(shù)(也就是bin的個數(shù))m=256/k。在初始幀,包含目標(biāo)的搜索窗口中,通過目標(biāo)模型描述計算公式得出第u個特征值的概率。然后建立候選模型,運動目標(biāo)在第二幀及以后的每幀中可能包含目標(biāo)的區(qū)域稱為候選區(qū)域,對候選區(qū)域的描述稱為目標(biāo)候選模型,求出候選模型的特征值u=1,…,m的概率密度。計算出相似性函數(shù)。為了使相似性函數(shù)最大,在當(dāng)前幀中,以前一幀搜索窗口的位置作為當(dāng)前幀搜索窗口的位置,設(shè)窗口中心為y0,在y0鄰域內(nèi)尋找局部最優(yōu)目標(biāo)位置y1。通過對相似性函數(shù)求最大值,可以推導(dǎo)出Mean shift向量。

???

??? Mean Shift方法是以y0為起點,向兩個模型相比灰度變化最大的方向移動,這優(yōu)于一般算法中的盲目搜索。經(jīng)反復(fù)迭代,最后得到在當(dāng)前幀目標(biāo)的最優(yōu)位置y。詳細算法介紹在此不予贅述,請參看文獻[4]、[6]。
2 改進Mean Shift算法
??? Mean Shift算法在目標(biāo)模型描述上,特征值嚴(yán)格匹配,使得與目標(biāo)中心位置灰度相近的在窗口邊緣的灰度特征值丟失。其次,Mean Shift跟蹤迭代過程沒有一個匹配判斷標(biāo)準(zhǔn),容易錯誤迭代跟蹤位置而沒有糾正過程。針對Mean Shift在紅外目標(biāo)跟蹤應(yīng)用中的不足,本文做以下改進。
2.1 目標(biāo)模型
??? 由于背景噪聲影響和非剛性目標(biāo)灰度形狀不斷變化甚至被遮擋,目標(biāo)上可能部分灰度級缺失或者僅分布在離窗口中心較遠的邊緣位置。而窗口中心附近有大量與其相近灰度級的像素。這時可以認(rèn)為該灰度級為目標(biāo)特征的一部分,其概率密度(權(quán)重)應(yīng)該較大。然而用原Mean Shift目標(biāo)模型計算得到的該灰度級像素的概率密度為零或幾近為零,因此丟失了部分目標(biāo)特征。
??? 對此,本文在考慮像素位置加權(quán)的同時,利用核函數(shù)" title="核函數(shù)">核函數(shù)將像素灰度值匹配也賦予權(quán)值。改進后的目標(biāo)模型的概率密度函數(shù)可用式(2)描述:

???

其中,核函數(shù)k1(x)選用二維Epanechikov核函數(shù);k2(x)選用一維Gaussian核函數(shù)。k1(x)、k2(x)定義分別如下:

???

??? 式(2)中的參數(shù)σ表示允許灰度值匹配的最大差值,保證所取相似像素值在特征值u臨近范圍內(nèi),即差值大于σ時,權(quán)值為0,σ值滿足σ≤m。式(2)中h仍舊表示核函數(shù)帶寬。C2為歸一化系數(shù),保證

2.2 相似性度量" title="相似性度量">相似性度量函數(shù)
??? 由于目標(biāo)模型與候選模型相似,二者的特征概率密度估計均可用式(2)分別定義。設(shè)目標(biāo)模型描述為,候選目標(biāo)模型描述為。

??? 為了度量目標(biāo)模型和候選目標(biāo)的特征概率密度分布的相似性,需要一種距離測度來定義兩個離散分布之間的距離?;贐hattacharyya系數(shù),相似性度量函數(shù)定義如式(3)所示:

???

其中,

是Bhattacharyya系數(shù)的樣本估計值。相似性度量函數(shù)運用離散密度,不受目標(biāo)尺寸變化影響。d值越大說明目標(biāo)與候選目標(biāo)直方圖模式差別越大。設(shè)度量值為θ,當(dāng)d<θ時,認(rèn)為目標(biāo)模型沒有發(fā)生變化,可以跟蹤;反之,當(dāng)d>θ時,判斷為失去跟蹤。
條件d<θ使得初始預(yù)測位置與目標(biāo)實際位置距離較小,從而保證了Mean Shift算法每次迭代跟蹤收斂到局部最優(yōu)解。
3 Kalman預(yù)測起始點
??? 在相似性函數(shù)值較大的情況下,跟蹤嚴(yán)重偏離目標(biāo),為了不影響下一幀初始目標(biāo)模型的計算,必須對目標(biāo)位置進行修正。在估計下一幀的跟蹤起始點的步驟中,采用了Kalman濾波器進行運動預(yù)測。
??? 第1幀到第k-1幀中,Mean Shift計算的目標(biāo)中心可以形成一個運動軌跡,將這些中心位置值作為Kalman濾波器的觀測值。假設(shè)運動目標(biāo)中心在X、Y軸上的運動是一個受隨機加速度擾動的運動。令信號向量S(k)=[x(k) y(k) x′(k) y′(k)]T,其中x(k)、y(k)分別為目標(biāo)中心在x、y軸上的位置分量,x′(k)、y′(k)分別為x、y軸上的速度。觀測向量X(k)=[xc(k) yc(k)]T,其中xc(k)、yc(k)分別是目標(biāo)中心x、y軸上的位置觀測值。
??? 這樣,Kalman濾波器算法包含的兩個模型
??? 信號模型:S(k)=A(k-1)S(k-1)+B(k)W(k)

??? 觀測模型:X(k)=C(k)S(k)+V(k)
??? 分別可以表示為式(5)和式(6):

???

其中,w(k)為加速度擾動項,v(k)為位移擾動項。設(shè)定初始值:t=1,X(-1)=[xs ys 0 0]T。
??? 設(shè)定某個較大的相似度d以檢測目標(biāo)被遮擋的情況發(fā)生。當(dāng)d>θ時,認(rèn)定目標(biāo)被遮擋,保留目標(biāo)的特征分布,僅利用卡爾曼預(yù)測來完成跟蹤,同時不斷進行相似度比較,直到目標(biāo)重新出現(xiàn),d<θ。如果相似度持續(xù)較大的幀數(shù)過多,則認(rèn)定目標(biāo)跟蹤丟失,轉(zhuǎn)入目標(biāo)檢測過程??柭A(yù)測在開始幾幀的值不太準(zhǔn)確,經(jīng)過若干幀左右才會收斂,此時的預(yù)測值才具有指導(dǎo)意義,因此設(shè)定一個較大的閾值去比較預(yù)測值與實際跟蹤點的距離,判定是否收斂。

4 邊緣檢測定位
4.1 基于小波的Canny邊緣檢測算法[7]
??? 為了確定搜索窗口的初始位置,首先需要檢測出初始幀所包含的目標(biāo)。設(shè)紅外序列圖像的初始幀為第0幀。利用小波的Canny邊緣檢測方法,從復(fù)雜背景中提取出小目標(biāo)的邊緣。邊緣提取結(jié)果連續(xù)閉合,符合Canny準(zhǔn)則,為下一步目標(biāo)形心計算做準(zhǔn)備。算法流程及結(jié)果分別如圖1、圖2所示。

圖1 結(jié)合小波的Canny算法流程圖

?

?

4.2 形心計算
??? 由目標(biāo)邊緣計算形心,公式如下:

???

??? 其中,xi、yi分別為目標(biāo)邊緣點第i個像素的橫、縱坐標(biāo)值,N為目標(biāo)邊緣點的像素個數(shù)。由式(7)即可得出目標(biāo)形心坐標(biāo)

5 Mean Shift自動跟蹤算法流程設(shè)計
??? 本文自動跟蹤方法主要分以下幾個部分。其設(shè)計流程如圖3所示。

?

??? (1)自動初始化:首先從視頻流中讀取圖像數(shù)據(jù)。對讀取的第一幀,通過基于小波消噪的Canny邊緣檢測方法進行目標(biāo)檢測,得到形心坐標(biāo),初始化Mean Shift算法的目標(biāo)跟蹤中心。設(shè)丟失幀計數(shù)變量為n,且n=0。
??? (2)Mean Shift迭代跟蹤:用式(2)計算窗口內(nèi)目標(biāo)初始位置的目標(biāo)概率分布。同樣,計算下一幀候選目標(biāo)在相同位置的概率分布。其中在特征描述方式上使用了核函數(shù)級聯(lián)形式。然后用式(1)計算Mean Shift矢量迭代至收斂點。
??? (3)相似度判斷:在每次的Mean Shift矢量迭代過程中,利用式(3)計算相似性度量函數(shù)d。當(dāng)d達到一個穩(wěn)定值后進行判斷。設(shè)相似性度量為一個較大的值θ。若d<θ,說明目標(biāo)與候選模型匹配,跟蹤有效。得到的收斂點置為初始位置,丟失幀計數(shù)清零,繼續(xù)計算目標(biāo)初始分布,更新了目標(biāo)模型,進行下一次Mean Shift迭代。若d>θ,說明目標(biāo)跟蹤框偏移目標(biāo)較大,失去跟蹤。為了糾正目標(biāo)概率分布的描述,使核函數(shù)作用在目標(biāo)中心上,保留此時的目標(biāo)特征分布(即不更新目標(biāo)模型),對丟失幀計數(shù)變量n進行累加計數(shù)。轉(zhuǎn)用Kalman進行跟蹤預(yù)測。
??? (4)Kalman預(yù)測起始點:記當(dāng)前幀為k。使用Kalman濾波對k+1的目標(biāo)位置進行預(yù)測,然后輸出跟蹤點位置。計算k+1幀在此點的特征分布,之后與保留的目標(biāo)特征分布進行Mean Shift迭代匹配。
??? (5)目標(biāo)重新檢測:當(dāng)Kalman預(yù)測跟蹤的位置一直不能夠與原目標(biāo)特征分布匹配,所丟失的幀計數(shù)n超過設(shè)定值N時,則判斷目標(biāo)丟失,需要重新定位目標(biāo)。此時返回自動初始化步驟,對目標(biāo)進行定位,重新初始化Mean Shift跟蹤。
6 實驗結(jié)果與分析
??? 實驗視頻序列長度為420幀,每幀圖像的大小為128×128像素,視頻速率為10幀/秒。實驗均在Celeron(R)2.26GHz,256MB內(nèi)存的PC機上采用Visual C++6.0軟件平臺進行?;叶攘炕燃墳?2×32。
??? 原Mean Shift方法對視頻跟蹤結(jié)果如圖4所示。設(shè)定目標(biāo)模型的大小(核函數(shù)的半徑h)為(h,h)=(5,5)。其中為便于觀看,用白色十字叉絲標(biāo)注目標(biāo)跟蹤的位置。實驗在前30幀對目標(biāo)跟蹤效果較好。30~100幀,背景干擾較大,目標(biāo)有時被遮擋,跟蹤框在目標(biāo)附近徘徊漸漸偏離目標(biāo);190幀以后,感應(yīng)器突然抖動,跟蹤偏離加大;300幀后,背景灰度突變時,跟蹤框偏移更大,并停止跟蹤。實驗說明在目標(biāo)遮擋、背景灰度驟變和感應(yīng)器相對于背景和目標(biāo)的不穩(wěn)定快速運動下,Mean Shift方法容易丟失目標(biāo)且不能恢復(fù)跟蹤。


??? 采用本文所述Mean Shift紅外目標(biāo)自動檢測跟蹤方法對視頻序列重新進行目標(biāo)跟蹤實驗。本文Mean Shift處理的跟蹤結(jié)果如圖5所示。其中十字叉絲的交點為目標(biāo)跟蹤的位置。

?

??? 實驗在前30幀對目標(biāo)跟蹤效果如原Mean Shift算法一樣,跟蹤定位準(zhǔn)確。30~100幀,背景干擾較大、目標(biāo)有時被遮擋的情況下,跟蹤框在目標(biāo)附近有小幅度的波動,但沒有遠離目標(biāo)位置,仍可以實現(xiàn)對目標(biāo)的跟蹤;190幀以后,感應(yīng)器突然抖動,跟蹤框遠離了目標(biāo)。開始目標(biāo)大部分還在核函數(shù)作用范圍內(nèi),而到201幀時目標(biāo)偏離較大,此時兩幀目標(biāo)模型的相似程度很小,轉(zhuǎn)為Kalman預(yù)測目標(biāo)位置。到205幀時,跟蹤框內(nèi)的特征分布依然與丟失前差別較大,目標(biāo)沒有跟蹤上??梢钥吹?,在206幀時,通過對目標(biāo)邊緣檢測,重新定位,恢復(fù)了對目標(biāo)的有效跟蹤。在300幀以后,序列圖像灰度突變,目標(biāo)的灰度也有所變化,但改進的目標(biāo)描述,使其仍能穩(wěn)定準(zhǔn)確地跟蹤目標(biāo)。實驗對一幀平均處理速率約為72.7ms,實現(xiàn)了紅外小目標(biāo)的實時跟蹤。本文方法有效地修正了跟蹤偏移的情況,能夠?qū)t外目標(biāo)實現(xiàn)實時穩(wěn)健的跟蹤。
??? 本文提出了一種基于改進的Mean Shift算法的紅外目標(biāo)自動跟蹤方案。通過結(jié)合小波的Canny邊緣檢測算法對初始幀進行目標(biāo)檢測并計算目標(biāo)的形心坐標(biāo),對Mean Shift算法進行自動初始化。使用了級聯(lián)核函數(shù)的方法改進目標(biāo)的描述方式,通過相似性度量函數(shù),判斷目標(biāo)是否失去跟蹤。在失去跟蹤時,通過Kalman預(yù)測跟蹤位置。在目標(biāo)丟失的情況下,重新進行目標(biāo)定位來獲得穩(wěn)定的跟蹤。這種方法在跟蹤偏移的情況下,能夠調(diào)整算法的初始目標(biāo)模型分布,從而修正Mean Shift的跟蹤過程。實驗結(jié)果表明,本文所提出的方案實現(xiàn)了對紅外目標(biāo)的實時自動檢測跟蹤,同時對于目標(biāo)遮擋、丟失的情況是穩(wěn)健的。
參考文獻
[1] ?FUKUNAGE K, HOSTETLER L D. The estimation of the gradient of a density function with application in pattern recognition [J]. IEEE Trans. on Information Theory, 1975, ?21(1): 32-40.
[2] ?CHENG Y. Mena Shift, mode seeking and clustering [J].IEEE Trans on Pattern Analysis and Machine Intelligence,1995,17(8):790-799.
[3] ?COMANICIU D, MEER P. Mean shift analysis and application[J]. Proceedings of the Seventh IEEE International Conference Computer Vision, 1999, 2: 1197-1203.
[4] ?COMANICIU D, RAMESH V, MEER P. Kernel-Based object tracking. IEEE Trans. on Pattern Analysis and Machine Intelligence, 2003,25(5):564-575.
[5] ?程建,楊杰.一種基于均值移位的紅外目標(biāo)跟蹤新方法[J].紅外與毫米波學(xué)報,2005,24(3):231-235.
[6] ?朱勝利. Mean Shift及相關(guān)算法在視頻跟蹤中的研究[D].浙江:浙江大學(xué)博士學(xué)位論文,2006.
[7]? 連潔,韓傳久,潘路. 基于Canny算法的紅外小目標(biāo)邊緣檢測方法[J]. 微計算機信息,2007,23(18):308-310.

本站內(nèi)容除特別聲明的原創(chuàng)文章之外,轉(zhuǎn)載內(nèi)容只為傳遞更多信息,并不代表本網(wǎng)站贊同其觀點。轉(zhuǎn)載的所有的文章、圖片、音/視頻文件等資料的版權(quán)歸版權(quán)所有權(quán)人所有。本站采用的非本站原創(chuàng)文章及圖片等內(nèi)容無法一一聯(lián)系確認(rèn)版權(quán)者。如涉及作品內(nèi)容、版權(quán)和其它問題,請及時通過電子郵件或電話通知我們,以便迅速采取適當(dāng)措施,避免給雙方造成不必要的經(jīng)濟損失。聯(lián)系電話:010-82306118;郵箱:aet@chinaaet.com。