專利名稱:一種抗遮擋目標(biāo)軌跡預(yù)測跟蹤方法
技術(shù)領(lǐng)域:
本發(fā)明屬于計算機(jī)視覺與模式識別技術(shù)領(lǐng)域,具體涉及一種抗遮擋目標(biāo)軌跡預(yù)測 跟蹤方法。
背景技術(shù):
目標(biāo)跟蹤是計算機(jī)視覺的一個重要分支。在視頻監(jiān)控、物體識別、人機(jī)界面等應(yīng)用 領(lǐng)域中,往往需要在各種復(fù)雜的環(huán)境下對運(yùn)動物體進(jìn)行有效的跟蹤。跟蹤系統(tǒng)不但要求能 夠?qū)崟r適應(yīng)目標(biāo)因各種運(yùn)動導(dǎo)致的外觀變化,而且要求對場景中存在的諸如遮擋、光照變 化等因素的影響不敏感。MeanShift目標(biāo)跟蹤算法是一種基于密度梯度的無參數(shù)估計方法,于1975年由 Fukunaga[1]提出,1995年Cheng[2]將它引入計算機(jī)視覺領(lǐng)域。近年來,MeanShift目標(biāo)跟 蹤算法[3’4]以其無需參數(shù)、快速模式匹配的特性引起國內(nèi)外學(xué)者的關(guān)注并廣泛應(yīng)用到目標(biāo) 跟蹤領(lǐng)域[5_8]。MeanShift目標(biāo)跟蹤算法中核函數(shù)對于目標(biāo)中心的象素賦予一個大權(quán)值,而 遠(yuǎn)離中心的象素賦予小權(quán)值,保證了 MeanShift目標(biāo)跟蹤算法本身對遮擋和背景的變化有 很好的魯棒性[7]。這種算法在簡單背景環(huán)境中能夠取得較好的跟蹤效果,但是在復(fù)雜背景 中,由于該算法對運(yùn)動物體不做任何預(yù)測,不能解決大面積背景顏色干擾等問題,容易導(dǎo)致 跟蹤失敗,所以需引入估計器預(yù)測目標(biāo)運(yùn)動參數(shù)。Kalman濾波是一個在誤差協(xié)方差最小準(zhǔn)則下的最優(yōu)估計方法,計算量小,實時 性高,能利用實際的運(yùn)動參數(shù)不斷修正未來運(yùn)動狀態(tài)的估計值,提高估計的精度。因此將 Kalman濾波預(yù)測技術(shù)融入到MeanShift算法中,提高了跟蹤方法的抗干擾能力。然而,相對 于目標(biāo)區(qū)域的面積而言,如果目標(biāo)遭遇大比例的遮擋,MeanShift算法尋找到的目標(biāo)位置點 是不準(zhǔn)確的,由這個位置點信息組成的Kalman濾波器對當(dāng)前幀的觀測向量也不是正確的, 如果仍然由Kalman濾波器去預(yù)測目標(biāo)在下一幀的可能位置,可信度顯然很低。最小二乘支持向量機(jī)[9](Least Squares Support Vector Machines, LSSVM)是近 幾年來應(yīng)用于建模的一種新方法,LSSVM的最優(yōu)求解基于結(jié)構(gòu)風(fēng)險最小化思想,因此具有比 其他非線性函數(shù)逼近方法具有更強(qiáng)的泛化能力。參考文獻(xiàn)[1]K Fukunaga,L D Hostetler. The estimation of the gradient of a density functionwith application in pattern recognition. IEEE Trans Information Theory, 1975,21(1) 32-40[2]Y. CHENG. Mean shift, mode seeking, and clustering. IEEE Transactions onPattern Analysis and Machine Intelligence,1995,17 (8) :790_799[3]Comaniciu D,Ramesh V,Meer P. Real-time tracking of non-rigid objects usingmean shift[C]Proceedings of IEEE Conference on Computer Vision and PatternRecognition. Hihon Head Island. South Carolina :IEEE,2000,2 :142_149[4]Comaniciu D,Ramesh V. Mean shift and optimal prediction for efficientobj ecttracking[CProceedings of the 2000 IEEE International Conference on ImageProcessing. Vancouver, Canada :IEEE,2000,3 :70_73[5]Yilmaz A,Shafique K,Shah M. Target tracking in airborne forward lookinginfrared imagery[J]. Image and Vision Computing,2003,21 (7) :623_635[6]彭寧嵩,楊杰,劉志等.Mem Shift跟蹤算法中核函數(shù)窗寬的自動選取[J].軟 件學(xué)報,2005,16 (9) 1542-1550PENG Ning—song, YANG Jie, LIU Zh, et al. Automatic selection ofkerne1-bandwidth for mean-shift object tracking[J]. Journal of Software,2005, 16(9) : 1542-1550 (in CNnese)[7]Comaniciu D,Ramesh V. Meer P. Kernel-based object tracking[J]. IEEE TransOn Patern Analysis and Machine Intelligence. 2003,25(5) :564_575[8]Collins R T. Mean shift blob tracking through scale space[C]. IEEE InternatienalConference On Computer Vision and Pattern Reeognition. 2003,2 234-240[9] J. A. K. Suykens. Nonlinear modelling and support vector machines [C]// Instrumentation and Measurement Technology Conference. 2001 :287_294.[10]孫中森,孫俊喜,宋建中,等.一種抗遮擋的運(yùn)動目標(biāo)跟蹤算法[J].光學(xué)精密 工程,2007,15(2) 267-27
發(fā)明內(nèi)容
本發(fā)明的目的在于提出一種對部分遮擋以及全遮擋目標(biāo)進(jìn)行準(zhǔn)確跟蹤的抗遮擋 目標(biāo)軌跡預(yù)測跟蹤方法。本發(fā)明的目的是這樣實現(xiàn)的(1).初始選定跟蹤目標(biāo),Kalman參數(shù)初始化,計算目標(biāo)的量化直方圖。(2).讀取圖像,用MeanShift算法計算跟蹤窗口的位置和大小,并將窗口的中 心位置作為Kalman濾波的測量值,校正目標(biāo)的中心位置,同時更新目標(biāo)的狀態(tài)及方差陣, Kalman濾波器的預(yù)測結(jié)果用于設(shè)置下一幀圖像搜索窗口的中心位置。(3).將目標(biāo)位置輸出給軌跡預(yù)報程序,與跟蹤程序同時做下一幀目標(biāo)位置的預(yù) 報。 (4).根據(jù)方程《 =
aU)),Pu(y0)^o
m
Yj^u ‘凡(少o) = 0 and qu^0
求遮擋因子
otherwise (5).根據(jù)設(shè)定的閾值判斷目標(biāo)被遮擋情況若a小于此閾值,返回步驟2繼續(xù)下 一幀計算;若a大于此閾值,Kalman濾波器停止工作,跟蹤轉(zhuǎn)換為基于最小二乘支持向量
4機(jī)的軌跡預(yù)報,利用前一段時間MeanShift收斂點的位置用最小二乘支持向量機(jī)預(yù)測下一 幀可能起始點的值,然后在該起始點鄰域內(nèi)利用MeanShift目標(biāo)預(yù)測算法對當(dāng)前幀目標(biāo)的 位置進(jìn)行搜索(a)若未發(fā)現(xiàn)目標(biāo),繼續(xù)進(jìn)行基于最小二乘支持向量機(jī)的軌跡預(yù)報,若搜索超過已 設(shè)定的幀數(shù)仍未發(fā)現(xiàn)目標(biāo)則認(rèn)定跟蹤失?。?b)若發(fā)現(xiàn)目標(biāo),繼續(xù)啟用MeanShif目標(biāo)跟蹤算法和Kalman濾波器進(jìn)行跟蹤,并 更新Kalman濾波器狀態(tài),返回步驟(2)開始下一幀計算。本發(fā)明還可以包括目標(biāo)跟蹤過程中,利用最小二乘支持向量機(jī),將1到t_l時刻的軌跡坐標(biāo)作為輸 入,將本時刻t的坐標(biāo)作為輸出,訓(xùn)練最小二乘支持向量機(jī),時刻修正最小二乘支持向量機(jī) 模型。其有益效果在于與現(xiàn)有目標(biāo)跟蹤方法相比,本發(fā)明將基于最小二乘支持向量機(jī) LSSVM的軌跡預(yù)測融入MeanShift算法中,增強(qiáng)了算法的魯棒性,保證了跟蹤的穩(wěn)定性,同 時解決了目標(biāo)跟蹤過程中由于大面積或全部遮擋造成的跟蹤效果變差和目標(biāo)丟失問題。
圖1為目標(biāo)跟蹤與軌跡預(yù)報轉(zhuǎn)換流程圖。 圖2為LSSVM預(yù)測目標(biāo)u軸軌跡預(yù)測值與真實值的對比圖。 圖3為LSSVM預(yù)測目標(biāo)v軸軌跡預(yù)測值與真實值的對比圖。
具體實施例方式下面對本發(fā)明具體技術(shù)方案作進(jìn)一步說明。1、MeanShift目標(biāo)跟蹤算法MeanShift目標(biāo)跟蹤算法是一種非參數(shù)的密度估計算法,由起始幀為被跟蹤目標(biāo) 建立直方圖分布,用同樣的方法計算第N幀對應(yīng)的直方圖分布,以兩個分布的相似性最大 為原則。(1)目標(biāo)區(qū)域距離加權(quán)建模假設(shè)模板中各個像素點為felu,模板中心是y。定義函數(shù)b :h2 — {1,. . .,m},
像素點到模中心的歸一化距離。k(x)是核函數(shù),值越接近0,其值越大。S[x]是離散沖擊 函數(shù),當(dāng)x = 0時其值為1,否則其值為0。由此可以得到如下計算模板直方圖的公式(以
直方圖中像素值為u的項為例,其中&為的歸一化系數(shù),使概率之和為1) 式中, (2)候選區(qū)域距離加權(quán)建模同目標(biāo)區(qū)域距離加權(quán)建模相似,假設(shè)匹配對象中各個像素點為IxJh,..』,對象的 中心是y。對象的半徑是h,則計算對象直方圖的公式為(以直方圖中像素值為u的項為例, 其中C為pu(y)的歸一化系數(shù),使概率之和為1) 式中, (3)目標(biāo)與候選區(qū)域的相似性測度相似度采用Bhattacharyya系數(shù)表征,定義為
(3)可見,凡(力與分布越接近,p (y)值越大。由于歸一化,當(dāng)^^(力與I]禮
分布完全相同時,p (y)取得最大值1 ;否則,p (y)將介于0~1之間。(4)目標(biāo)位置搜索為使p (y)達(dá)到最大,在當(dāng)前幀中,以目標(biāo)在上一幀中的位置yQ(目標(biāo)區(qū)域的中 心位置),作為目標(biāo)在當(dāng)前幀中的初始位置,然后在%鄰域內(nèi)尋找最優(yōu)目標(biāo)位置yi,使得 P (yi)最大。對(3)式在p(ytl)處進(jìn)行泰勒展開,略去高階項后相似性函數(shù)可近似為 式中, 由于式⑷中的第1項與y無關(guān),為了使迭代得出的中心更接近實際的目標(biāo)中心, 式(4)中的第2項必須要取最大值。通過MeanShift迭代可以使該項最大,即找到了最佳 中心。中心迭代公式如下
(6)2、融入Kalman濾波預(yù)測技術(shù)的MeanShift目標(biāo)跟蹤算法跟蹤過程中,由于相鄰兩幀圖像時間間隔較短,目標(biāo)運(yùn)動狀態(tài)變化較小,可近似認(rèn) 為目標(biāo)在兩幀圖像時間間隔內(nèi)做勻速運(yùn)動,所以采用等速度運(yùn)動模型,用Kalman濾波器預(yù) 測目標(biāo)中心位置。定義狀態(tài)向量A 凡,\,v%)T,觀測狀態(tài)向量Zk = (xk, yk)T,預(yù)測狀態(tài)向量 尤=( ^,\,v)t)T。其中Xk,71;,\,丨分別表示目標(biāo)中心在1軸和7軸上的位置和速度; x' k,y' pVyV;^分別表示Kalman濾波器預(yù)測的目標(biāo)中心位置和速度。算法的核心思想是用MeanShift目標(biāo)跟蹤算法計算跟蹤窗口的位置和大小,并把 窗口的中心位置作為Kalman濾波的測量值,校正目標(biāo)的中心位置Zk,Kalman濾波器的預(yù)測 結(jié)果Xk+1/k用于設(shè)置下一幀圖像搜索窗口的中心位置。3、遮擋因子在跟蹤過程中,采用文獻(xiàn)[10]中的遮擋因子來判斷目標(biāo)被遮擋程度。若yQ為當(dāng)前目標(biāo)位置,令 其中& G [1,①),為遮擋程度參量。遮擋因子a G
,當(dāng)0 < a < 1時,目 標(biāo)被部分遮擋,a = 1時,目標(biāo)被全部遮擋。設(shè)定一個閾值Y,如果a > Y,則判定目標(biāo) 被大面積遮擋。4、基于最小二乘支持向量機(jī)LSSVM的目標(biāo)軌跡預(yù)報技術(shù)當(dāng)目標(biāo)被遮擋時,采用最小二乘支持向量機(jī)LSSVM對目標(biāo)軌跡預(yù)報。對于時間序列{X1,X2,X3,...,xn},i= 1,2,...,n,{xn}為預(yù)報的目標(biāo)值,將{x^, Xn-2' Xn-3' ,Xn-nJ 作為相關(guān)量,建立輸入 X = {x^j, Xn_2, Xn_3, . . . , Xn_J 與輸出 y = {xj 之 間的映射關(guān)系Rm — R,m為嵌入維數(shù)。在訓(xùn)練回歸模型中,組成如下的訓(xùn)練樣本對輸入為Xl,x2,. . .,Xm,輸出為Xm+1 ;輸 入為x2,x3,. . .,Xm+1,輸出為Xm+2,以此類推,由n個訓(xùn)練樣本可以構(gòu)建n-m個訓(xùn)練樣本對,建 立初始訓(xùn)練模型。當(dāng)模型訓(xùn)練完成后,對未來第一步的預(yù)報形式為 對未來第二步的預(yù)報形式為
后續(xù)各步以此類推,對未來第p步的預(yù)報形式為 式中,xn表示第n個數(shù)據(jù)的實際值,丸表示第n個數(shù)據(jù)的預(yù)報值。攝像機(jī)采集的圖像為圖像像素坐標(biāo),在圖像上定義直角坐標(biāo)系0。uv,原點0。在圖像 平面的左上角,每一像素的坐標(biāo)(U,v)分別是該像素在數(shù)組中的列數(shù)和行數(shù),所以(u,v)是 以像素為單位的圖像坐標(biāo)系的坐標(biāo)。目標(biāo)軌跡預(yù)報是對目標(biāo)的U軸和V軸坐標(biāo)值預(yù)報。實施例攝像機(jī)采集圖像分辨率為768 X 576的彩色圖像。1、初始選定跟蹤目標(biāo),Kalman參數(shù)初始化,根據(jù)Kalman狀態(tài)方程和觀測模型得狀 態(tài)轉(zhuǎn)移矩陣A和觀測矩陣H為 式中,T是時刻tk與時刻tn的時間間隔。Kalman濾波分為預(yù)測和校正兩階段,首先初始化過程噪聲方差矩陣Q、測量噪聲 方差矩陣R、初始狀態(tài)向量X(l和初始誤差方差矩陣&,然后用預(yù)測狀態(tài)向量X' k中的X' k, y' k分量設(shè)定MeanShift算法搜索窗口的中心位置,并把MeanShift算法輸出的質(zhì)心位置 作為測量值Zk校正預(yù)測狀態(tài)向量X' k,得到X' k+1。試驗中Q = diag(10101515)R = diag(0. 10. 2)P0 = diag(llll)。初始狀態(tài)向量\中的X(1,y0分量取初始搜索窗口的中心位置,分量取零。根 據(jù)式⑴計算目標(biāo)的量化直方圖qu ;2、讀取下一幀圖像,計算當(dāng)前幀方差Pk/吣目標(biāo)狀態(tài)Xkn,得到預(yù)測位置為ytl ;在 預(yù)測目標(biāo)位置%處,利用MeanShift算法得到的目標(biāo)窗口的中心位置作為Kalman濾波的 測量值Zk ;更新目標(biāo)狀態(tài)Xk/k及方差陣Pk/k,Xk/k即為當(dāng)前幀目標(biāo)窗口中心位置;3、跟蹤時將目標(biāo)位置輸出給軌跡預(yù)報程序,與跟蹤程序同時做下一幀目標(biāo)位置的 預(yù)報;4、根據(jù)式(7)求遮擋因子a ;5、設(shè)定閾值Y = 0. 6,如果a < 0. 6返回步驟2開始下一幀的計算;如果a > 0. 6,Kalman濾波器停止工作,跟蹤轉(zhuǎn)換為基于LSSVM軌跡預(yù)報,在預(yù)報目標(biāo)位置附近用 MeanShift算法搜索a.若無目標(biāo),繼續(xù)預(yù)報,N幀以上則認(rèn)為跟蹤失敗;b.若有目標(biāo),啟用MeanShift算法和Kalman濾波器跟蹤,并更新Kalman濾波器狀 態(tài),返回步驟2開始下一幀的計算。圖2是用LSSVM預(yù)測目標(biāo)u軸軌跡預(yù)測值與真實值的對比圖。圖中實線是實際值(線1),點虛線是預(yù)測值(線2)。X軸表示預(yù)報步數(shù),單位為幀;Y軸表示目標(biāo)運(yùn)動軌跡的u 軸坐標(biāo),單位為像素。 圖3是用LSSVM預(yù)測目標(biāo)v軸軌跡預(yù)測值與真實值的對比圖。圖中實線是實際值 (線1),點虛線是預(yù)測值(線2)。X軸表示預(yù)報步數(shù),單位為幀;Y軸表示目標(biāo)運(yùn)動軌跡的v 軸坐標(biāo),單位為像素。
權(quán)利要求
一種抗遮擋目標(biāo)軌跡預(yù)測跟蹤方法,其特征是具體步驟如下(1).初始選定跟蹤目標(biāo),Kalman參數(shù)初始化,計算目標(biāo)的量化直方圖;(2).讀取圖像,用MeanShift算法計算跟蹤窗口的位置和大小,并將窗口的中心位置作為Kalman濾波的測量值,校正目標(biāo)的中心位置,同時更新目標(biāo)的狀態(tài)及方差陣,Kalman濾波器的預(yù)測結(jié)果用于設(shè)置下一幀圖像搜索窗口的中心位置;(3).將目標(biāo)位置輸出給軌跡預(yù)報程序,與跟蹤程序并行做下一幀目標(biāo)位置的預(yù)報;(4).根據(jù)方程求遮擋因子α;(5).根據(jù)設(shè)定的閾值判斷目標(biāo)被遮擋情況若α小于此閾值,返回步驟2繼續(xù)下一幀計算;若α大于此閾值,Kalman濾波器停止工作,跟蹤轉(zhuǎn)換為基于最小二乘支持向量機(jī)的軌跡預(yù)報,利用前一段時間MeanShift收斂點的位置用最小二乘支持向量機(jī)預(yù)測下一幀可能起始點的值,然后在該起始點鄰域內(nèi)利用MeanShift目標(biāo)預(yù)測算法對當(dāng)前幀目標(biāo)的位置進(jìn)行搜索(a)若未發(fā)現(xiàn)目標(biāo),繼續(xù)進(jìn)行基于最小二乘支持向量機(jī)的軌跡預(yù)報,若搜索超過已設(shè)定的幀數(shù)仍未發(fā)現(xiàn)目標(biāo)則認(rèn)定跟蹤失?。?b)若發(fā)現(xiàn)目標(biāo),繼續(xù)啟用MeanShif目標(biāo)跟蹤算法和Kalman濾波器進(jìn)行跟蹤,并更新Kalman濾波器狀態(tài),返回步驟(2)開始下一幀計算。FSA00000121970700011.tif
2.根據(jù)權(quán)利要求1所述的一種抗遮擋目標(biāo)軌跡預(yù)測跟蹤方法,其特征是在目標(biāo)跟蹤過 程中,利用最小二乘支持向量機(jī),將1到t-Ι時刻的軌跡坐標(biāo)作為輸入,將本時刻t的坐標(biāo) 作為輸出,訓(xùn)練最小二乘支持向量機(jī),時刻修正最小二乘支持向量機(jī)模型。
全文摘要
本發(fā)明涉及計算機(jī)視覺和模式識別技術(shù)領(lǐng)域,提出了一種抗遮擋目標(biāo)軌跡預(yù)測跟蹤方法。本發(fā)明包括選定目標(biāo),Kalman參數(shù)初始化,計算量化直方圖;讀取圖像,計算跟蹤窗口的位置和大小,校正目標(biāo)的中心位置,設(shè)置下一幀圖像搜索窗口中心位置;軌跡預(yù)報程序進(jìn)行目標(biāo)位置預(yù)報;求遮擋因子;根據(jù)被遮擋情況選擇Kalman濾波器工作或轉(zhuǎn)換為基于最小二乘支持向量機(jī)的軌跡預(yù)報預(yù)報過程中若超過已定幀數(shù)仍未發(fā)現(xiàn)目標(biāo)則認(rèn)定跟蹤失??;若發(fā)現(xiàn)目標(biāo),繼續(xù)啟用MeanShif目標(biāo)跟蹤算法和Kalman濾波器進(jìn)行跟蹤等。該方法能準(zhǔn)確跟蹤經(jīng)過大面積遮擋后重新出現(xiàn)的目標(biāo),具有良好的實時性和抗干擾能力。
文檔編號G06K9/66GK101853511SQ20101017289
公開日2010年10月6日 申請日期2010年5月17日 優(yōu)先權(quán)日2010年5月17日
發(fā)明者傅薈璇, 劉勝, 孫楓, 李冰 申請人:哈爾濱工程大學(xué)