聯(lián)合數(shù)據(jù)關(guān)聯(lián)的Mean Shift多目標跟蹤方法
【專利摘要】一種圖像處理【技術(shù)領(lǐng)域】的聯(lián)合數(shù)據(jù)關(guān)聯(lián)的Mean?Shift多目標跟蹤方法,首先從視頻中提取得到運動前景并分割,針對分割后的前景塊生成數(shù)據(jù)關(guān)聯(lián)矩陣,并通過逐行掃描優(yōu)化后使用Mean?Shift算法完成對每個目標的跟蹤。本發(fā)明能夠解決已有Mean?Shift目標跟蹤算法在抗遮擋,即兩個目標之間遮擋,以及抗相似顏色方面不佳的問題。
【專利說明】聯(lián)合數(shù)據(jù)關(guān)聯(lián)的Mean Sh i ft多目標跟蹤方法
【技術(shù)領(lǐng)域】
[0001]本發(fā)明涉及的是一種圖像處理【技術(shù)領(lǐng)域】的方法,具體是一種聯(lián)合數(shù)據(jù)關(guān)聯(lián)的MeanShift多目標跟蹤方法。
【背景技術(shù)】
[0002]隨著視頻監(jiān)控技術(shù)的普及,以及監(jiān)控探頭數(shù)量的劇增和海量視頻數(shù)據(jù)的產(chǎn)生,人們對監(jiān)控視頻內(nèi)容的自動分析技術(shù)需求也愈加迫切。視頻單目標跟蹤技術(shù)或多目標跟蹤技術(shù)在很多場合下具有重要的用途,如在智能視頻監(jiān)控、視頻索引、新型人機交互、交通監(jiān)測、車輛自動駕駛等方面均有大量的應用。
[0003]Mean Shift跟蹤算法是一種經(jīng)典的無參密度估計算法,在1975年由Fukunaga等人在〈〈IEEE Transactions on Information Theory〉〉的“The estimation of the gradientof a density function, with applications in pattern recognition,,一文中提出。2002和 2003 年,Comaniciu 等人在〈〈IEEE Transactions on Pattern Analysis and MachineIntelligence))的兩篇文獻“Mean shift:a robust approach toward feature spaceanalysis”和“Kernel-Based Object Tracking” 中進一步利用 Mean Shift 對圖像進行分析,前者對圖像的特征空間進行分析,使Mean Shift成功應用在圖像平滑、圖像分割等計算機視覺領(lǐng)域的多個方向,證明了在滿足一定條件時,Mean Shift算法具有收斂的特性,利用該特性可以檢測概率密度函數(shù)中存在的模態(tài);后者將目標跟蹤問題轉(zhuǎn)化為一個Mean Shift最優(yōu)化的問題,從而將Mean Shift算法成功地應用在目標跟蹤領(lǐng)域,由于Mean Shift算法不需要窮盡的搜索,使得高性能目標跟蹤成為了可能。
[0004]然而,在實際環(huán)境中,目標及周圍情況較為復雜。一系列因素,包括圖像信息采集過程中信息的丟失,場景光照條件的變化,目標在運動過程中被部分或全部遮擋等等,都將對Mean Shift的處理效果產(chǎn)生負面的影響。當目標與周圍干擾物或者遮擋物顏色相近時,對采用HSV直方圖作為統(tǒng)計特征的跟蹤方法來說,極易發(fā)生目標丟失或者漂移的現(xiàn)象,這嚴重影響了算法的廣泛應用。
[0005]經(jīng)過對現(xiàn)有技術(shù)的檢索發(fā)現(xiàn),中國專利文獻號CN102831622公開了一種基于MeanShift的目標跟蹤方法,它首先利用卡爾曼濾波算法對目標當前位置進行預測,然后設計模糊判定準則在線調(diào)整目標尺度值,利用Mean Shift迭代運算逐步逼近目標來完成跟蹤,最后,利用相似度和置信度系數(shù)設計模型更新準則,以實現(xiàn)模板的自適應更新。
[0006]中國專利文獻號CN101162525公開了一種基于Mean Shift和人工魚群智能優(yōu)化的人體多關(guān)節(jié)特征跟蹤方法,首先基于目標模型的顏色分布特征,根據(jù)前一幀圖像的信息利用人工魚群智能優(yōu)化算法得到被跟蹤人體多關(guān)節(jié)特征目標在當前幀的優(yōu)化位置,然后根據(jù)目標模型的顏色分布特征運用Mean Shift迭代算法在其優(yōu)化位置的領(lǐng)域內(nèi)進行目標搜索,其中與目標模型顏色分布最相似的候選目標即為被跟蹤目標。
[0007]中國專利文獻號CN101867798公開了一種基于視頻壓縮域分析的Mean Shift運動目標跟蹤方法,該方法將壓縮域分析與Mean Shift跟蹤算法相結(jié)合,即首先對視頻編碼過程中產(chǎn)生的運動矢量進行概率統(tǒng)計分析,以獲取目標運動方向與運動速度的估計值,再以此修正Mean Shift運動候選區(qū)域的中心位置,使每次搜索開始時,候選中心位置更接近實際目標中心位置。
[0008]中國專利文獻號CN102231207公開了一種基于Mean Shift和塊匹配的運動目標跟蹤方法,首先確定目標模型與次要目標模型,然后用Mean Shift算法求出次要目標模型在當前幀所處位置,根據(jù)該次要目標模型位置,采用塊匹配在次要目標模型范圍內(nèi)得出首要目標模型的最佳位置。
[0009]中國專利文獻號CN102142085公開了一種林區(qū)監(jiān)控視頻中運動火焰目標的魯棒跟蹤方法,提出了使用基于高斯混合模型的改進Mean Shift窗口自適應算法獲得當前幀中林區(qū)目標的形狀變化。
[0010]中國專利文獻號CN102800106公開了一種基于光流場估計的自適應Mean Shift目標跟蹤方法。該方法在基于傳統(tǒng)均值漂移矢量法的同時,引入光流法,在目標上找尋特征點,通過特征點前后變化的信息,修正跟蹤窗口中心位置和大小,再根據(jù)Bhattacharyya系數(shù)二分法分別自適應得到更為精確的窗口長寬。而針對目標被靜止物體遮擋的情況,通過色差分析觀測目標被遮擋區(qū)域,利用Bhattacharyya系數(shù)重新捕捉目標。但上述技術(shù)無法有效解決多目標跟蹤過程中目標間相互遮擋的問題。
【發(fā)明內(nèi)容】
[0011]本發(fā)明針對現(xiàn)有技術(shù)存在的上述不足,提出一種聯(lián)合數(shù)據(jù)關(guān)聯(lián)的Mean Shift多目標跟蹤方法,能夠解決已有Mean Shift目標跟蹤算法在抗遮擋,即兩個目標之間遮擋,以及抗相似顏色方面不佳的問題。
[0012]本發(fā)明是通過以下技術(shù)方案實現(xiàn)的,本發(fā)明首先從視頻中提取得到運動前景并分害I],針對分割后的前景塊生成數(shù)據(jù)關(guān)聯(lián)矩陣,并通過逐行掃描優(yōu)化后使用Mean Shift算法完成對每個目標的跟蹤。
[0013]本發(fā)明具體包括以下步驟:
[0014]I)利用前景提取算法對運動目標前景進行提取并得到運動前景;
[0015]2)對提取出的運動前景進行分割,得到若干前景塊;
[0016]3)對分割獲得的前景塊(即前景區(qū)域目標)和基于MeanShift跟蹤獲得的目標區(qū)域(即歷史目標),進行數(shù)據(jù)關(guān)聯(lián);
[0017]4)逐行掃描數(shù)據(jù)關(guān)聯(lián)矩陣,檢測并處理目標的合并信息和分裂信息,并對目標樣本進行更新;
[0018]5)使用MeanShift算法完成對每個目標的跟蹤。
技術(shù)效果
[0019]本發(fā)明提供的方法能夠通過對目標前景的提取以及數(shù)據(jù)關(guān)聯(lián)的分裂-合并判定,實現(xiàn)對受干擾物或者遮擋物影響的目標的位置的有效估計,應用于多目標跟蹤,得到較為滿意的跟蹤效果。
【專利附圖】
【附圖說明】
[0020]圖1是本發(fā)明所提出的跟蹤方法處理流程圖。[0021]圖2是前景檢測處理流程圖。
[0022]圖3是多線程Mean Shift目標跟蹤處理流程圖。
[0023]圖4是多線程中子線程Mean Shift目標跟蹤處理流程圖。
[0024]圖5是有無數(shù)據(jù)關(guān)聯(lián)情況下跟蹤效果對比圖。
[0025]圖6為實施例中目標合并-分裂景象示意圖。
【具體實施方式】
[0026]下面對本發(fā)明的實施例作詳細說明,本實施例在以本發(fā)明技術(shù)方案為前提下進行實施,給出了詳細的實施方式和具體的操作過程,但本發(fā)明的保護范圍不限于下述的實施例。
實施例1
[0027]如圖1所示,本實施例包括以下步驟:
[0028]步驟I)如圖2所示,利用前景提取算法對運動目標前景進行提取并得到運動前景,具體是:
[0029]1.1)為視頻序列每一幀的每個像素點維護一個樣本集,樣本集中的采樣值來自該像素點過去的像素值和鄰居點的像素值;
[0030]1.2)在新的一幀中,將每一個像素點的像素值和樣本集進行比較來判斷其是否屬于背景點,并生成背景樣本集。
[0031]所述的背景點的判斷是指:記v(x)為χ點處的像素值;M(x) = (X1, X2, , xN}為χ處的背景樣本集,其中:N表示樣本集的大??;SK(v(x))是以χ為中心R為半徑的區(qū)域,當M(x) [SE(v(x)) Π {χ1; χ2,...χΝ}]大于背景閾值,則χ點屬于背景點,反之則屬于前景點。
[0032]所述的背景樣本集在初始化中,完成了對背景模型的建立過程,背景模型的建立過程也就是填充模型中樣本集的過程,即根據(jù)背景樣本集進行學習;由于在一幀圖像中不可能包含像素點的時空分布信息,通過利用相近像素點擁有相近時空分布特性這一規(guī)律,具體來講就是:
[0033]對于一個像素點,隨機地選擇它的鄰居點的像素值作為它的模型樣本值:
[0034]Mci(X) = {v0 (y) y e Ng (χ) } (I)
[0035]其中=Mtl(χ)表示第一幀中的背景樣本集,Ne(χ)為鄰居點。該方法的優(yōu)點是初始化速度非常快,通常只需要一幀視頻圖像即可完成對目標模型的初始化;并且引入的Ghost區(qū)域在模型不斷更新過程中將會很快消失。
[0036]1.3)通過前景提取算法對模型進行更新,使得背景模型不斷適應背景的諸如光照、背景物體的變化。
[0037]所述的前景提取算法是指:采用前景點計數(shù)方法,對像素點進行統(tǒng)計,當某個背景模型中的像素點連續(xù)N幀被統(tǒng)計為前景點,則將其更新為前景點。
[0038]1.4)將統(tǒng)計為前景點的圖像輸出便獲得了運動前景。
[0039]步驟2)對提取出的運動前景進行分割,得到若干前景塊;
[0040]所述的分割采用cvBlobs庫實現(xiàn),具體為調(diào)用cvBlobs庫(http://code, google,com/p/cvblob/)中的函數(shù)cvLabel O ,將運動前景作為輸入?yún)?shù),返回值是一個鏈表,記錄了所有分割的前景塊。[0041]所述的前景塊中包含有該前景塊位于運動前景中的位置、面積等信息。
[0042]所述的分割過程中,針對前景塊在目標跟蹤的過程中由于被非目標(如電線桿、樹等)遮擋而導致分裂的情況,根據(jù)每個前景塊的位置、面積,判斷異常的分裂并對這些分裂塊進行合并,即取多個團塊的最小外接矩形構(gòu)成更大的團塊。
[0043]步驟3):對分割獲得的前景塊(即前景區(qū)域目標)和基于Mean Shift跟蹤獲得的目標區(qū)域(即歷史目標)進行數(shù)據(jù)關(guān)聯(lián),具體步驟包括:
[0044]3.1)構(gòu)造歷史目標Ti和前景區(qū)域目標Dj的匹配矩陣M:
【權(quán)利要求】
1.一種聯(lián)合數(shù)據(jù)關(guān)聯(lián)的Mean Shift多目標跟蹤方法,其特征在于,首先從視頻中提取得到運動前景并分割,針對分割后的前景塊生成數(shù)據(jù)關(guān)聯(lián)矩陣,并通過逐行掃描優(yōu)化后使用Mean Shift算法完成對每個目標的跟蹤;所述方法包括以下步驟: 1)利用前景提取算法對運動目標前景進行提取并得到運動前景; 2)對提取出的運動前景進行分割,得到若干前景塊; 3)對分割獲得的前景塊,即前景區(qū)域目標和基于MeanShift跟蹤獲得的目標區(qū)域,即歷史目標進行數(shù)據(jù)關(guān)聯(lián); 4)逐行掃描數(shù)據(jù)關(guān)聯(lián)矩陣,檢測并處理目標的合并信息和分裂信息,并對目標樣本進行更新; 5)使用MeanShift算法完成對每個目標的跟蹤。
2.根據(jù)權(quán)利要求1所述的方法,其特征是,所述的前景提取算法是指:采用前景點計數(shù)方法,對像素點進行統(tǒng)計,當某個背景模型中的像素點連續(xù)N幀被統(tǒng)計為前景點,則將其更新為前景點。
3.根據(jù)權(quán)利要求1所述的方法,其特征是,步驟I)具體包括: 1.D為視頻序列每一幀的每個像素點維護一個樣本集,樣本集中的采樣值來自該像素點過去的像素值和鄰居點的像素值; 1.2)在新的一幀中,將每一個像素點的像素值和樣本集進行比較來判斷其是否屬于背景點,并生成背景樣本集; 1.3)通過前景提取算法對模型進行更新,使得背景模型不斷適應背景的變化; 1.4)將統(tǒng)計為前景點的圖像輸出便獲得了運動前景。
4.根據(jù)權(quán)利要求3所述的方法,其特征是,所述的背景點的判斷是指:記V(X)為X點處的像素值;M(x) =為X處的背景樣本集,其中:N表示樣本集的大小;SE(v(x))是以X為中心R為半徑的區(qū)域,當M(x) [Se(ν(χ)) Π (X1, χ2,...χΝ}]大于背景閾值,則X點屬于背景點,反之則屬于前景點; 所述的背景樣本集在初始化中,完成了對背景模型的建立過程,背景模型的建立過程也就是填充模型中樣本集的過程,即根據(jù)背景樣本集進行學習,具體對于一個像素點,隨機地選擇它的鄰居點的像素值作為它的模型樣本值=M0(X) = {v0(y) |ye Ne(x)},其中:MQ(x)表不第一幀中的背景樣本集,Ne(X)為鄰居點。
5.根據(jù)權(quán)利要求1所述的方法,其特征是,所述的數(shù)據(jù)關(guān)聯(lián)矩陣C的元素包括:0、1或2,其中:0表示該行對應的歷史目標和該列對應的前景目標區(qū)域,即觀測之間沒有關(guān)聯(lián),2表示該行對應的歷史目標和該列對應的觀測之間相互關(guān)聯(lián),I表示該行對應的歷史目標和該列對應的觀測只有單向關(guān)聯(lián)。
6.根據(jù)權(quán)利要求1所述的方法,其特征是,所述的步驟3具體包括:
St^d .3.1)構(gòu)造歷史目標Ti和前景區(qū)域目標Dj的匹配矩陣M: Μ(υ) = \ +s ’其中:Anl),表示歷史目標Ti和觀測目標Dj的重疊部分的面積,\和&分別表示Ti和h的外接矩形的面積,C是規(guī)范化常數(shù); .3.2)獲得匹配矩陣M后,根據(jù)相似度的大小,構(gòu)造數(shù)據(jù)關(guān)聯(lián)矩陣C:. 3.2.1)初始化:設置數(shù)據(jù)關(guān)聯(lián)矩陣C的所有元素為O ;. 3.2.2)逐行對矩陣M掃描,找出每行中最大元素所在位置的列號jmax,并將矩陣C對應的位置加 I:jmax = argmaxM(i, j), j = 1,2,...N1, C(i, jmax) = C(i, jmax)+l ;. 3.2.3)逐列對矩陣M掃描,找出每列中最大元素所在位置的行號imax,并將矩陣C對應的位置加 I:imax = argmaxM(i, j), i = 1,2,...N1, C(imax, j) = C(imax, j)+l。
7.根據(jù)權(quán)利要求1所述的方法,其特征是,所述的步驟4中: . 4.1)逐行掃描數(shù)據(jù)關(guān)聯(lián)矩陣C,記錄每一行中的最大值Max和非零元素的個數(shù)Ntl,當Max等于I且Ntl等于1,則判斷為該行對應的歷史跟蹤目標Ta與另一個歷史跟蹤目標Tb合并,否則跳過步驟4.2~步驟4.3,重新執(zhí)行步驟4.1并掃描下一行;. 4.2)通過數(shù)據(jù)關(guān)聯(lián)矩陣C的對應關(guān)系,找到歷史跟蹤目標Ta對應的新觀測Dab,即與Ta相似度最大的觀測目標,由于發(fā)生了合并,該觀測Dab必然與另一個歷史跟蹤目標相互關(guān)聯(lián),在關(guān)聯(lián)矩陣C中搜索并找到Tb ; . 4.3)將Ta和Tb的跟蹤狀態(tài)改變,由沒有遮擋變?yōu)橄嗷フ趽酰⑼ㄟ^記錄其地址信息鏈接到Tab ; . 4.4)利用Dab的區(qū)域以及該區(qū)域的視覺特征,新增加一個合并目標Tab進行跟蹤,并記錄下Tab與目標TA、Tb的對應關(guān)系。
8.根據(jù)權(quán)利要求1所述的方法,其特征是,所述的步驟4中: . 5.1)逐行掃描數(shù)據(jù)關(guān)聯(lián)矩陣C,記錄該行中的最大值Max和非零元素的個數(shù)Ntl,當Max等于I且Ntl等于2,則判斷為該行對應的歷史跟蹤目標Tab分裂,否則跳過步驟5.2~步驟.5.3,重新執(zhí)行步驟5.1并掃描下一行;. 5.2)將目標Tab對應的目標TA、TB以及分裂后的觀測Da,Db通過目標顏色直方圖特征進行匹配; . 5.3)將Ta和Tb的跟蹤狀態(tài)改變,由相互遮擋變?yōu)闆]有遮擋。
9.根據(jù)權(quán)利要求1所述的方法,其特征是,所述的步驟4中,目標樣本進行更新是指:逐行掃描數(shù)據(jù)關(guān)聯(lián)矩陣C,并在沒有分裂或合并情況發(fā)生時,對目標樣本進行更新,具體是:掃描數(shù)據(jù)關(guān)聯(lián)矩陣,檢測處理目標的合并-分裂;當沒有合并或分裂情況發(fā)生時,利用觀測D對目標T進行更新,即將觀測和目標的中心位置進行加權(quán)得到該目標的最終位置,從而校正目標。
10.根據(jù)權(quán)利要求1所述的方法,其特征是,所述的步驟5具體包括以下步驟: . 7.1)當輸入視頻圖像為第一幀時,人工選擇目標區(qū)域; . 7.2)主流程產(chǎn)生若干個與單目標對象一一相對的子流程,該子流程接口函數(shù)實現(xiàn)了Mean Shift跟蹤算法的整個流程,即各個對象并行地運算,即檢測trackmode: 當trackmode等于I時,調(diào)用成員函數(shù)完成對目標特征直方圖的計算,并將trackmode改為2 ; 當trackmode等于2時,調(diào)用成員函數(shù)計算當前幀中候選區(qū)的直方圖,完成Mean Shift過程,更新目標區(qū)域; 所述的Mean Shift過程是指:首先將候選區(qū)設為上一幀目標所在的區(qū)域,然后計算候選區(qū)的直方圖,利用相似性函數(shù)計算相似程度以及Mean Shift向量;不斷地更新候選區(qū)的位置,直到Mean Shift向量的步長小于閾值或者循環(huán)的次數(shù)到達最大值時,將候選區(qū)的位置賦給目標區(qū)域, 完成目標位置的更新。
【文檔編號】G06T7/20GK103985142SQ201410239186
【公開日】2014年8月13日 申請日期:2014年5月30日 優(yōu)先權(quán)日:2014年5月30日
【發(fā)明者】鄭世寶, 薛明, 丁正彥, 李宏波, 朱文婕, 陳宇航 申請人:上海交通大學