專利名稱:一種有效抑制模板漂移的目標(biāo)跟蹤算法的制作方法
技術(shù)領(lǐng)域:
本發(fā)明屬于計算機視覺與模式分析技術(shù)領(lǐng)域,具體涉及一種有效抑制模板漂移的目標(biāo)跟蹤算法。
背景技術(shù):
目標(biāo)跟蹤在人機交互、自動監(jiān)視、視頻檢索、交通監(jiān)測以及車輛導(dǎo)航中有著廣泛的應(yīng)用。目標(biāo)跟蹤的任務(wù)是確定目標(biāo)在視頻流各幀中的幾何狀態(tài),包括位置、尺寸以及取向等。由于不限定被跟蹤目標(biāo)的外觀,而且目標(biāo)的外觀在跟蹤過程中可以變化,再加上復(fù)雜背景的干擾,目標(biāo)跟蹤算法面臨著諸多挑戰(zhàn),是計算機視覺領(lǐng)域的研究熱點之一。
目標(biāo)跟蹤算法分為兩大類,一類是跟蹤點目標(biāo)的(point tracking)[1,2],另一類則是跟蹤面目標(biāo)的(kernel tracking)[3~6]。當(dāng)目標(biāo)相對于整個視場非常小時,例如雷達圖像,可以采用點目標(biāo)跟蹤算法。對于通常攝像頭所拍攝的圖像,則更多地采用面目標(biāo)跟蹤算法。面目標(biāo)跟蹤算法又可以分為對目標(biāo)模板進行匹配(template matching)[3,4]以及僅對目標(biāo)輪廓進行跟蹤(contour tracking)[5,6]。由于模板匹配跟蹤算法同時整合了目標(biāo)的整體外觀信息與幾何信息,因此應(yīng)用相當(dāng)廣泛。
模板匹配跟蹤算法通常使用一個矩形或者橢圓形的模板來表征目標(biāo)。目標(biāo)的運動通常由模板的坐標(biāo)變換(平移、縮放、旋轉(zhuǎn)等)來描述。不同的坐標(biāo)變換參數(shù)給出不同的圖像區(qū)域,其中給出與模板匹配程度最高的圖像區(qū)域的坐標(biāo)變換參數(shù)反映了當(dāng)前目標(biāo)的幾何信息[7]。
由于目標(biāo)的外觀在跟蹤過程中不斷變化,因此模板也必須不斷更新。最簡單的模板更新策略是每幀或每隔若干幀把匹配到的圖像區(qū)域作為新的模板[8,9]。然而,一個頻繁發(fā)生的現(xiàn)象是,在跟蹤過程中,目標(biāo)逐漸移出模板,而背景物體則逐漸移入模板,最終導(dǎo)致目標(biāo)的丟失。這個現(xiàn)象稱為模板漂移現(xiàn)象(template drift)[3,7]。
許多文獻都對模板漂移現(xiàn)象的原因作了初步與定性的解釋[3,10,11]。模板漂移的根本原因是模板匹配存在幾何誤差,這些誤差在每次模板更新時被引入到模板中,轉(zhuǎn)化成模板的外觀誤差。盡管這些誤差很小,但是會逐漸累積起來,造成目標(biāo)相對模板的不斷漂移。模板更新得越頻繁,模板漂移現(xiàn)象就越嚴(yán)重。這樣就導(dǎo)致了一對矛盾為了使模板能夠盡可能及時準(zhǔn)確地反映當(dāng)前目標(biāo)的外觀,必須頻繁更新模板;另一方面,頻繁更新模板又會造成模板外觀被漂移現(xiàn)象所破壞。
為了解決這個矛盾,各種模板更新算法被提了出來。一些方法用初始模板來校正模板匹配的結(jié)果[1,7,10]。這些方法在目標(biāo)外觀在整個跟蹤階段變化很小時可以較好地避免模板漂移,但是在大多數(shù)情況下,目標(biāo)外觀經(jīng)過一段時間后都會發(fā)生較為顯著的變化,這時,初始模板對于匹配校正就不再有效,且反而會導(dǎo)致跟蹤效果變差。
文獻[11]在比較了不依賴于初始模板的各種模板更新策略后,得出結(jié)論認(rèn)為用卡爾曼模板更新濾波器對模板進行濾波的策略對于漂移與噪聲具有最強的魯棒性。文獻[12]進一步研究了如何選取模板更新濾波器的卡爾曼系數(shù)。但是,在文獻[11]與[12]中,卡爾曼系數(shù)一經(jīng)選定就在整個跟蹤過程中保持不變,這使得模板更新濾波器無法根據(jù)目標(biāo)外觀變化的劇烈程度以及可能的模板漂移程度自適應(yīng)地調(diào)整模板更新的強度。
在文獻[4]與[13]中,通過估計卡爾曼模板更新濾波器的兩個模型噪聲之一,濾波器的卡爾曼系數(shù)能夠根據(jù)目標(biāo)外觀變化的情況自動調(diào)整。但是,文獻[4]與[13]要么假定狀態(tài)轉(zhuǎn)移噪聲功率恒定,要么假定觀測噪聲功率恒定,而這在實際情況中都較為罕見。因此,文獻[4]與[13]中的方法在實景視頻流中仍然不能很好地減少模板漂移。為了能夠有效估計卡爾曼模板更新濾波器的噪聲功率,必須定量地計算模板漂移對噪聲功率的影響。
參考文獻C.Rasmussen,G.Hager.Probabilistic data association methods for tracking complexvisual objects[J].IEEE Trans.on Pattern Analysis and Machine Intelligence,2001,23(6)560-576.C.Hue,J.L.Cadre,P.Prez.Sequential Monte Carlo methods for multiple target trackingand data fusion[J].IEEE Trans.on Signal Processing,2002,50(2)309-325.I.Matthews,T.Ishikawa,S.Baker.The template update problem[J].IEEE Trans.onPattern Analysis and Machine Intelligence,2004,26(6)810-815.H.T.Nguyen,A.W.M.Smeulders.Fast occluded object tracking by a robust appearancefilter[J].IEEE Trans.on Pattern Analysis and Machine Intelligence,2004,26(8)1099-1104.A.Yilmaz,X.Li,M.Shan.Contour based object tracking with occlusion handling invideo acquired using mobile cameras[J].IEEE Trans.on Pattern Analysis and MachineIntelligence,2004,26(11)1531-1536.Y.Chen,Y.Rui,T.Huang.Jpdaf based HMM for real-time contour tracking[A].Proc.IEEE Comp.Society.Conf.on Computer Vision and Pattern Recognition[C].1543-550,2001.Z.Jia,A.Balasuriya,S.Challa.Target Tracking with Bayesian Fusion Based TemplateMatching[A].Proc.IEEE Int.Conf.On Image Processing[C].2II-826-829,2005.M.J.Black,Y.Yacoob.Recognizing facial expressions in image sequences using localparameterized models of image motion[J].Int.J.Computer Vision,1997,25(1)23-48.H.Sidenbladh,M.J.Black,D.J.Fleet.Stochastic tracking of 3D human figures using 2Dimage motion[A].Proc.European Conf.on Computer Vision[C].2702-718,2000.T.Kaneko,Osamu Hori.Template update criterion for template matching of imagesequences[A].Proc.IEEE Int.Conf.on Pattern Recognition[C].21-5,2002.A.M.Peacock,S.Matsunaga,D.Renshaw,J.Hannah,A.Murray.Reference block updatingwhen tracking with block matching algorithm[J].Electronic Letters,2000,36309-310.C.Haworth,A.M.Peacock,D.Renshaw.Performance of reference block updatingtechniques when tracking with the block matching algorithm[A].Proc.IEEE Int.Conf.onImage Processing[C].1365-368,2001.H.T.Nguyen,M.Worring,R.van den Boomgaard.Occlusion robust adaptive templatetracking[A].Proc.IEEE Int.Conf.on Computer Vision[C].1678-683,2001.L.K.Liu,E.Feig.A block-based gradient descent search algorithm for block motionestimation in video coding[J].IEEE Trans.on Circuits and Systems for Video Technology,1996,6419-422.S.Baker,I.Matthews.Lucas-Kanade 20years ona unifying framework[J].Int.J.Computer Vision,2004,53(3)221-255.J.Pan,B.Hu,J.Q.Zhang.An efficient object tracking algorithm with adaptive predictionof initial searching point[A].Lecture Notes in Computer Science,4319/20061113-1122,2006.R.G.Brown,P.Y.C.Hwang.Introduction to Random Signals and Applied Kalman Filtering[M],John Wiley,1992.
發(fā)明內(nèi)容
本發(fā)明的目的在于提出一種能夠有效抑制模板漂移的目標(biāo)跟蹤算法。
本發(fā)明的關(guān)鍵在于如何將模板漂移的成因定量建模為漂移噪聲并將其作為模板更新濾波器觀測噪聲的一部分。
本發(fā)明的目標(biāo)跟蹤算法,包括 利用卡爾曼濾波器更新模板,并通過將模板漂移的影響顯式納入卡爾曼濾波器中而有效抑制模板漂移的發(fā)生。
將模板漂移噪聲的影響定量表達為一個誤差功率,即漂移噪聲功率σMD2。
將漂移噪聲功率σMD2作為卡爾曼模板更新濾波器中觀測噪聲功率σM2的組成部分。
將攝像頭噪聲功率σMC2作為卡爾曼模板更新濾波器中觀測噪聲功率σM2的另一組成部分。
卡爾曼模板更新濾波器中觀測噪聲功率σM2由σMD2與σMC2的加權(quán)和得到σM2=λσMD2+σMC2,其中λ是常數(shù)。
通過坐標(biāo)變換系數(shù)的量化誤差以及像素真實值的概率分布來定量計算漂移噪聲功率σMD2。
在未知攝像頭噪聲功率參數(shù)的情況下,通過計算由灰色均勻背景產(chǎn)生的測試圖像的像素方差值估計攝像頭的噪聲功率σMC2。
當(dāng)目標(biāo)運動可以僅用平移與縮放來描述時,采用一種快速算法計算漂移噪聲功率σMD2,該快速算法將產(chǎn)生同一個變換后坐標(biāo)的變換參數(shù)向量所對應(yīng)的各求和項合并成一項,將m維求和問題轉(zhuǎn)換為二維求和問題,從而大大降低運算量。
下面作進一步具體描述 1、基于模板匹配的目標(biāo)跟蹤 在基于模板匹配的目標(biāo)跟蹤中,目標(biāo)由代表其外觀的子圖像表示,這個子圖像稱為模板。初始模板通常是目標(biāo)在第一幀中的外觀。在本發(fā)明中,模板用T(x)表示,其中x=[x,y]T是像素坐標(biāo)。由于觀測噪聲的存在,真實的目標(biāo)外觀無法得到,因此跟蹤算法實際利用的是模板的估計值
。
在每一幀中,
通過坐標(biāo)變換φ(x;a)映射到圖像幀中,其中a是變換參數(shù)向量。φ(x;a)描述了目標(biāo)的運動與形變。對于包含平移、縮放與旋轉(zhuǎn)的坐標(biāo)變換,a是一個四維向量,a=(a1,a2,a3,a4),φ(x;a)可以表示為 這里,α1為縮放量,α2為旋轉(zhuǎn)角度,(α3、α4)為在(x、y)坐標(biāo)系中的平移量。α理論上說,φ(x;a)可以具有任意多的參數(shù)來描述任意復(fù)雜的目標(biāo)運動,但是由(1)式所代表的運動模型可以描述實際中遇到的大多數(shù)情況。
變換參數(shù)向量a反映了目標(biāo)在當(dāng)前幀中的幾何信息。該信息的最優(yōu)估計通過尋找與模板最匹配的當(dāng)前幀的圖像區(qū)域得到,即 在上式中,是第n幀的變換參數(shù)向量的最優(yōu)估計值;In(x)是第n幀圖像位于坐標(biāo)x處的像素值;ΩT是模板像素坐標(biāo)的集合;N是模板所包含的像素個數(shù)。(2)式的實現(xiàn)有一系列快速搜索算法[14,15],搜索的初始點可以由文獻[16]中的算法得到。另外,由于坐標(biāo)變換φ所產(chǎn)生的不一定是整數(shù)坐標(biāo)值,因此需要用插值算法來計算In[φ(x;a)]。
在理想情況下,由(2)式得到的變換參數(shù)向量反映了目標(biāo)的真實幾何狀態(tài),但是,由于(2)式的最終搜索結(jié)果必須取自離散向量空間,其中的量化誤差導(dǎo)致了變換參數(shù)向量的最優(yōu)估計值與真實值a0之間不可避免地存在誤差。因此,在每一幀中都會發(fā)生目標(biāo)外觀的觀測值In[φ(x;)]偏離其真實值In[φ(x;a0)]。我們把由于這種外觀偏離而造成的那部分觀測噪聲稱為漂移噪聲。漂移噪聲的累積是導(dǎo)致模板漂移現(xiàn)象發(fā)生的根本原因。漂移噪聲與攝像頭噪聲共同構(gòu)成了觀測噪聲。
2、卡爾曼模板更新濾波器 為了得到對于目標(biāo)真實外觀的最優(yōu)估計,卡爾曼濾波器被應(yīng)用到了模板更新中。為了分析每一個模板像素的變化情況,我們對每一個模板像素分別進行卡爾曼濾波。對模板像素x,其狀態(tài)方程為 T(x,n)=T(x,n-1)+εS(x,n-1)(3) 其中,T(x,n)是模板像素x在第n幀的灰度值;εS(x,n)是狀態(tài)轉(zhuǎn)移噪聲,它反映了從第n幀到第n+1幀目標(biāo)外觀本身的變化。我們可以合理地認(rèn)為狀態(tài)轉(zhuǎn)移噪聲是零均值高斯白噪聲,具有功率譜密度σS2(x,n)。
模板像素x的觀測方程為 In[φ(x;)]=T(x,n)+εM(x,n) (4) 其中,εM(x,n)是觀測噪聲。同樣,觀測噪聲也是零均值高斯白噪聲,具有功率譜密度σM2(x,n)。
記eP(x,n)為T(x,n)的預(yù)測誤差,eE(x,n)為T(x,n)的估計誤差,則我們可以得到以下兩式 式中,
是在得到了前n-1幀觀測值后,對T(x,n)的預(yù)測值;
是在得到了前n幀觀測值后,對T(x,n)的估計值。由于(3)式中的狀態(tài)轉(zhuǎn)移系數(shù)為1,所以 從(3),(5)-(7)式,我們可以得到T(x,n)的預(yù)測誤差與估計誤差之間的關(guān)系為 eP(x,n)=eE(x,n-1)+εS(x,n-1)(8) 由于狀態(tài)轉(zhuǎn)移噪聲與估計誤差不相關(guān),所以我們得到 其中,σP2和σE2分別是預(yù)測誤差與估計誤差的功率譜密度。在不致混淆的情況下,為了簡明起見,以下把功率譜密度簡稱為功率。
根據(jù)卡爾曼濾波理論[17],模板像素x的最優(yōu)卡爾曼系數(shù)應(yīng)該取為 模板則根據(jù)以下方程更新 其中,是第n幀的新息。
模板更新以后,T(x,n)的估計誤差功率變?yōu)? 方程(7),(9)-(12)式構(gòu)成了卡爾曼模板更新的一個完整的迭代。
在這里,唯一需要初始化的是模板的估計誤差功率σE2。由于初始模板直接從第一幀的目標(biāo)區(qū)域截取,所以此時的估計誤差僅由攝像頭噪聲造成。因此,初始估計誤差功率等于攝像頭噪聲功率,即 其中σMC2是攝像頭噪聲功率。
3、兩個模型噪聲功率的聯(lián)系 在標(biāo)準(zhǔn)的卡爾曼濾波問題中,狀態(tài)轉(zhuǎn)移噪聲功率σS2與觀測噪聲功率σM2都被認(rèn)為是先驗已知的。但是,在目標(biāo)跟蹤中,這兩個模型噪聲功率需要在線估計。不過,如果一個噪聲功率已經(jīng)得到,則另一個噪聲功率就不難估計了[13]。同時考慮(3)-(5)及(7)式,我們立刻可以得到聯(lián)系新息、估計誤差以及兩個模型噪聲的方程 α(x,n)=eE(x,n-1)+εS(x,n-1)+εM(x,n)(14) 由于上式右邊各項均兩兩不相關(guān),所以可以得到 其中,σα2(x,n)是新息α(x,n)的功率。新息功率可以通過時間一空間上的平均平方誤差來估計,即 上式中,L是時間滑動平均窗的長度,一般可取L取15-25;ΩL(x)是中心位于x的空間圖像塊;NL是參與平均的像素總數(shù)。在本發(fā)明實例中,我們?nèi)=20,空間圖像塊的大小為11×11像素。
由于估計誤差功率σE2在卡爾曼濾波的過程中自動產(chǎn)生,因此根據(jù)(15)式,如果σM2(σS2)已知,則σS2(σM2)立即可以得到?,F(xiàn)在的問題是如何首先估計出兩個噪聲功率中的一個。文獻[4]與[13]對于兩個噪聲功率的取值作了不同的假設(shè)。如前所述,這些假設(shè)只是現(xiàn)實中可能碰到的兩個極端情況,我們需要對噪聲功率的取值作出更為有效的估計。由于狀態(tài)轉(zhuǎn)移噪聲反映的是目標(biāo)外觀本身的變化,而這種變化可以是完全任意的,因此直接估計狀態(tài)轉(zhuǎn)移噪聲的功率并不容易。然而,在后面中我們將會看到,觀測噪聲的功率可以通過估計漂移噪聲功率而在線得到。一旦我們估計出了觀測噪聲功率σM2,則狀態(tài)轉(zhuǎn)移噪聲功率σS2可以立即表示如下 在某些情況下,(17)式會產(chǎn)生負值,這表明在x處,目標(biāo)外觀從第n-1幀到第n幀幾乎沒有變化。所以,σS2應(yīng)該取為零,同時,σM2也應(yīng)該相應(yīng)調(diào)整為 接下來,我們就具體論述如何在線估計漂移噪聲以及觀測噪聲的功率。
4、觀測噪聲功率的估計 如前所述,觀測噪聲中的漂移噪聲成分的累積是導(dǎo)致模板漂移現(xiàn)象發(fā)生的根本原因。因此,為了使得卡爾曼模板更新濾波器能夠抑制模板漂移,必須定量地估計漂移噪聲的功率。
圖1表示了由于變換參數(shù)向量的最優(yōu)估計值與真實值a0之間不一致導(dǎo)致了在In[φ(x;)]中產(chǎn)生了漂移誤差。圖1中模板像素x在第n幀的真實位置φ(x;a0)位于φ(x;)的鄰域Ωu中的某一點,因此模板像素x的真實值也應(yīng)該取自Ωu中的某一點。模板像素x的漂移噪聲實質(zhì)上就是In[φ(x;)]與x在Ωu中的期望真實值的誤差。當(dāng)(2)式的搜索精度降低時,Ωu會變大,一般會導(dǎo)致漂移噪聲增加。
為了簡單起見,我們用a代替a0來表示變換參數(shù)向量的真實值。根據(jù)前面的論述,模板像素x的漂移噪聲功率可以表示為 其中,σMD2(x,n)是模板像素x在第n幀的漂移噪聲功率;pa是已知以后a的各分量的聯(lián)合后驗概率密度分布。當(dāng)在a的附近時,a的各分量的后驗概率密度分布可以看成是相互獨立的,因為此時某一個分量的取值結(jié)果不會影響其它分量的取值。在目標(biāo)沒有丟失的情況下,這個條件總是滿足的。因此,(19)式可以重新寫為 其中,pi是a的第i個分量ai的后驗概率密度分布;m是坐標(biāo)變換φ所包含的參數(shù)個數(shù)。
接下來的問題是如何計算pi。由圖2可見,i只能取離散值,且i的條件概率是 上式中,Pi是給定ai后i的條件概率;Δi是(2)式搜索i時的最終步長。根據(jù)貝葉斯法則,ai的后驗分布是 將(21)式代入(22)式可得 盡管要得到p(ai)的確切值并不容易,但是我們可以合理地認(rèn)為p(ai)在(23)式的積分區(qū)間中是近似不變的。這是因為Δi較小,而且積分區(qū)間比較靠近p(ai)較為平坦的極大值點。基于此近似,(23)式可以簡化為 將(24)式代入(20)式,即可求得模板像素x在第n幀的漂移噪聲功率。然而,由于在計算過程中包含插值操作,所以要想得到漂移噪聲功率的解析結(jié)果是十分困難的。不過,我們可以通過將積分離散化求得近似的數(shù)值結(jié)果,即 其中,Δa1…Δam組成了在a所處的高維空間中的求和單元,且ak=[k1Δa1…kmΔam]T。求和單元的大小決定了(25)式的精度。整數(shù)ki的取值范圍滿足 |kiΔai-i|≤Δi/2,i=1,2,…,m (26) 估計出了模板像素的漂移噪聲功率后,需要加上攝像頭功率才能得到最終的觀測噪聲功率。與漂移噪聲功率不同,攝像頭噪聲功率在空間與時間上都認(rèn)為是恒定的。攝像頭噪聲功率值可以從傳感器的技術(shù)手冊上查到,也可以通過計算由灰色均勻背景產(chǎn)生的測試圖像的像素方差值得到,即 其中,IG是測試圖像;ΩG是測試區(qū)域的坐標(biāo)集合;M是測試區(qū)域包含的像素個數(shù)。
最后,觀測噪聲功率由下式給出 其中λ為大于1的常數(shù),其取值取決于插值方法的精度。一般λ取1<λ≤3,差值方法的精度越高,則λ越接近1。對于本發(fā)明采用的雙線性插值中,λ取為2。
從以上的推導(dǎo)以及論述可知,觀測噪聲功率與目標(biāo)外觀本身有很大的關(guān)系,紋理或邊緣越密集的地方產(chǎn)生的觀測噪聲也越大。這是可以理解的,因為同樣的坐標(biāo)偏差在目標(biāo)外觀較復(fù)雜處會造成較大的外觀誤差,從而對該處的模板造成較大的破壞。所以,目標(biāo)外觀包含的細節(jié)越多,模板漂移現(xiàn)象就越嚴(yán)重。在我們的算法中,目標(biāo)外觀在某時某處的細節(jié)越多,此時該處的觀測噪聲功率就越大,這使得相應(yīng)的卡爾曼系數(shù)不會變得過大,從而有效保護了模板,顯著抑制了漂移。
5、快速算法 如果我們能夠從pa與φ中得到變換后的坐標(biāo)u=φ(x;a)=[v,w]T的聯(lián)合后驗概率密度分布pu,則(25)式的計算量就可以顯著降低。將(19)式用變換后坐標(biāo)u表示,可得 而(25)式則變?yōu)? 在以上兩式中,
Ωu是圖1中所示的區(qū)域,ΔvΔw是矩形求和單元;整數(shù)l1,l2的取值滿足 [l1Δv,l2Δw]T∈Ωu(31) 通過將(30)式取代(25)式,我們能夠?qū)a(chǎn)生同一個變換后坐標(biāo)的變換參數(shù)向量所對應(yīng)的各求和項合并成一項,將m維求和問題轉(zhuǎn)換為二維求和問題,大大降低運算量。
當(dāng)坐標(biāo)變換φ太復(fù)雜時,求解變換后坐標(biāo)u的聯(lián)合后驗概率密度分布非常困難。但是,如果φ僅包含平移與縮放(兩類最常見的目標(biāo)運動),即 則可以得到pu的解析表達式。
u的分布函數(shù)可以表示為 在這里我們用大寫字母表示隨機變量。考慮(32)式,可以將(33)式重寫為 其中,最后一個等式成立是由于坐標(biāo)變換參數(shù)間的獨立性。
u的聯(lián)合后驗概率密度分布可以通過對(34)求偏導(dǎo)數(shù)得到,即 將(24)式代入到上式的各分布中,我們得到 其中,可以證明,BL與BH的取值如下 如果x=0,則當(dāng)|v-2|≤Δ2/2時以上兩式大括弧中的第二項消失,否則u的聯(lián)合后驗概率密度分布等于零;如果y=0,則當(dāng)|w-3|≤Δ3/2時以上兩式大括弧中的第三項消失,否則u的聯(lián)合后驗概率密度分布等于零。為了簡化起見,這里略去了BL與BH的推導(dǎo)過程。當(dāng)目標(biāo)運動可以僅用平移與縮放來描述時,可以使用(30),(36)-(38)式來顯著減少估計漂移噪聲功率的計算量。
根據(jù)上述內(nèi)容,本發(fā)明的有效抑制模板漂移的目標(biāo)跟蹤算法的具體步驟如下 1.初始化估計誤差功率σE2,即運行(13)式。其中σMC2為攝像頭噪聲功率,可查攝像頭傳感器的技術(shù)手冊得到,如果沒有這方面的數(shù)據(jù),則用(27)式估算攝像頭噪聲功率σMC2。
2.在首幀中選定目標(biāo)區(qū)域。
3.
如下初始化通過初始坐標(biāo)變換φ(x;as)采樣初始ROI,即其中as為目標(biāo)的初始坐標(biāo)變換參數(shù)。
4.讀入下一幀。
5.當(dāng)前幀的預(yù)測模板
即為上一幀的估計模板
即運行(7)式。
6.將預(yù)測模板通過坐標(biāo)變換φ(x;a)映射到當(dāng)前幀。通過尋找與預(yù)測模板最匹配的當(dāng)前幀的圖像區(qū)域得到反映目標(biāo)在當(dāng)前幀中的幾何信息的變換參數(shù)向量即運行(2)式。
7.通過計算由于變換參數(shù)向量在(2)式中的量化誤差導(dǎo)致的像素觀測值與真實值之間的誤差平方的數(shù)學(xué)期望來得到各模板像素的漂移噪聲功率σMD2。由于無法得到解析表達式,用離散化變換參數(shù)的方式將(19)式的積分轉(zhuǎn)化為(25)式的求和。具體來說,用(25),(26)式估算漂移噪聲功率σMD2。當(dāng)目標(biāo)運動可以僅用平移與縮放來描述時,能夠?qū)a(chǎn)生同一個變換后坐標(biāo)的變換參數(shù)向量所對應(yīng)的各求和項合并成一項,將m維求和問題轉(zhuǎn)換為二維求和問題,大大降低運算量。具體來說,此快速算法通過(30),(36)-(38)式來顯著減少估算漂移噪聲功率的計算量。
8.各模板像素的觀測噪聲功率σM2是漂移噪聲功率與攝像頭噪聲功率σMC2的加權(quán)和。具體來說,用(28)式計算觀測噪聲功率σM2。其中λ為大于1的常數(shù),其取值取決于插值方法的精度。差值方法的精度越高,則λ越接近1。對于本發(fā)明實例中采用的雙線性插值,λ取為2。
9.用(16)式估算各模板像素的新息功率σα2。
10.用(17)式計算各模板像素的狀態(tài)轉(zhuǎn)移噪聲功率σS2。如果(17)式產(chǎn)生負值,則σS2取為零,同時σM2根據(jù)(18)式作相應(yīng)調(diào)整。
11.運行(9)式得到各模板像素的預(yù)測誤差功率σP2。
12.根據(jù)(10)式確定各模板像素的最優(yōu)卡爾曼系數(shù)G(x,n)。
13.根據(jù)(11)式得到當(dāng)前幀的估計模板
。
14.根據(jù)(12)式得到當(dāng)前幀的各模板像素的估計誤差功率σE2。
15.如果視頻流未處理完,則轉(zhuǎn)到第5步,否則結(jié)束。
圖1模板像素x在圖像幀中的真實位置φ(x;a0)位于搜索結(jié)果φ(x;)的鄰域內(nèi),由此造成了漂移噪聲。
圖2搜索最優(yōu)變換參數(shù)向量時的量化過程。
圖3不同跟蹤算法抑制模板漂移的性能比較。四行分別顯示了四個不同視頻流的跟蹤結(jié)果。在每一行中,最左邊的一幅圖像是各算法共同的初始幀,接下來從左到右的三幅圖像分別顯示了文獻[3]、文獻[4]以及本發(fā)明提出的算法的最終跟蹤結(jié)果。當(dāng)前模板顯示在每一幅圖像的右下角。在第四個視頻流中,文獻[3]的算法丟失了目標(biāo)(見d2),因此跟蹤過程提前結(jié)束。
圖4“Lake”原圖像與合成視頻流中的一幀。右圖中紅圈中的帆船是被跟蹤的目標(biāo)。
圖5采用快速算法前后模板更新濾波器的運算量比較。
具體實施例方式 1、實景視頻流實驗 我們首先在大量實景視頻流上比較了不同跟蹤算法抑制模板漂移的性能。這些視頻流中被跟蹤的目標(biāo)具有不同程度的外觀變化強度。由于在每一類實驗中,我們在所有視頻流上都得到了相似的實驗結(jié)果,因此我們在每一類實驗中各取一個典型的視頻流放在本發(fā)明中,如圖3所示。圖3中的每一行代表了一個視頻流,從第一行到第四行,目標(biāo)外觀的變化程度從無變化到很大變化。我們比較了以下三種算法抑制模板漂移的性能文獻[3]中的算法、文獻[4]中的算法以及本發(fā)明提出的算法。在圖3的每一行中,最左邊的一幅圖像是所有算法共同的初始幀,接下來從左到右的三幅圖像分別顯示了三種算法最后的跟蹤結(jié)果。在第四個視頻流中,由于文獻[3]中的算法在跟蹤過程中丟失了目標(biāo),所以跟蹤提前結(jié)束。在每幅圖像的右下角顯示的是當(dāng)前模板。
在所有實驗中,我們都觀察到,對于文獻[3]的算法,由于它采用第一幀模板校正目標(biāo)位置,因此當(dāng)目標(biāo)外觀變化很小時,幾乎沒有模板漂移現(xiàn)象(見圖3a2);然而,當(dāng)目標(biāo)外觀變化程度增加時,該算法的性能大幅下降(見圖3b2,3c2),甚至丟失目標(biāo)(見圖3d2),這是因為第一幀模板對于校正目標(biāo)位置不再有效。
對于文獻[4]的算法,當(dāng)目標(biāo)外觀變化較小時,過快的模板更新使該算法產(chǎn)生了很嚴(yán)重的模板漂移(見圖3a3);而當(dāng)目標(biāo)外觀變化程度增加時,盡管模板漂移有所減小,但是仍然十分明顯(見圖3b3,3c3,3d3)。這是因為該算法沒有考慮漂移噪聲功率,因而其模板更新濾波器對于抑制模板漂移無法取得令人滿意的效果。
對于本發(fā)明提出的算法,無論目標(biāo)外觀變化程度如何,模板漂移總是被有效得抑制住了(見圖3a4,3b4,3c4,3d4)。這是由于本發(fā)明算法的模板更新濾波器有效建模了漂移噪聲,因而能夠針對各種不同的跟蹤場景自適應(yīng)地得到最優(yōu)的模板更新策略。
2、合成視頻流實驗 為了定量比較不同算法產(chǎn)生的模板漂移的程度,我們除了在實景視頻流上做了大量的實驗之外,還在人工合成視頻流上對各算法進行了實驗。之所以要使用人工合成視頻流,是因為在這種情況下,目標(biāo)在各幀中的幾何參數(shù)的真實值都是已知的,并且,我們可以有效控制各種不同的實驗條件,以得到對于算法性能的更深入的理解。
在我們的實驗中,我們使用512×512的標(biāo)準(zhǔn)測試圖像“l(fā)ake”來生成測試視頻流,生成方式如下我們將原圖中的帆船(范圍是第367~447行,第296~350列)提取出來作為目標(biāo),經(jīng)過縮放與改變外觀后覆蓋在原圖上,并在原圖上沿著一定的軌跡移動。目標(biāo)移動的軌跡是如下形式的等速螺旋線 其中,r不斷變化,以保證目標(biāo)的移動速度始終是2像素/幀。目標(biāo)的尺度在0.5~1.5之間以0.03/幀的速率變化。目標(biāo)的外觀根據(jù)下式改變 其中,I(x,n)與I′(x,n)分別表示外觀更改前后的目標(biāo)像素值;k是一個時變參數(shù),以固定速率在-1~1之間變化;ΩA是目標(biāo)外觀被更改的區(qū)域,依次取目標(biāo)的上半、下半、左半以及右半部分,并且在每一部分中,k完成一次循環(huán)。通過改變k的變化率,我們可以控制目標(biāo)外觀變化的速率。原圖以及合成視頻流中的一幀圖像示于圖4中。
首先,我們讓k恒為零,產(chǎn)生一個含有300幀的視頻流。在這個視頻流中,目標(biāo)的外觀保持不變。各算法的跟蹤誤差示于表1中。這里,跟蹤誤差指的是目標(biāo)在各幀中的坐標(biāo)變換參數(shù)矢量的真實值與跟蹤算法估計值之間的平均歐氏距離。表1中的第2至第4列分別是將模板更新濾波器在所有像素點上的卡爾曼系數(shù)固定為0,0.5和1的跟蹤誤差;第5至第8列是文獻[3]、文獻[4]、文獻[13]以及本發(fā)明算法的跟蹤誤差;ΔL與ΔS分別是對應(yīng)于位置與尺度的坐標(biāo)變換參數(shù)的搜索精度。
在表1中我們可以看到,將卡爾曼系數(shù)固定為零具有最小的跟蹤誤差。這是符合預(yù)期的,因為當(dāng)目標(biāo)外觀不變時,最好的模板更新策略就是完全不更新模板。文獻[3]算法的跟蹤誤差與最小誤差十分接近,因為在這種情況下第一幀模板總是能夠有效地校正目標(biāo)位置。值得注意的是,雖然在這個實驗中目標(biāo)外觀始終保持不變,但是我們觀察到當(dāng)目標(biāo)的尺度較小時(因而單位面積內(nèi)包含的細節(jié)較多時),會產(chǎn)生比其它時候大得多的新息。很顯然,這些新息不是由于目標(biāo)外觀本身變化引起的,而是來自于匹配誤差所帶來的漂移噪聲。本發(fā)明的算法正確地分析了新息的來源,自動提高了觀測噪聲功率(而非狀態(tài)轉(zhuǎn)移噪聲功率),將模板更新濾波器各像素點的卡爾曼系數(shù)都控制在一個很低的水平,因而其跟蹤誤差在所有搜索精度下與最小值都較接近,肉眼幾乎看不出。文獻[4]、文獻[13]的算法以及將卡爾曼系數(shù)固定為0.5的方法都有較大的跟蹤誤差,因為它們所得到的模板更新策略不是最優(yōu)的。最大的跟蹤誤差出現(xiàn)在將卡爾曼系數(shù)固定為1的方法中,每幀都毫無保留地更新模板導(dǎo)致了嚴(yán)重的模板漂移。
為了觀察當(dāng)目標(biāo)外觀變化時各算法的跟蹤誤差,我們讓k以恒定的變化率波動,生成一個包含300幀的測試視頻流。實驗結(jié)果示于表2中。在這個實驗中,保持模板不變的策略以及文獻[3]算法的跟蹤誤差都顯著增加;將卡爾曼系數(shù)固定為1的方法仍然產(chǎn)生了很大的模板漂移;在剩余的算法中,本發(fā)明的算法在所有搜索精度下都取得了遠小于其它算法的跟蹤誤差。
從以上實驗中可以看出,無論目標(biāo)外觀是否變化,本發(fā)明的算法總是能夠根據(jù)目標(biāo)外觀變化情況以及搜索精度的高低,在恰當(dāng)?shù)臅r間與恰當(dāng)?shù)奈恢靡宰顑?yōu)的方式更新模板像素,以使得模板既能夠及時得到更新,又不會被過度更新,因而有效地減小了跟蹤誤差,抑制了模板漂移。
3、快速算法效果 圖5中顯示了采用快速算法前后進行一次模板更新所需要的乘加運算(MAC)次數(shù)。其中,x軸是模板所有像素點的觀測噪聲功率的估計誤差的平均值。觀測噪聲功率的準(zhǔn)確值通過在(25)式中取非常小的求和單元得到。我們通過改變(25)式以及(30)式的求和單元大小來得到一系列采用快速算法前后觀測噪聲功率的估計誤差及其對應(yīng)的運算復(fù)雜度。由圖5可見,如果不使用快速算法,則當(dāng)觀測噪聲功率的估計誤差減小時,運算量迅速增加;而如果采用快速算法,則運算量的增加非常緩慢。
表1在目標(biāo)外觀固定時不同算法的跟蹤誤差比較 表中的數(shù)據(jù)是目標(biāo)在各幀中的坐標(biāo)變換參數(shù)矢量的真實值與跟蹤算法估計值之間的平均歐氏距離 表2在目標(biāo)外觀變化時不同算法的跟蹤誤差比較 表中的數(shù)據(jù)是目標(biāo)在各幀中的坐標(biāo)變換參數(shù)矢量的真實值與跟蹤算法估計值之間的平均歐氏距離。
權(quán)利要求
1.一種有效抑制模板漂移的目標(biāo)跟蹤算法,其特征在于利用卡爾曼濾波器更新模板,并通過將模板漂移的影響顯式納入卡爾曼濾波器中而有效抑制模板漂移的發(fā)生。
2.根據(jù)權(quán)利要求1所述的有效抑制模板漂移的目標(biāo)跟蹤算法,其特征在于將模板漂移噪聲的影響定量表達為一個誤差功率,即漂移噪聲功率σMD2。
3.根據(jù)權(quán)利要求1或2所述的有效抑制模板漂移的目標(biāo)跟蹤算法,其特征在于將漂移噪聲功率σMD2作為卡爾曼模板更新濾波器中觀測噪聲功率σM2的組成部分。
4.根據(jù)權(quán)利要求1所述的有效抑制模板漂移的目標(biāo)跟蹤算法,其特征在于將攝像頭噪聲功率σMC2作為卡爾曼模板更新濾波器中觀測噪聲功率σM2的另一組成部分。
5.根據(jù)權(quán)利要求1、2、3、4之一所述的有效抑制模板漂移的目標(biāo)跟蹤算法,其特征在于卡爾曼模板更新濾波器中觀測噪聲功率σM2由σMD2與σMC2的加權(quán)和得到σM2=λσMD2+σMC2,其中λ是常數(shù)。
6.根據(jù)權(quán)利要求2或3所述的有效抑制模板漂移的目標(biāo)跟蹤算法,其特征在于通過坐標(biāo)變換系數(shù)的量化誤差以及像素真實值的概率分布來定量計算漂移噪聲功率σMD2。
7.根據(jù)權(quán)利要求4所述的有效抑制模板漂移的目標(biāo)跟蹤算法,其特征在于在未知攝像頭噪聲功率參數(shù)的情況下,通過計算由灰色均勻背景產(chǎn)生的測試圖像的像素方差值估計攝像頭的噪聲功率σMC2。
8.根據(jù)權(quán)利要求6所述的有效抑制模板漂移的目標(biāo)跟蹤算法,其特征在于當(dāng)目標(biāo)運動可以僅用平移與縮放來描述時,采用一種快速算法計算漂移噪聲功率σMD2,該快速算法將產(chǎn)生同一個變換后坐標(biāo)的變換參數(shù)向量所對應(yīng)的各求和項合并成一項,將m維求和問題轉(zhuǎn)換為二維求和問題,從而大大降低運算量。
全文摘要
本發(fā)明屬于計算機視覺與模式分析技術(shù)領(lǐng)域,具體為一種能夠有效抑制模板漂移的目標(biāo)跟蹤算法。在目標(biāo)跟蹤過程中,經(jīng)常會出現(xiàn)模板漂移現(xiàn)象。本發(fā)明針對模板漂移的起因提出了一個定量表達式,稱為“漂移噪聲功率”,并將其納入卡爾曼模板更新濾波器的框架。包含了漂移噪聲功率的卡爾曼模板更新濾波器能夠在空間及時間上自適應(yīng)地實現(xiàn)及時更新目標(biāo)外觀與避免模板漂移之間的最優(yōu)平衡。在大量不同類型的實景視頻流以及合成視頻流上的實驗結(jié)果都證實了本發(fā)明算法的有效性。
文檔編號G06T7/20GK101127120SQ200710045939
公開日2008年2月20日 申請日期2007年9月13日 優(yōu)先權(quán)日2007年9月13日
發(fā)明者潘吉彥, 波 胡, 張建秋 申請人:復(fù)旦大學(xué)