一種運動目標(biāo)跟蹤方法及系統(tǒng)的制作方法
【技術(shù)領(lǐng)域】
[0001]本發(fā)明涉及圖像處理技術(shù)領(lǐng)域,具體涉及一種運動目標(biāo)跟蹤方法及系統(tǒng)。
【背景技術(shù)】
[0002]隨著近年來計算機視覺技術(shù)的發(fā)展,運動目標(biāo)跟蹤問題已是機器視覺研究的一個熱點問題,目前常用的運動目標(biāo)跟蹤方法主要有三類:基于運動分析的方法、基于圖像特征匹配的方法以及基于顏色特征分布的方法。
[0003]其中,基于運動分析的方法包括幀間差分法,幀間差分法主要利用相鄰兩幀之間的像素的變化情況,通過相連兩幀之間相減來獲取不同區(qū)域的圖像的方法,幀間差分法的算法簡單、計算量小、實時性高,但是幀間差分法具有以下不足:一是對運動的物體較為敏感,會提取出并不需要檢測的運動區(qū)域,檢測效果不準(zhǔn)確;二是幀間差分法得到的圖像具有不容忽略的空洞區(qū)域,影響運動目標(biāo)的檢測結(jié)果的準(zhǔn)確性;三是不能對檢測到的運動目標(biāo)進行有效的計數(shù)。
[0004]基于顏色特征分布的方法包括camshift算法,camshift算法是opencv中關(guān)于運動跟蹤的經(jīng)算法,解決了用戶選擇跟蹤目標(biāo),對目標(biāo)實時跟蹤并標(biāo)注等問題,但是,camshift算法還具有以下不足:一是用戶選擇跟蹤目標(biāo)的目的是希望生成運動軌跡,以便于進行進一步的觀察,而camshift算法中并不生成運動軌跡,若用戶向觀察研究運動目標(biāo)時,需要重新打開視頻,再次進行跟蹤,造成了時間以及人力的浪費;二是camshift算法的分辨力不足,當(dāng)兩個或多個運動目標(biāo)交會時,會將跟蹤目標(biāo)劃分為所有的運動目標(biāo),出現(xiàn)跟蹤目標(biāo)的錯誤處理。
【發(fā)明內(nèi)容】
[0005]針對現(xiàn)有技術(shù)存在的缺陷,本發(fā)明提出一種運動目標(biāo)檢測與跟蹤方法及系統(tǒng),以解決現(xiàn)有camshift算法中不能生成運動軌跡,若用戶向觀察研究運動目標(biāo)時,需要重新打開視頻,再次進行跟蹤,造成了時間以及人力的浪費。
[0006]為此目的,第一方面,本發(fā)明提供一種運動目標(biāo)跟蹤方法,所述方法包括:
[0007]基于跟蹤運動目標(biāo)的各幀圖像中的第一幀圖像,確定所述運動目標(biāo)的跟蹤窗的質(zhì)心和大??;
[0008]基于所述第一幀圖像中運動目標(biāo)的像素顏色,確定所述各幀圖像的顏色概率分布圖;
[0009]基于所述各幀圖像中運動目標(biāo)的位置,調(diào)整所述跟蹤窗的大小,得到所述各幀圖像的跟蹤窗的大??;
[0010]判斷所述各幀圖像的跟蹤窗的大小是否小于預(yù)設(shè)的跟蹤窗大小的閾值;
[0011]若所述各幀圖像的跟蹤窗的大小小于預(yù)設(shè)的跟蹤窗大小的閾值,則基于所述各幀圖像的顏色概率分布圖,得到所述各幀圖像的跟蹤窗的質(zhì)心;
[0012]存儲所述各幀圖像中跟蹤窗的質(zhì)心;
[0013]根據(jù)存儲的各質(zhì)心,在預(yù)設(shè)的背景圖像上繪制所述運動目標(biāo)的運動軌跡。
[0014]其中,當(dāng)判斷所述各幀圖像的跟蹤窗的大小大于或等于預(yù)設(shè)的跟蹤窗大小的閾值時,所述方法還包括:
[0015]根據(jù)預(yù)設(shè)的修正模型,將各幀圖像的跟蹤窗的大小修正至一個運動目標(biāo)跟蹤窗大?。?br>[0016]調(diào)用預(yù)設(shè)的預(yù)測模型,根據(jù)上一幀圖像中運動目標(biāo)的質(zhì)心,預(yù)測當(dāng)前幀圖像中的運動目標(biāo)的質(zhì)心。
[0017]其中,在基于跟蹤運動目標(biāo)的各幀圖像中的第一幀圖像,確定所述運動目標(biāo)的跟蹤窗的質(zhì)心和大小之前,所述方法還包括:
[0018]采用幀間差分法對運動目標(biāo)的運動視頻進行處理,得到幀圖像序列;
[0019]對所述幀圖像序列進行二值化處理,得到二值圖像序列;
[0020]采用中值濾波法對所述二值圖像序列進行去噪處理,得到平滑圖像序列;
[0021]對所述平滑圖像序列進行膨脹處理,得到優(yōu)化圖像序列;
[0022]根據(jù)所述優(yōu)化圖像序列,確定用于跟蹤運動目標(biāo)的各幀圖像中的第一幀圖像。
[0023]其中,在對所述平滑圖像序列進行膨脹處理,得到優(yōu)化圖像序列之后,所述方法還包括:
[0024]對所述優(yōu)化圖像序列中運動目標(biāo)的運動區(qū)域進行篩選,以確定運動目標(biāo),包括:
[0025]提取所述優(yōu)化圖像序列的前景輪廓圖像序列;
[0026]在所述前景輪廓圖像序列中選取待檢測目標(biāo)的運動區(qū)域;
[0027]計算所述待檢測目標(biāo)的運動區(qū)域的面積;
[0028]判斷所述待檢測目標(biāo)的運動區(qū)域的面積是否大于或等于預(yù)設(shè)運動區(qū)域面積閾值;
[0029]若所述待檢測目標(biāo)的運動區(qū)域的面積大于或等于預(yù)設(shè)運動區(qū)域面積閾值,則確定該待檢測目標(biāo)為檢測到的運動目標(biāo)。
[0030]其中,在確定該待檢測目標(biāo)為檢測到的運動目標(biāo)之后,所述方法還包括:
[0031 ] 對所述檢測到的運動目標(biāo)進行計數(shù);
[0032]根據(jù)預(yù)設(shè)的標(biāo)記方式,對所述檢測到的運動目標(biāo)進行標(biāo)記。
[0033]第二方面,本發(fā)明提供一種運動目標(biāo)跟蹤系統(tǒng),所述系統(tǒng)包括:
[0034]第一確定模塊,用于基于跟蹤運動目標(biāo)的各幀圖像中的第一幀圖像,確定所述運動目標(biāo)的跟蹤窗的質(zhì)心和大小;
[0035]第二確定模塊,用于基于所述第一幀圖像中運動目標(biāo)的像素顏色,確定所述各幀圖像的顏色概率分布圖;
[0036]調(diào)整模塊,用于基于所述各幀圖像中運動目標(biāo)的位置,調(diào)整所述跟蹤窗的大小,得到所述各幀圖像的跟蹤窗的大小;
[0037]判斷模塊,用于判斷所述各幀圖像的跟蹤窗的大小是否小于預(yù)設(shè)的跟蹤窗大小的閾值;
[0038]質(zhì)心確定模塊,用于在所述各幀圖像的跟蹤窗的大小小于預(yù)設(shè)的跟蹤窗大小的閾值,則基于所述各幀圖像的顏色概率分布圖,得到所述各幀圖像的跟蹤窗的質(zhì)心;
[0039]質(zhì)心存儲模塊,用于存儲所述各幀圖像中跟蹤窗的質(zhì)心;
[0040]繪制模塊,用于根據(jù)存儲的各質(zhì)心,在預(yù)設(shè)的背景圖像上繪制所述運動目標(biāo)的運動軌跡。
[0041 ] 其中,所述系統(tǒng)還包括:
[0042]修正模塊,用于在所述判斷模塊判斷所述各幀圖像的跟蹤窗的大小大于或等于預(yù)設(shè)的跟蹤窗大小的閾值之后,根據(jù)預(yù)設(shè)的修正模型,將各幀圖像的跟蹤窗的大小修正至一個運動目標(biāo)跟蹤窗大?。?br>[0043]預(yù)測模塊,用于調(diào)用預(yù)設(shè)的預(yù)測模型,根據(jù)上一幀圖像中運動目標(biāo)的質(zhì)心,預(yù)測當(dāng)前幀圖像中的運動目標(biāo)的質(zhì)心。
[0044]其中,所述系統(tǒng)還包括:
[0045]幀差計算模塊,用于采用幀間差分法對運動目標(biāo)的運動視頻進行處理,得到幀圖像序列;
[0046]二值化模塊,用于對所述幀圖像序列進行二值化處理,得到二值圖像序列;
[0047]平滑模塊,用于采用中值濾波法對所述二值圖像序列進行去噪處理,得到平滑圖像序列;
[0048]優(yōu)化模塊,用于對所述平滑圖像序列進行膨脹處理,得到優(yōu)化圖像序列;
[0049]跟蹤確定模塊,用于根據(jù)所述優(yōu)化圖像序列,確定用于跟蹤運動目標(biāo)的各幀圖像中的第一幀圖像。
[0050]其中,所述系統(tǒng)還包括:
[0051]篩選模塊,用于對所述優(yōu)化圖像序列中運動目標(biāo)的運動區(qū)域進行篩選,以確定運動目標(biāo);
[0052]所述篩選模塊,包括:
[0053]提取單元,用于提取所述優(yōu)化圖像序列的前景輪廓圖像序列;
[0054]選取單元,用于在所述前景輪廓圖像序列中選取待檢測目標(biāo)的運動區(qū)域;
[0055]計算單元,用于計算所述待檢測目標(biāo)的運動區(qū)域的面積;
[0056]判斷單元,用于判斷所述待檢測目標(biāo)的運動區(qū)域的面積是否大于或等于預(yù)設(shè)運動區(qū)域面積閾值;
[0057]確定單元,用于在所述待檢測目標(biāo)的運動區(qū)域的面積大于或等于預(yù)設(shè)運動區(qū)域面積閾值,則確定該待檢測目標(biāo)為檢測到的運動目標(biāo)。其中,所述系統(tǒng)還包括:
[0058]計數(shù)模塊,在所述確定單元確定該待檢測目標(biāo)為檢測到的運動目標(biāo)之后,用于對所述檢測到的運動目標(biāo)進行計數(shù);
[0059]標(biāo)記模塊,用于根據(jù)預(yù)設(shè)的標(biāo)記方式,對所述檢測到的運動目標(biāo)進行標(biāo)記。
[0060]本發(fā)明提供的一種運動目標(biāo)跟蹤方法及系統(tǒng),通過計算各幀圖像中的運動目標(biāo)的質(zhì)心,并將各幀圖像中的運動進行存儲,在預(yù)設(shè)的背景圖像上,根據(jù)各幀圖像中的運動目標(biāo)的質(zhì)心,繪制被跟蹤的運動目標(biāo)的運動軌跡,以使用戶可以隨時觀察被跟蹤的運動目標(biāo)的運動軌跡,解決了傳統(tǒng)的跟蹤算法不能對被跟蹤的運動目標(biāo)進行軌跡繪制,若要再次研究運動目標(biāo)的運動時,需要重新打開視頻,再次進行跟蹤,造成了時間及人力的浪費的問題;在計算各幀圖像中的運動目標(biāo)的過程中,通過設(shè)置跟蹤窗大小的閾值,對各幀圖像中的跟蹤窗的大小踐行判斷,提高了對跟蹤運動目標(biāo)的分辨力,防止出現(xiàn)跟蹤運動目標(biāo)的錯誤處理,提高了跟蹤運動目標(biāo)的準(zhǔn)確性;在跟蹤運動目標(biāo)之前,對基于幀間差分法得到的幀差圖像中的空洞進行優(yōu)化處理,有效的解決了圖像的空洞問題;通過對設(shè)置運動區(qū)域閾值,對待檢測目標(biāo)的運動區(qū)域的大小進行篩選,防止將待檢測目標(biāo)的小規(guī)模運動檢測為運動行為,有效的篩選除了圖像中運動的目標(biāo),提高了檢測的準(zhǔn)確性;同時對篩選出的運動