專利名稱:一種有效抑制模板漂移的目標跟蹤算法的制作方法
技術領域:
本發明屬于計算機視覺與模式分析技術領域,具體涉及一種有效抑制模板漂移的目標跟蹤算法。
背景技術:
目標跟蹤在人機交互、自動監視、視頻檢索、交通監測以及車輛導航中有著廣泛的應用。目標跟蹤的任務是確定目標在視頻流各幀中的幾何狀態,包括位置、尺寸以及取向等。由于不限定被跟蹤目標的外觀,而且目標的外觀在跟蹤過程中可以變化,再加上復雜背景的干擾,目標跟蹤算法面臨著諸多挑戰,是計算機視覺領域的研究熱點之一。
目標跟蹤算法分為兩大類,一類是跟蹤點目標的(point tracking)[1,2],另一類則是跟蹤面目標的(kernel tracking)[3~6]。當目標相對于整個視場非常小時,例如雷達圖像,可以采用點目標跟蹤算法。對于通常攝像頭所拍攝的圖像,則更多地采用面目標跟蹤算法。面目標跟蹤算法又可以分為對目標模板進行匹配(template matching)[3,4]以及僅對目標輪廓進行跟蹤(contour tracking)[5,6]。由于模板匹配跟蹤算法同時整合了目標的整體外觀信息與幾何信息,因此應用相當廣泛。
模板匹配跟蹤算法通常使用一個矩形或者橢圓形的模板來表征目標。目標的運動通常由模板的坐標變換(平移、縮放、旋轉等)來描述。不同的坐標變換參數給出不同的圖像區域,其中給出與模板匹配程度最高的圖像區域的坐標變換參數反映了當前目標的幾何信息[7]。
由于目標的外觀在跟蹤過程中不斷變化,因此模板也必須不斷更新。最簡單的模板更新策略是每幀或每隔若干幀把匹配到的圖像區域作為新的模板[8,9]。然而,一個頻繁發生的現象是,在跟蹤過程中,目標逐漸移出模板,而背景物體則逐漸移入模板,最終導致目標的丟失。這個現象稱為模板漂移現象(template drift)[3,7]。
許多文獻都對模板漂移現象的原因作了初步與定性的解釋[3,10,11]。模板漂移的根本原因是模板匹配存在幾何誤差,這些誤差在每次模板更新時被引入到模板中,轉化成模板的外觀誤差。盡管這些誤差很小,但是會逐漸累積起來,造成目標相對模板的不斷漂移。模板更新得越頻繁,模板漂移現象就越嚴重。這樣就導致了一對矛盾為了使模板能夠盡可能及時準確地反映當前目標的外觀,必須頻繁更新模板;另一方面,頻繁更新模板又會造成模板外觀被漂移現象所破壞。
為了解決這個矛盾,各種模板更新算法被提了出來。一些方法用初始模板來校正模板匹配的結果[1,7,10]。這些方法在目標外觀在整個跟蹤階段變化很小時可以較好地避免模板漂移,但是在大多數情況下,目標外觀經過一段時間后都會發生較為顯著的變化,這時,初始模板對于匹配校正就不再有效,且反而會導致跟蹤效果變差。
文獻[11]在比較了不依賴于初始模板的各種模板更新策略后,得出結論認為用卡爾曼模板更新濾波器對模板進行濾波的策略對于漂移與噪聲具有最強的魯棒性。文獻[12]進一步研究了如何選取模板更新濾波器的卡爾曼系數。但是,在文獻[11]與[12]中,卡爾曼系數一經選定就在整個跟蹤過程中保持不變,這使得模板更新濾波器無法根據目標外觀變化的劇烈程度以及可能的模板漂移程度自適應地調整模板更新的強度。
在文獻[4]與[13]中,通過估計卡爾曼模板更新濾波器的兩個模型噪聲之一,濾波器的卡爾曼系數能夠根據目標外觀變化的情況自動調整。但是,文獻[4]與[13]要么假定狀態轉移噪聲功率恒定,要么假定觀測噪聲功率恒定,而這在實際情況中都較為罕見。因此,文獻[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.
發明內容
本發明的目的在于提出一種能夠有效抑制模板漂移的目標跟蹤算法。
本發明的關鍵在于如何將模板漂移的成因定量建模為漂移噪聲并將其作為模板更新濾波器觀測噪聲的一部分。
本發明的目標跟蹤算法,包括 利用卡爾曼濾波器更新模板,并通過將模板漂移的影響顯式納入卡爾曼濾波器中而有效抑制模板漂移的發生。
將模板漂移噪聲的影響定量表達為一個誤差功率,即漂移噪聲功率σMD2。
將漂移噪聲功率σMD2作為卡爾曼模板更新濾波器中觀測噪聲功率σM2的組成部分。
將攝像頭噪聲功率σMC2作為卡爾曼模板更新濾波器中觀測噪聲功率σM2的另一組成部分。
卡爾曼模板更新濾波器中觀測噪聲功率σM2由σMD2與σMC2的加權和得到σM2=λσMD2+σMC2,其中λ是常數。
通過坐標變換系數的量化誤差以及像素真實值的概率分布來定量計算漂移噪聲功率σMD2。
在未知攝像頭噪聲功率參數的情況下,通過計算由灰色均勻背景產生的測試圖像的像素方差值估計攝像頭的噪聲功率σMC2。
當目標運動可以僅用平移與縮放來描述時,采用一種快速算法計算漂移噪聲功率σMD2,該快速算法將產生同一個變換后坐標的變換參數向量所對應的各求和項合并成一項,將m維求和問題轉換為二維求和問題,從而大大降低運算量。
下面作進一步具體描述 1、基于模板匹配的目標跟蹤 在基于模板匹配的目標跟蹤中,目標由代表其外觀的子圖像表示,這個子圖像稱為模板。初始模板通常是目標在第一幀中的外觀。在本發明中,模板用T(x)表示,其中x=[x,y]T是像素坐標。由于觀測噪聲的存在,真實的目標外觀無法得到,因此跟蹤算法實際利用的是模板的估計值
。
在每一幀中,
通過坐標變換φ(x;a)映射到圖像幀中,其中a是變換參數向量。φ(x;a)描述了目標的運動與形變。對于包含平移、縮放與旋轉的坐標變換,a是一個四維向量,a=(a1,a2,a3,a4),φ(x;a)可以表示為 這里,α1為縮放量,α2為旋轉角度,(α3、α4)為在(x、y)坐標系中的平移量。α理論上說,φ(x;a)可以具有任意多的參數來描述任意復雜的目標運動,但是由(1)式所代表的運動模型可以描述實際中遇到的大多數情況。
變換參數向量a反映了目標在當前幀中的幾何信息。該信息的最優估計通過尋找與模板最匹配的當前幀的圖像區域得到,即 在上式中,是第n幀的變換參數向量的最優估計值;In(x)是第n幀圖像位于坐標x處的像素值;ΩT是模板像素坐標的集合;N是模板所包含的像素個數。(2)式的實現有一系列快速搜索算法[14,15],搜索的初始點可以由文獻[16]中的算法得到。另外,由于坐標變換φ所產生的不一定是整數坐標值,因此需要用插值算法來計算In[φ(x;a)]。
在理想情況下,由(2)式得到的變換參數向量反映了目標的真實幾何狀態,但是,由于(2)式的最終搜索結果必須取自離散向量空間,其中的量化誤差導致了變換參數向量的最優估計值與真實值a0之間不可避免地存在誤差。因此,在每一幀中都會發生目標外觀的觀測值In[φ(x;)]偏離其真實值In[φ(x;a0)]。我們把由于這種外觀偏離而造成的那部分觀測噪聲稱為漂移噪聲。漂移噪聲的累積是導致模板漂移現象發生的根本原因。漂移噪聲與攝像頭噪聲共同構成了觀測噪聲。
2、卡爾曼模板更新濾波器 為了得到對于目標真實外觀的最優估計,卡爾曼濾波器被應用到了模板更新中。為了分析每一個模板像素的變化情況,我們對每一個模板像素分別進行卡爾曼濾波。對模板像素x,其狀態方程為 T(x,n)=T(x,n-1)+εS(x,n-1)(3) 其中,T(x,n)是模板像素x在第n幀的灰度值;εS(x,n)是狀態轉移噪聲,它反映了從第n幀到第n+1幀目標外觀本身的變化。我們可以合理地認為狀態轉移噪聲是零均值高斯白噪聲,具有功率譜密度σ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)的預測誤差,eE(x,n)為T(x,n)的估計誤差,則我們可以得到以下兩式 式中,
是在得到了前n-1幀觀測值后,對T(x,n)的預測值;
是在得到了前n幀觀測值后,對T(x,n)的估計值。由于(3)式中的狀態轉移系數為1,所以 從(3),(5)-(7)式,我們可以得到T(x,n)的預測誤差與估計誤差之間的關系為 eP(x,n)=eE(x,n-1)+εS(x,n-1)(8) 由于狀態轉移噪聲與估計誤差不相關,所以我們得到 其中,σP2和σE2分別是預測誤差與估計誤差的功率譜密度。在不致混淆的情況下,為了簡明起見,以下把功率譜密度簡稱為功率。
根據卡爾曼濾波理論[17],模板像素x的最優卡爾曼系數應該取為 模板則根據以下方程更新 其中,是第n幀的新息。
模板更新以后,T(x,n)的估計誤差功率變為 方程(7),(9)-(12)式構成了卡爾曼模板更新的一個完整的迭代。
在這里,唯一需要初始化的是模板的估計誤差功率σE2。由于初始模板直接從第一幀的目標區域截取,所以此時的估計誤差僅由攝像頭噪聲造成。因此,初始估計誤差功率等于攝像頭噪聲功率,即 其中σMC2是攝像頭噪聲功率。
3、兩個模型噪聲功率的聯系 在標準的卡爾曼濾波問題中,狀態轉移噪聲功率σS2與觀測噪聲功率σM2都被認為是先驗已知的。但是,在目標跟蹤中,這兩個模型噪聲功率需要在線估計。不過,如果一個噪聲功率已經得到,則另一個噪聲功率就不難估計了[13]。同時考慮(3)-(5)及(7)式,我們立刻可以得到聯系新息、估計誤差以及兩個模型噪聲的方程 α(x,n)=eE(x,n-1)+εS(x,n-1)+εM(x,n)(14) 由于上式右邊各項均兩兩不相關,所以可以得到 其中,σα2(x,n)是新息α(x,n)的功率。新息功率可以通過時間一空間上的平均平方誤差來估計,即 上式中,L是時間滑動平均窗的長度,一般可取L取15-25;ΩL(x)是中心位于x的空間圖像塊;NL是參與平均的像素總數。在本發明實例中,我們取L=20,空間圖像塊的大小為11×11像素。
由于估計誤差功率σE2在卡爾曼濾波的過程中自動產生,因此根據(15)式,如果σM2(σS2)已知,則σS2(σM2)立即可以得到。現在的問題是如何首先估計出兩個噪聲功率中的一個。文獻[4]與[13]對于兩個噪聲功率的取值作了不同的假設。如前所述,這些假設只是現實中可能碰到的兩個極端情況,我們需要對噪聲功率的取值作出更為有效的估計。由于狀態轉移噪聲反映的是目標外觀本身的變化,而這種變化可以是完全任意的,因此直接估計狀態轉移噪聲的功率并不容易。然而,在后面中我們將會看到,觀測噪聲的功率可以通過估計漂移噪聲功率而在線得到。一旦我們估計出了觀測噪聲功率σM2,則狀態轉移噪聲功率σS2可以立即表示如下 在某些情況下,(17)式會產生負值,這表明在x處,目標外觀從第n-1幀到第n幀幾乎沒有變化。所以,σS2應該取為零,同時,σM2也應該相應調整為 接下來,我們就具體論述如何在線估計漂移噪聲以及觀測噪聲的功率。
4、觀測噪聲功率的估計 如前所述,觀測噪聲中的漂移噪聲成分的累積是導致模板漂移現象發生的根本原因。因此,為了使得卡爾曼模板更新濾波器能夠抑制模板漂移,必須定量地估計漂移噪聲的功率。
圖1表示了由于變換參數向量的最優估計值與真實值a0之間不一致導致了在In[φ(x;)]中產生了漂移誤差。圖1中模板像素x在第n幀的真實位置φ(x;a0)位于φ(x;)的鄰域Ωu中的某一點,因此模板像素x的真實值也應該取自Ωu中的某一點。模板像素x的漂移噪聲實質上就是In[φ(x;)]與x在Ωu中的期望真實值的誤差。當(2)式的搜索精度降低時,Ωu會變大,一般會導致漂移噪聲增加。
為了簡單起見,我們用a代替a0來表示變換參數向量的真實值。根據前面的論述,模板像素x的漂移噪聲功率可以表示為 其中,σMD2(x,n)是模板像素x在第n幀的漂移噪聲功率;pa是已知以后a的各分量的聯合后驗概率密度分布。當在a的附近時,a的各分量的后驗概率密度分布可以看成是相互獨立的,因為此時某一個分量的取值結果不會影響其它分量的取值。在目標沒有丟失的情況下,這個條件總是滿足的。因此,(19)式可以重新寫為 其中,pi是a的第i個分量ai的后驗概率密度分布;m是坐標變換φ所包含的參數個數。
接下來的問題是如何計算pi。由圖2可見,i只能取離散值,且i的條件概率是 上式中,Pi是給定ai后i的條件概率;Δi是(2)式搜索i時的最終步長。根據貝葉斯法則,ai的后驗分布是 將(21)式代入(22)式可得 盡管要得到p(ai)的確切值并不容易,但是我們可以合理地認為p(ai)在(23)式的積分區間中是近似不變的。這是因為Δi較小,而且積分區間比較靠近p(ai)較為平坦的極大值點。基于此近似,(23)式可以簡化為 將(24)式代入(20)式,即可求得模板像素x在第n幀的漂移噪聲功率。然而,由于在計算過程中包含插值操作,所以要想得到漂移噪聲功率的解析結果是十分困難的。不過,我們可以通過將積分離散化求得近似的數值結果,即 其中,Δa1…Δam組成了在a所處的高維空間中的求和單元,且ak=[k1Δa1…kmΔam]T。求和單元的大小決定了(25)式的精度。整數ki的取值范圍滿足 |kiΔai-i|≤Δi/2,i=1,2,…,m (26) 估計出了模板像素的漂移噪聲功率后,需要加上攝像頭功率才能得到最終的觀測噪聲功率。與漂移噪聲功率不同,攝像頭噪聲功率在空間與時間上都認為是恒定的。攝像頭噪聲功率值可以從傳感器的技術手冊上查到,也可以通過計算由灰色均勻背景產生的測試圖像的像素方差值得到,即 其中,IG是測試圖像;ΩG是測試區域的坐標集合;M是測試區域包含的像素個數。
最后,觀測噪聲功率由下式給出 其中λ為大于1的常數,其取值取決于插值方法的精度。一般λ取1<λ≤3,差值方法的精度越高,則λ越接近1。對于本發明采用的雙線性插值中,λ取為2。
從以上的推導以及論述可知,觀測噪聲功率與目標外觀本身有很大的關系,紋理或邊緣越密集的地方產生的觀測噪聲也越大。這是可以理解的,因為同樣的坐標偏差在目標外觀較復雜處會造成較大的外觀誤差,從而對該處的模板造成較大的破壞。所以,目標外觀包含的細節越多,模板漂移現象就越嚴重。在我們的算法中,目標外觀在某時某處的細節越多,此時該處的觀測噪聲功率就越大,這使得相應的卡爾曼系數不會變得過大,從而有效保護了模板,顯著抑制了漂移。
5、快速算法 如果我們能夠從pa與φ中得到變換后的坐標u=φ(x;a)=[v,w]T的聯合后驗概率密度分布pu,則(25)式的計算量就可以顯著降低。將(19)式用變換后坐標u表示,可得 而(25)式則變為 在以上兩式中,
Ωu是圖1中所示的區域,ΔvΔw是矩形求和單元;整數l1,l2的取值滿足 [l1Δv,l2Δw]T∈Ωu(31) 通過將(30)式取代(25)式,我們能夠將產生同一個變換后坐標的變換參數向量所對應的各求和項合并成一項,將m維求和問題轉換為二維求和問題,大大降低運算量。
當坐標變換φ太復雜時,求解變換后坐標u的聯合后驗概率密度分布非常困難。但是,如果φ僅包含平移與縮放(兩類最常見的目標運動),即 則可以得到pu的解析表達式。
u的分布函數可以表示為 在這里我們用大寫字母表示隨機變量。考慮(32)式,可以將(33)式重寫為 其中,最后一個等式成立是由于坐標變換參數間的獨立性。
u的聯合后驗概率密度分布可以通過對(34)求偏導數得到,即 將(24)式代入到上式的各分布中,我們得到 其中,可以證明,BL與BH的取值如下 如果x=0,則當|v-2|≤Δ2/2時以上兩式大括弧中的第二項消失,否則u的聯合后驗概率密度分布等于零;如果y=0,則當|w-3|≤Δ3/2時以上兩式大括弧中的第三項消失,否則u的聯合后驗概率密度分布等于零。為了簡化起見,這里略去了BL與BH的推導過程。當目標運動可以僅用平移與縮放來描述時,可以使用(30),(36)-(38)式來顯著減少估計漂移噪聲功率的計算量。
根據上述內容,本發明的有效抑制模板漂移的目標跟蹤算法的具體步驟如下 1.初始化估計誤差功率σE2,即運行(13)式。其中σMC2為攝像頭噪聲功率,可查攝像頭傳感器的技術手冊得到,如果沒有這方面的數據,則用(27)式估算攝像頭噪聲功率σMC2。
2.在首幀中選定目標區域。
3.
如下初始化通過初始坐標變換φ(x;as)采樣初始ROI,即其中as為目標的初始坐標變換參數。
4.讀入下一幀。
5.當前幀的預測模板
即為上一幀的估計模板
即運行(7)式。
6.將預測模板通過坐標變換φ(x;a)映射到當前幀。通過尋找與預測模板最匹配的當前幀的圖像區域得到反映目標在當前幀中的幾何信息的變換參數向量即運行(2)式。
7.通過計算由于變換參數向量在(2)式中的量化誤差導致的像素觀測值與真實值之間的誤差平方的數學期望來得到各模板像素的漂移噪聲功率σMD2。由于無法得到解析表達式,用離散化變換參數的方式將(19)式的積分轉化為(25)式的求和。具體來說,用(25),(26)式估算漂移噪聲功率σMD2。當目標運動可以僅用平移與縮放來描述時,能夠將產生同一個變換后坐標的變換參數向量所對應的各求和項合并成一項,將m維求和問題轉換為二維求和問題,大大降低運算量。具體來說,此快速算法通過(30),(36)-(38)式來顯著減少估算漂移噪聲功率的計算量。
8.各模板像素的觀測噪聲功率σM2是漂移噪聲功率與攝像頭噪聲功率σMC2的加權和。具體來說,用(28)式計算觀測噪聲功率σM2。其中λ為大于1的常數,其取值取決于插值方法的精度。差值方法的精度越高,則λ越接近1。對于本發明實例中采用的雙線性插值,λ取為2。
9.用(16)式估算各模板像素的新息功率σα2。
10.用(17)式計算各模板像素的狀態轉移噪聲功率σS2。如果(17)式產生負值,則σS2取為零,同時σM2根據(18)式作相應調整。
11.運行(9)式得到各模板像素的預測誤差功率σP2。
12.根據(10)式確定各模板像素的最優卡爾曼系數G(x,n)。
13.根據(11)式得到當前幀的估計模板
。
14.根據(12)式得到當前幀的各模板像素的估計誤差功率σE2。
15.如果視頻流未處理完,則轉到第5步,否則結束。
圖1模板像素x在圖像幀中的真實位置φ(x;a0)位于搜索結果φ(x;)的鄰域內,由此造成了漂移噪聲。
圖2搜索最優變換參數向量時的量化過程。
圖3不同跟蹤算法抑制模板漂移的性能比較。四行分別顯示了四個不同視頻流的跟蹤結果。在每一行中,最左邊的一幅圖像是各算法共同的初始幀,接下來從左到右的三幅圖像分別顯示了文獻[3]、文獻[4]以及本發明提出的算法的最終跟蹤結果。當前模板顯示在每一幅圖像的右下角。在第四個視頻流中,文獻[3]的算法丟失了目標(見d2),因此跟蹤過程提前結束。
圖4“Lake”原圖像與合成視頻流中的一幀。右圖中紅圈中的帆船是被跟蹤的目標。
圖5采用快速算法前后模板更新濾波器的運算量比較。
具體實施例方式 1、實景視頻流實驗 我們首先在大量實景視頻流上比較了不同跟蹤算法抑制模板漂移的性能。這些視頻流中被跟蹤的目標具有不同程度的外觀變化強度。由于在每一類實驗中,我們在所有視頻流上都得到了相似的實驗結果,因此我們在每一類實驗中各取一個典型的視頻流放在本發明中,如圖3所示。圖3中的每一行代表了一個視頻流,從第一行到第四行,目標外觀的變化程度從無變化到很大變化。我們比較了以下三種算法抑制模板漂移的性能文獻[3]中的算法、文獻[4]中的算法以及本發明提出的算法。在圖3的每一行中,最左邊的一幅圖像是所有算法共同的初始幀,接下來從左到右的三幅圖像分別顯示了三種算法最后的跟蹤結果。在第四個視頻流中,由于文獻[3]中的算法在跟蹤過程中丟失了目標,所以跟蹤提前結束。在每幅圖像的右下角顯示的是當前模板。
在所有實驗中,我們都觀察到,對于文獻[3]的算法,由于它采用第一幀模板校正目標位置,因此當目標外觀變化很小時,幾乎沒有模板漂移現象(見圖3a2);然而,當目標外觀變化程度增加時,該算法的性能大幅下降(見圖3b2,3c2),甚至丟失目標(見圖3d2),這是因為第一幀模板對于校正目標位置不再有效。
對于文獻[4]的算法,當目標外觀變化較小時,過快的模板更新使該算法產生了很嚴重的模板漂移(見圖3a3);而當目標外觀變化程度增加時,盡管模板漂移有所減小,但是仍然十分明顯(見圖3b3,3c3,3d3)。這是因為該算法沒有考慮漂移噪聲功率,因而其模板更新濾波器對于抑制模板漂移無法取得令人滿意的效果。
對于本發明提出的算法,無論目標外觀變化程度如何,模板漂移總是被有效得抑制住了(見圖3a4,3b4,3c4,3d4)。這是由于本發明算法的模板更新濾波器有效建模了漂移噪聲,因而能夠針對各種不同的跟蹤場景自適應地得到最優的模板更新策略。
2、合成視頻流實驗 為了定量比較不同算法產生的模板漂移的程度,我們除了在實景視頻流上做了大量的實驗之外,還在人工合成視頻流上對各算法進行了實驗。之所以要使用人工合成視頻流,是因為在這種情況下,目標在各幀中的幾何參數的真實值都是已知的,并且,我們可以有效控制各種不同的實驗條件,以得到對于算法性能的更深入的理解。
在我們的實驗中,我們使用512×512的標準測試圖像“lake”來生成測試視頻流,生成方式如下我們將原圖中的帆船(范圍是第367~447行,第296~350列)提取出來作為目標,經過縮放與改變外觀后覆蓋在原圖上,并在原圖上沿著一定的軌跡移動。目標移動的軌跡是如下形式的等速螺旋線 其中,r不斷變化,以保證目標的移動速度始終是2像素/幀。目標的尺度在0.5~1.5之間以0.03/幀的速率變化。目標的外觀根據下式改變 其中,I(x,n)與I′(x,n)分別表示外觀更改前后的目標像素值;k是一個時變參數,以固定速率在-1~1之間變化;ΩA是目標外觀被更改的區域,依次取目標的上半、下半、左半以及右半部分,并且在每一部分中,k完成一次循環。通過改變k的變化率,我們可以控制目標外觀變化的速率。原圖以及合成視頻流中的一幀圖像示于圖4中。
首先,我們讓k恒為零,產生一個含有300幀的視頻流。在這個視頻流中,目標的外觀保持不變。各算法的跟蹤誤差示于表1中。這里,跟蹤誤差指的是目標在各幀中的坐標變換參數矢量的真實值與跟蹤算法估計值之間的平均歐氏距離。表1中的第2至第4列分別是將模板更新濾波器在所有像素點上的卡爾曼系數固定為0,0.5和1的跟蹤誤差;第5至第8列是文獻[3]、文獻[4]、文獻[13]以及本發明算法的跟蹤誤差;ΔL與ΔS分別是對應于位置與尺度的坐標變換參數的搜索精度。
在表1中我們可以看到,將卡爾曼系數固定為零具有最小的跟蹤誤差。這是符合預期的,因為當目標外觀不變時,最好的模板更新策略就是完全不更新模板。文獻[3]算法的跟蹤誤差與最小誤差十分接近,因為在這種情況下第一幀模板總是能夠有效地校正目標位置。值得注意的是,雖然在這個實驗中目標外觀始終保持不變,但是我們觀察到當目標的尺度較小時(因而單位面積內包含的細節較多時),會產生比其它時候大得多的新息。很顯然,這些新息不是由于目標外觀本身變化引起的,而是來自于匹配誤差所帶來的漂移噪聲。本發明的算法正確地分析了新息的來源,自動提高了觀測噪聲功率(而非狀態轉移噪聲功率),將模板更新濾波器各像素點的卡爾曼系數都控制在一個很低的水平,因而其跟蹤誤差在所有搜索精度下與最小值都較接近,肉眼幾乎看不出。文獻[4]、文獻[13]的算法以及將卡爾曼系數固定為0.5的方法都有較大的跟蹤誤差,因為它們所得到的模板更新策略不是最優的。最大的跟蹤誤差出現在將卡爾曼系數固定為1的方法中,每幀都毫無保留地更新模板導致了嚴重的模板漂移。
為了觀察當目標外觀變化時各算法的跟蹤誤差,我們讓k以恒定的變化率波動,生成一個包含300幀的測試視頻流。實驗結果示于表2中。在這個實驗中,保持模板不變的策略以及文獻[3]算法的跟蹤誤差都顯著增加;將卡爾曼系數固定為1的方法仍然產生了很大的模板漂移;在剩余的算法中,本發明的算法在所有搜索精度下都取得了遠小于其它算法的跟蹤誤差。
從以上實驗中可以看出,無論目標外觀是否變化,本發明的算法總是能夠根據目標外觀變化情況以及搜索精度的高低,在恰當的時間與恰當的位置以最優的方式更新模板像素,以使得模板既能夠及時得到更新,又不會被過度更新,因而有效地減小了跟蹤誤差,抑制了模板漂移。
3、快速算法效果 圖5中顯示了采用快速算法前后進行一次模板更新所需要的乘加運算(MAC)次數。其中,x軸是模板所有像素點的觀測噪聲功率的估計誤差的平均值。觀測噪聲功率的準確值通過在(25)式中取非常小的求和單元得到。我們通過改變(25)式以及(30)式的求和單元大小來得到一系列采用快速算法前后觀測噪聲功率的估計誤差及其對應的運算復雜度。由圖5可見,如果不使用快速算法,則當觀測噪聲功率的估計誤差減小時,運算量迅速增加;而如果采用快速算法,則運算量的增加非常緩慢。
表1在目標外觀固定時不同算法的跟蹤誤差比較 表中的數據是目標在各幀中的坐標變換參數矢量的真實值與跟蹤算法估計值之間的平均歐氏距離 表2在目標外觀變化時不同算法的跟蹤誤差比較 表中的數據是目標在各幀中的坐標變換參數矢量的真實值與跟蹤算法估計值之間的平均歐氏距離。
權利要求
1.一種有效抑制模板漂移的目標跟蹤算法,其特征在于利用卡爾曼濾波器更新模板,并通過將模板漂移的影響顯式納入卡爾曼濾波器中而有效抑制模板漂移的發生。
2.根據權利要求1所述的有效抑制模板漂移的目標跟蹤算法,其特征在于將模板漂移噪聲的影響定量表達為一個誤差功率,即漂移噪聲功率σMD2。
3.根據權利要求1或2所述的有效抑制模板漂移的目標跟蹤算法,其特征在于將漂移噪聲功率σMD2作為卡爾曼模板更新濾波器中觀測噪聲功率σM2的組成部分。
4.根據權利要求1所述的有效抑制模板漂移的目標跟蹤算法,其特征在于將攝像頭噪聲功率σMC2作為卡爾曼模板更新濾波器中觀測噪聲功率σM2的另一組成部分。
5.根據權利要求1、2、3、4之一所述的有效抑制模板漂移的目標跟蹤算法,其特征在于卡爾曼模板更新濾波器中觀測噪聲功率σM2由σMD2與σMC2的加權和得到σM2=λσMD2+σMC2,其中λ是常數。
6.根據權利要求2或3所述的有效抑制模板漂移的目標跟蹤算法,其特征在于通過坐標變換系數的量化誤差以及像素真實值的概率分布來定量計算漂移噪聲功率σMD2。
7.根據權利要求4所述的有效抑制模板漂移的目標跟蹤算法,其特征在于在未知攝像頭噪聲功率參數的情況下,通過計算由灰色均勻背景產生的測試圖像的像素方差值估計攝像頭的噪聲功率σMC2。
8.根據權利要求6所述的有效抑制模板漂移的目標跟蹤算法,其特征在于當目標運動可以僅用平移與縮放來描述時,采用一種快速算法計算漂移噪聲功率σMD2,該快速算法將產生同一個變換后坐標的變換參數向量所對應的各求和項合并成一項,將m維求和問題轉換為二維求和問題,從而大大降低運算量。
全文摘要
本發明屬于計算機視覺與模式分析技術領域,具體為一種能夠有效抑制模板漂移的目標跟蹤算法。在目標跟蹤過程中,經常會出現模板漂移現象。本發明針對模板漂移的起因提出了一個定量表達式,稱為“漂移噪聲功率”,并將其納入卡爾曼模板更新濾波器的框架。包含了漂移噪聲功率的卡爾曼模板更新濾波器能夠在空間及時間上自適應地實現及時更新目標外觀與避免模板漂移之間的最優平衡。在大量不同類型的實景視頻流以及合成視頻流上的實驗結果都證實了本發明算法的有效性。
文檔編號G06T7/20GK101127120SQ200710045939
公開日2008年2月20日 申請日期2007年9月13日 優先權日2007年9月13日
發明者潘吉彥, 波 胡, 張建秋 申請人:復旦大學