專(zhuān)利名稱(chēng):基于單純形法的對(duì)象跟蹤方法
技術(shù)領(lǐng)域:
本發(fā)明屬于計(jì)算機(jī)圖形圖像處理技術(shù)領(lǐng)域。
背景技術(shù):
目前對(duì)象跟蹤方法主要分為概率跟蹤方法和確定性跟蹤方法。概率跟蹤方法以粒子濾波為主要代表,如Nummiaro提出的一種自適應(yīng)顏色濾波 方法"An adaptive color-based particle filter,,,Isard 提出的條件概率密度傳播跟 Sl^fe"CONDENSATION-Conditional density propagation for visual tracking", \)JsR P. H. Li ^ ] ! "Visual contour tracking based on particle filters,,。 3 ^率跟蹤方法的主要問(wèn)題是方法需要用大量的樣本數(shù)量才能很好地近似系統(tǒng)的后驗(yàn)概率密 度,機(jī)器人面臨的環(huán)境越復(fù)雜,描述后驗(yàn)概率分布所需要的樣本數(shù)量就越多,算法的復(fù)雜度 就越高,越不易實(shí)現(xiàn)。與概率跟蹤方法相比,確定性跟蹤方法計(jì)算簡(jiǎn)單、易實(shí)現(xiàn),很適合于實(shí)時(shí)對(duì)象的 跟蹤?;诰灯?Mean Shift,簡(jiǎn)稱(chēng)MS)的跟蹤方法是確定性跟蹤方法的典型代表, 它是一種有效的基于密度梯度上升的非參數(shù)統(tǒng)計(jì)迭代方法。MS由Comaniciu等人在 “Real-time tracking of non-rigid objects using mean shift,,中首先將其應(yīng)用至Ij足艮蹤 令頁(yè)域,并在"The variable bandwidth mean shift and data-driven scale selection,, 中進(jìn)一步提出了可變窗寬的MS算子(VBDF)。Comaniciu隨后在‘‘Kernel-based object tracking”中對(duì)MS跟蹤方法做了更進(jìn)一步的改進(jìn),并總結(jié)了這種方法的實(shí)現(xiàn)框架。Yang在 "Efficient mean-shift tracking via a new similarity measure,,中米用另一個(gè)相似度 測(cè)量方法來(lái)實(shí)現(xiàn)基于MS的跟蹤,而Tu等人在“Online updating appearance generative mixture model for meanshift tracking”中利用期望最大化算法在線更新表觀柱狀圖,一 定程度提高了 MS跟蹤算法的精度和可靠性。Comaniciu 等人的 “Real-time tracking of non-rigid objects using mean shift”方法,使用目標(biāo)與候選對(duì)象的相似度作為距離測(cè)量,通過(guò)迭代運(yùn)算找到目標(biāo)和候選 對(duì)象相似函數(shù)的最大值,實(shí)現(xiàn)目標(biāo)跟蹤。但是,這種基于MS的方法是從假設(shè)的初始位置開(kāi) 始(也有根據(jù)運(yùn)動(dòng)向量帶位置預(yù)測(cè)的MS,如“Kernel-based object tracking”),沿概率密 度梯度方向搜索最佳匹配區(qū)域,因此,該方法容易陷入局部最優(yōu),跟蹤快速移動(dòng)對(duì)象時(shí)常常 失敗,且難以從失敗中恢復(fù)。
發(fā)明內(nèi)容
鑒于現(xiàn)有技術(shù)的缺點(diǎn)和不足,本發(fā)明的目的是設(shè)計(jì)一種基于單純形法的對(duì)象跟蹤 方法,以目標(biāo)與候選對(duì)象的相似度作為距離測(cè)量,使之通過(guò)迭代運(yùn)算找到目標(biāo)和候選對(duì)象 相似函數(shù)的最大值的過(guò)程中當(dāng)目標(biāo)消失后(如目標(biāo)被完全覆蓋),可以沿可能的方向進(jìn)行區(qū) 域搜索,從而能夠在目標(biāo)再次出現(xiàn)時(shí)恢復(fù)跟蹤。本發(fā)明的目的是通過(guò)如下的手段實(shí)現(xiàn)的。
基于單純形法的對(duì)象跟蹤方法,在已獲取的圖像中對(duì)選定目標(biāo)進(jìn)行跟蹤處理,包 括如下流程
(1)選取跟蹤目標(biāo)
通過(guò)運(yùn)動(dòng)目標(biāo)檢測(cè)方法自動(dòng)提取或人機(jī)交互方法手動(dòng)指定,從選定的圖像中選取要跟 蹤的目標(biāo)對(duì)象,計(jì)算目標(biāo)對(duì)象的表觀統(tǒng)計(jì)信息;
(2)圖像輸入
在實(shí)時(shí)處理情況下,提取通過(guò)攝像頭采集并保存在存儲(chǔ)區(qū)的視頻圖像,作為要進(jìn)行跟 蹤的輸入圖像;在離線處理情況,將已采集的視頻文件分解為多個(gè)幀組成的圖像序列,按照 時(shí)間順序,逐個(gè)提取幀圖像作為輸入圖像;將跟蹤區(qū)域設(shè)置為整個(gè)圖像;如果輸入圖像為 空,則整個(gè)流程中止;
(3)選擇單純形頂點(diǎn)
在初始情況下,將目標(biāo)對(duì)象所在的位置設(shè)為第一個(gè)頂點(diǎn);在跟蹤過(guò)程中,將每一次定位 的目標(biāo)位置作為第一個(gè)頂點(diǎn);在第一個(gè)頂點(diǎn)的周?chē)膫€(gè)不同的方向上再選擇四個(gè)頂點(diǎn),頂 點(diǎn)間的距離根據(jù)目標(biāo)對(duì)象的尺寸來(lái)設(shè)置,由此,得到5個(gè)頂點(diǎn),即5個(gè)候選目標(biāo)位置;
(4)計(jì)算頂點(diǎn)與目標(biāo)的距離
計(jì)算每個(gè)頂點(diǎn)的表觀統(tǒng)計(jì)信息,計(jì)算頂點(diǎn)與目標(biāo)的距離D,該距離定義為
D = I-兩個(gè)表觀統(tǒng)計(jì)信息矢量間夾角的余弦值;
(5)頂點(diǎn)排序
按照頂點(diǎn)與目標(biāo)距離從小到大的順序,將頂點(diǎn)重新排序,如果頭頂點(diǎn)與目標(biāo)的距離滿 足設(shè)定條件,跟蹤完成,跳轉(zhuǎn)到(2);如果頭頂點(diǎn)與目標(biāo)的距離超過(guò)預(yù)設(shè)邊界值,則跳轉(zhuǎn)到 (7),否則,繼續(xù);
D = I-兩個(gè)表觀統(tǒng)計(jì)信息矢量間夾角的余弦值;
(6)進(jìn)行單純形操作
將距離最大的頂點(diǎn),即最后一個(gè)頂點(diǎn)進(jìn)行單純形操作,操作完成后,跳轉(zhuǎn)到(4);
(7)目標(biāo)預(yù)測(cè)
根據(jù)目標(biāo)對(duì)象在前一時(shí)刻的位置和運(yùn)動(dòng)向量,預(yù)測(cè)其在當(dāng)前圖像中的位置,計(jì)算公式 如下
目標(biāo)當(dāng)前位置的橫坐標(biāo)=目標(biāo)前一時(shí)刻的橫坐標(biāo)+目標(biāo)橫向運(yùn)動(dòng)速度X時(shí)間間隔
目標(biāo)當(dāng)前位置的縱坐標(biāo)=目標(biāo)前一時(shí)刻的縱坐標(biāo)+目標(biāo)縱向運(yùn)動(dòng)速度X時(shí)間間隔
同時(shí),目標(biāo)的運(yùn)動(dòng)向量表示不變;目標(biāo)預(yù)測(cè)完成后,跳轉(zhuǎn)到(2);
經(jīng)過(guò)以上(3)- (6)的處理一定次數(shù)的單純形操作之后,將與目標(biāo)距離最小的那個(gè)頂點(diǎn) 作為目標(biāo)在當(dāng)前圖像的位置,從而實(shí)現(xiàn)對(duì)目標(biāo)對(duì)象的跟蹤。本發(fā)明的方法,與MS 跟蹤法,即 “Real-time tracking of non-rigid objects using mean shift”中的方法相同,均使用目標(biāo)與候選對(duì)象的相似度作為距離測(cè)量,通過(guò)迭 代運(yùn)算找到目標(biāo)和候選對(duì)象相似函數(shù)的最大值,實(shí)現(xiàn)目標(biāo)跟蹤。但是,后者是從假設(shè)的初始 位置開(kāi)始(也有根據(jù)運(yùn)動(dòng)向量帶位置預(yù)測(cè)的MS,如“Kernel-based object tracking”),沿 概率密度梯度方向搜索最佳匹配區(qū)域,容易陷入局部最優(yōu),跟蹤快速移動(dòng)對(duì)象時(shí)常常失敗, 且難以從失敗中恢復(fù)。而本發(fā)明方法在各個(gè)可能的方向進(jìn)行搜索,通過(guò)單純形操作,逐步向 最佳位置逼近,從而實(shí)現(xiàn)目標(biāo)跟蹤。由于本發(fā)明方法加入了運(yùn)動(dòng)向量分析,在目標(biāo)消失后(如目標(biāo)被完全覆蓋),可以沿可能的方向進(jìn)行區(qū)域搜索,從而能夠在目標(biāo)再次出現(xiàn)時(shí)恢復(fù) 跟蹤。另外,本發(fā)明方法基于單純形操作,實(shí)現(xiàn)容易,計(jì)算量小可以滿足實(shí)時(shí)對(duì)象跟蹤的需 要。
圖1為單純形頂點(diǎn)選擇示意圖。圖2為二維單純形操作示意圖。圖3為基于單純形法的對(duì)象跟蹤方法流程圖。
具體實(shí)施例方式下面結(jié)合附圖和對(duì)本發(fā)明作進(jìn)一步說(shuō)明?;诒景l(fā)明方法可實(shí)現(xiàn)很多不同的應(yīng)用,有價(jià)值的應(yīng)用是在需要在大量的動(dòng)態(tài)或 非動(dòng)態(tài)圖像資料中對(duì)目標(biāo)物的搜尋,例如,可用于流體表面測(cè)速(如,泥石流表面測(cè)速),道 路車(chē)輛跟蹤及測(cè)速,空中飛行物跟蹤及測(cè)速,“天網(wǎng)”視頻中目標(biāo)物的搜尋,行人跟蹤及行為 分析等。不失一般性,所述方法包括如下步驟
(1)選取跟蹤目標(biāo)
從選定的圖像中選取要跟蹤的目標(biāo)對(duì)象,計(jì)算目標(biāo)對(duì)象的表觀統(tǒng)計(jì)信息(如顏色、紋 理、輪廓,或者它們的組合)。目標(biāo)選取過(guò)程可以通過(guò)運(yùn)動(dòng)目標(biāo)檢測(cè)方法自動(dòng)提取,也可以通 過(guò)人機(jī)交互方法手動(dòng)指定。(2)輸入圖像
在實(shí)時(shí)處理情況下,提取通過(guò)攝像頭采集并保存在存儲(chǔ)區(qū)的視頻圖像,作為要進(jìn)行跟 蹤的輸入圖像;在離線處理情況,將已采集的視頻文件分解為多個(gè)幀組成的圖像序列,按照 時(shí)間順序,逐個(gè)提取幀圖像作為輸入圖像。將跟蹤區(qū)域設(shè)置為整個(gè)圖像。如果輸入圖像為 空,則整個(gè)流程中止。(3)選擇單純形頂點(diǎn)(設(shè)置候選目標(biāo))
圖1中,選擇單純形頂點(diǎn)(Pi為第一個(gè)頂點(diǎn)),在初始情況下,將目標(biāo)對(duì)象所在的位置設(shè) 為第一個(gè)頂點(diǎn);在跟蹤過(guò)程中,將每一次定位的目標(biāo)位置作為第一個(gè)頂點(diǎn)。在第一個(gè)頂點(diǎn)的 周?chē)龠x擇四個(gè)頂點(diǎn)(分別在四個(gè)不同的方向上),如圖1所示。頂點(diǎn)間的距離根據(jù)目標(biāo)對(duì) 象的尺寸來(lái)設(shè)置,如可以為目標(biāo)對(duì)象寬度的一半。由此,可以得到5個(gè)頂點(diǎn),即5個(gè)候選目 標(biāo)位置。需要說(shuō)明的是,目標(biāo)位置,即目標(biāo)的二維坐標(biāo)(橫坐標(biāo)I3X和縱坐標(biāo)Py),及其運(yùn)動(dòng) 向量(橫向運(yùn)動(dòng)速度Vx和縱向運(yùn)動(dòng)速度Vy),構(gòu)成了 4維信息空間(Px,Py, Vx, Vy),按照單 純形原理,需要5個(gè)頂點(diǎn)進(jìn)行求解。當(dāng)然也可以按照此方法選擇更多的頂點(diǎn)。(4)計(jì)算頂點(diǎn)與目標(biāo)的距離
計(jì)算每個(gè)頂點(diǎn)的表觀統(tǒng)計(jì)信息,計(jì)算頂點(diǎn)與目標(biāo)的距離D,該距離定義為 D = I-兩個(gè)表觀統(tǒng)計(jì)信息矢量間夾角的余玄值 (5)頂點(diǎn)排序
按照頂點(diǎn)與目標(biāo)距離從小到大的順序,將頂點(diǎn)重新排序。如果頭頂點(diǎn)與目標(biāo)的距離滿 足設(shè)定條件,則該頂點(diǎn)為目標(biāo)在當(dāng)前圖像的位置,同時(shí),根據(jù)前后目標(biāo)位置更新目標(biāo)運(yùn)動(dòng)向量,跟蹤完成,跳轉(zhuǎn)到(2)。如果頭頂點(diǎn)與目標(biāo)的距離過(guò)大,則說(shuō)明目標(biāo)很可能已經(jīng)消失(如 大面積或者完全遮擋),跳轉(zhuǎn)到(7)。否則,繼續(xù)。(6)進(jìn)行單純形操作
將距離最大的頂點(diǎn),即最后一個(gè)頂點(diǎn)進(jìn)行單純形操作,這些操作包括反射,膨脹,收縮 等。如圖2所示,B表示距離最小的頂點(diǎn),W表示距離最大的頂點(diǎn),M表示介于兩者之間的頂 點(diǎn),則R表示W(wǎng)經(jīng)反射的位置,C表示W(wǎng)經(jīng)收縮后的位置,E表示R經(jīng)膨脹后位置。也可以根 據(jù)情況,同時(shí)操作幾個(gè)頂點(diǎn),如圖2中的Sw和Sm分別表示W(wǎng)和M經(jīng)收縮后的位置。單純形 操作完成后,即對(duì)候選目標(biāo)位置進(jìn)行了更新,跳轉(zhuǎn)到(4 )。(7)目標(biāo)預(yù)測(cè)
根據(jù)目標(biāo)對(duì)象在前一時(shí)刻的位置和運(yùn)動(dòng)向量,預(yù)測(cè)其在當(dāng)前圖像中的位置。計(jì)算公式 如下
目標(biāo)當(dāng)前位置的橫坐標(biāo)=目標(biāo)前一時(shí)刻的橫坐標(biāo)+目標(biāo)橫向運(yùn)動(dòng)速度X時(shí)間間隔 目標(biāo)當(dāng)前位置的縱坐標(biāo)=目標(biāo)前一時(shí)刻的縱坐標(biāo)+目標(biāo)縱向運(yùn)動(dòng)速度X時(shí)間間隔 同時(shí),目標(biāo)的運(yùn)動(dòng)向量表示不變。目標(biāo)預(yù)測(cè)完成后,跳轉(zhuǎn)到(2)。本發(fā)明方法的技術(shù)流程圖如圖3所示。經(jīng)過(guò)以上(3)- (6)的處理后,頂點(diǎn)逐步向 最佳位置逼近,因此,經(jīng)過(guò)一定次數(shù)的單純形操作之后,將與目標(biāo)距離最小的那個(gè)頂點(diǎn)作為 目標(biāo)在當(dāng)前圖像的位置,從而實(shí)現(xiàn)對(duì)目標(biāo)對(duì)象的跟蹤。顯然,所述預(yù)設(shè)條件D = 1 -兩個(gè)表觀統(tǒng)計(jì)信息矢量間夾角的余弦值< ,Θ 之值由具體跟蹤對(duì)象的表觀統(tǒng)計(jì)信息設(shè)定。本發(fā)明方法可通過(guò)任何計(jì)算機(jī)程序設(shè)計(jì)語(yǔ)言(如C語(yǔ)言)編程實(shí)現(xiàn),基于本方法的 跟蹤軟件可在任何PC或者嵌入式系統(tǒng)中實(shí)現(xiàn)實(shí)時(shí)視頻對(duì)象跟蹤應(yīng)用。
權(quán)利要求
1.基于單純形法的對(duì)象跟蹤方法,在已獲取的圖像中對(duì)選定目標(biāo)進(jìn)行跟蹤處理,包括 如下流程(1)選取跟蹤目標(biāo)通過(guò)運(yùn)動(dòng)目標(biāo)檢測(cè)方法自動(dòng)提取或人機(jī)交互方法手動(dòng)指定,從選定的圖像中選取要跟 蹤的目標(biāo)對(duì)象,計(jì)算目標(biāo)對(duì)象的表觀統(tǒng)計(jì)信息;(2)圖像輸入在實(shí)時(shí)處理情況下,提取通過(guò)攝像頭采集并保存在存儲(chǔ)區(qū)的視頻圖像,作為要進(jìn)行跟 蹤的輸入圖像;在離線處理情況,將已采集的視頻文件分解為多個(gè)幀組成的圖像序列,按照 時(shí)間順序,逐個(gè)提取幀圖像作為輸入圖像;將跟蹤區(qū)域設(shè)置為整個(gè)圖像;如果輸入圖像為 空,則整個(gè)流程中止;(3)選擇單純形頂點(diǎn)在初始情況下,將目標(biāo)對(duì)象所在的位置設(shè)為第一個(gè)頂點(diǎn);在跟蹤過(guò)程中,將每一次定位 的目標(biāo)位置作為第一個(gè)頂點(diǎn);在第一個(gè)頂點(diǎn)的周?chē)膫€(gè)不同的方向上再選擇四個(gè)頂點(diǎn),頂 點(diǎn)間的距離根據(jù)目標(biāo)對(duì)象的尺寸來(lái)設(shè)置,由此,得到5個(gè)頂點(diǎn),即5個(gè)候選目標(biāo)位置;(4)計(jì)算頂點(diǎn)與目標(biāo)的距離計(jì)算每個(gè)頂點(diǎn)的表觀統(tǒng)計(jì)信息,計(jì)算頂點(diǎn)與目標(biāo)的距離D,該距離定義為D = I-兩個(gè)表觀統(tǒng)計(jì)信息矢量間夾角的余弦值;(5)頂點(diǎn)排序按照頂點(diǎn)與目標(biāo)距離從小到大的順序,將頂點(diǎn)重新排序,如果頭頂點(diǎn)與目標(biāo)的距離滿 足設(shè)定條件,跟蹤完成,跳轉(zhuǎn)到(2);如果頭頂點(diǎn)與目標(biāo)的距離超過(guò)預(yù)設(shè)邊界值,則跳轉(zhuǎn)到 (7),否則,繼續(xù);D = I-兩個(gè)表觀統(tǒng)計(jì)信息矢量間夾角的余弦值;(6)進(jìn)行單純形操作將距離最大的頂點(diǎn),即最后一個(gè)頂點(diǎn)進(jìn)行單純形操作,操作完成后,跳轉(zhuǎn)到(4);(7)目標(biāo)預(yù)測(cè)根據(jù)目標(biāo)對(duì)象在前一時(shí)刻的位置和運(yùn)動(dòng)向量,預(yù)測(cè)其在當(dāng)前圖像中的位置,計(jì)算公式 如下目標(biāo)當(dāng)前位置的橫坐標(biāo)=目標(biāo)前一時(shí)刻的橫坐標(biāo)+目標(biāo)橫向運(yùn)動(dòng)速度X時(shí)間間隔目標(biāo)當(dāng)前位置的縱坐標(biāo)=目標(biāo)前一時(shí)刻的縱坐標(biāo)+目標(biāo)縱向運(yùn)動(dòng)速度X時(shí)間間隔同時(shí),目標(biāo)的運(yùn)動(dòng)向量表示不變;目標(biāo)預(yù)測(cè)完成后,跳轉(zhuǎn)到(2);經(jīng)過(guò)以上(3)- (6)的處理一定次數(shù)的單純形操作之后,將與目標(biāo)距離最小的那個(gè)頂點(diǎn) 作為目標(biāo)在當(dāng)前圖像的位置,從而實(shí)現(xiàn)對(duì)目標(biāo)對(duì)象的跟蹤。
2.根據(jù)權(quán)利要求1所述之基于單純形法的對(duì)象跟蹤方法,其特征在于,所述目標(biāo)對(duì)象 的表觀統(tǒng)計(jì)信息為顏色、紋理、輪廓,或者其組合。
3.根據(jù)權(quán)利要求1所述之基于單純形法的對(duì)象跟蹤方法,其特征在于,所述預(yù)設(shè)條件 D=I-兩個(gè)表觀統(tǒng)計(jì)信息矢量間夾角的余弦值< Θ,Θ之值由具體跟蹤對(duì)象的表觀統(tǒng) 計(jì)信息設(shè)定。
4.根據(jù)權(quán)利要求1所述之基于單純形法的對(duì)象跟蹤方法,其特征在于,所述頂點(diǎn)間的 距離可設(shè)置為目標(biāo)對(duì)象寬度的一半。
全文摘要
本發(fā)明公開(kāi)了一種基于單純形法的對(duì)象跟蹤方法,在已獲取的圖像中對(duì)選定目標(biāo)進(jìn)行跟蹤處理,通過(guò)目標(biāo)選取、圖像輸入、選擇單純形頂點(diǎn)、計(jì)算頂點(diǎn)與目標(biāo)的距離、頂點(diǎn)排序、進(jìn)行單純形操作、目標(biāo)預(yù)測(cè)等步驟,經(jīng)過(guò)一定次數(shù)的迭代之后,找到與目標(biāo)距離最小的那個(gè)節(jié)點(diǎn),即目標(biāo)在當(dāng)前圖像的位置,從而實(shí)現(xiàn)對(duì)目標(biāo)對(duì)象的跟蹤。本發(fā)明方法可以實(shí)現(xiàn)實(shí)時(shí)快速移動(dòng)對(duì)象跟蹤,在跟蹤失敗后自動(dòng)恢復(fù)。
文檔編號(hào)G06T7/20GK102087747SQ20111000073
公開(kāi)日2011年6月8日 申請(qǐng)日期2011年1月5日 優(yōu)先權(quán)日2011年1月5日
發(fā)明者余南陽(yáng), 權(quán)偉, 陳錦雄 申請(qǐng)人:西南交通大學(xué)