彭 端
(西華大學(xué)計(jì)算機(jī)與軟件工程學(xué)院,成都 610039)
基于點(diǎn)對(duì)矢量場(chǎng)的動(dòng)態(tài)背景下運(yùn)動(dòng)目標(biāo)跟蹤算法研究
彭 端
(西華大學(xué)計(jì)算機(jī)與軟件工程學(xué)院,成都 610039)
動(dòng)態(tài)背景下的運(yùn)動(dòng)目標(biāo)跟蹤算法一直是計(jì)算機(jī)視覺(jué)領(lǐng)域的研究熱點(diǎn)。針對(duì)動(dòng)態(tài)背景下的運(yùn)動(dòng)目標(biāo)跟蹤,提出一種基于點(diǎn)對(duì)矢量場(chǎng)的運(yùn)動(dòng)目標(biāo)跟蹤算法。首先,提取出運(yùn)動(dòng)目標(biāo)身上的點(diǎn)對(duì)特征點(diǎn)。然后根據(jù)灰度、梯度方向差和點(diǎn)對(duì)距離的一致性對(duì)運(yùn)動(dòng)目標(biāo)的特征點(diǎn)進(jìn)行匹配,并根據(jù)匹配點(diǎn)對(duì)構(gòu)建點(diǎn)對(duì)矢量場(chǎng)。最后,根據(jù)點(diǎn)對(duì)矢量場(chǎng)實(shí)現(xiàn)對(duì)運(yùn)動(dòng)目標(biāo)的跟蹤。實(shí)驗(yàn)結(jié)果表明,該算法對(duì)動(dòng)態(tài)場(chǎng)景下的運(yùn)動(dòng)目標(biāo)跟蹤具有一定的有效性。
目標(biāo)跟蹤;點(diǎn)對(duì);矢量場(chǎng);動(dòng)態(tài)背景
運(yùn)動(dòng)目標(biāo)跟蹤是計(jì)算機(jī)視覺(jué)領(lǐng)域的核心課題之一,被廣泛的應(yīng)用于安全監(jiān)控、人機(jī)交互、智能交通、機(jī)器人視覺(jué)導(dǎo)航、醫(yī)療診斷、產(chǎn)品檢測(cè)等領(lǐng)域[1]。運(yùn)動(dòng)目標(biāo)跟蹤,是指給定一段視頻序列,在該視頻序列的每幀圖像中實(shí)時(shí)地找到感興趣的運(yùn)動(dòng)目標(biāo),并評(píng)估其運(yùn)動(dòng)軌跡。傳統(tǒng)的目標(biāo)跟蹤算法主要分為以下幾類:基于區(qū)域的跟蹤、基于活動(dòng)輪廓的跟蹤、基于模型的跟蹤和基于特征的跟蹤[2]。其中,基于特征的跟蹤是以目標(biāo)的某些不變特征來(lái)表示目標(biāo),具有較強(qiáng)的穩(wěn)定性,因此,在很多場(chǎng)景下都具有較好的跟蹤特性。在基于特征的跟蹤算法中,光流特征包含了運(yùn)動(dòng)目標(biāo)的運(yùn)動(dòng)信息,因此在目標(biāo)跟蹤中有著廣泛的應(yīng)用,例如,陳婷婷[3]等人提出的一種基于Lucas-Kanade金字塔光流算法的運(yùn)動(dòng)人體特征點(diǎn)跟蹤方法,該方法對(duì)較大尺度運(yùn)動(dòng)的特征點(diǎn)跟蹤有很好的效果;張忠義[4]提出的一種結(jié)合LK光流和壓縮感知的跟蹤方法,該方法在解決目標(biāo)在跟蹤過(guò)程中出現(xiàn)的外觀變化、環(huán)境中的遮擋以及光照變化等問(wèn)題時(shí)仍有較好的性能。但是,由于光流法是對(duì)整個(gè)圖像中的像素點(diǎn)計(jì)算其光流,計(jì)算復(fù)雜、耗時(shí)大,不能滿足實(shí)時(shí)性的要求。角點(diǎn),是一類重要的圖像點(diǎn)特征,其中包含了圖像的重要特征并具有旋轉(zhuǎn)不變性和不隨光照條件改變而改變的優(yōu)點(diǎn)。在一些應(yīng)用中,使用角點(diǎn)特征進(jìn)行處理,可以減少參與計(jì)算的數(shù)據(jù)量,提高信息含量,同時(shí)又不損失圖像的重要灰度信息。因此,角點(diǎn)在運(yùn)動(dòng)目標(biāo)跟蹤中也有著廣泛的應(yīng)用,例如,謝紅[5]等人提出了一種結(jié)合Harris角點(diǎn)和LK光流的運(yùn)動(dòng)目標(biāo)檢測(cè)算法,具有較好的實(shí)時(shí)性。但是,由于Harris角點(diǎn)只是運(yùn)動(dòng)目標(biāo)的典型位置上的特征點(diǎn),因此存在檢測(cè)目標(biāo)區(qū)域不完整的問(wèn)題;吳垠[6]等人提出了一種基于尺度不變特征(SIFT)的跟蹤方法,該方法在旋轉(zhuǎn)、光照、縮放、小視角變化等方面有較好的魯棒性。但是,在動(dòng)態(tài)場(chǎng)景下運(yùn)動(dòng)目標(biāo)身上的SIFT特征點(diǎn)匹配很容易發(fā)生錯(cuò)誤匹配的情況,影響目標(biāo)跟蹤的準(zhǔn)確性。
在借鑒光流特征和角點(diǎn)特征的基礎(chǔ)上,本文提出了一種基于點(diǎn)對(duì)矢量場(chǎng)的運(yùn)動(dòng)目標(biāo)跟蹤算法。算法提取運(yùn)動(dòng)目標(biāo)的點(diǎn)對(duì)特征點(diǎn),根據(jù)灰度、梯度方向差和點(diǎn)對(duì)距離的一致性對(duì)運(yùn)動(dòng)目標(biāo)的特征點(diǎn)進(jìn)行匹配并構(gòu)建匹配點(diǎn)對(duì)的矢量場(chǎng),最后,根據(jù)點(diǎn)對(duì)矢量場(chǎng)實(shí)現(xiàn)對(duì)運(yùn)動(dòng)目標(biāo)的跟蹤。
角點(diǎn)是一類重要的圖像點(diǎn)特征,但目前關(guān)于角點(diǎn)
還沒(méi)有明確的數(shù)學(xué)定義,人們普遍認(rèn)為角點(diǎn)是二維圖像亮度變換劇烈的點(diǎn)或圖像邊緣曲線上曲率的極大值點(diǎn),這些點(diǎn)保留了圖像的重要特征。根據(jù)角點(diǎn)這一特性,本文構(gòu)造了一種新的特征點(diǎn),即點(diǎn)對(duì)。
1.1 基于sobel的梯度幅值和方向
Sobel算子(Sobel Operator)是一個(gè)離散性差分算子,通過(guò)計(jì)算圖像亮度函數(shù)的灰度之近似值來(lái)進(jìn)行邊緣檢測(cè)。
首先利用Sobel算子求圖像梯度幅值,然后設(shè)置閾值T獲取強(qiáng)梯度帶,減少后續(xù)的運(yùn)算開(kāi)銷(xiāo),一般情況下T為梯度幅值最大值的1/3。Sobel卷積因子包含兩組3×3的矩陣,分為x方向和y方向卷積因子,如圖1所示:
圖1 Sobel算子
在實(shí)際應(yīng)用中,將兩個(gè)方向的Sobel算子分別與原始圖像(設(shè)為A)卷積,得到x和y方向的亮度差分近似值[7],計(jì)算公式如下:
Gx代表x方向檢測(cè)的圖像灰度值,Gy代表y方向檢測(cè)的圖像灰度值,θ代表梯度方向,G為檢測(cè)圖像的Sobel梯度幅值。
1.2 獲取點(diǎn)對(duì)
遍歷梯度幅值圖像G,假設(shè)當(dāng)前點(diǎn)為I(x,y),若在I的鄰域范圍內(nèi)(本文取的為5×5到11×11的環(huán)狀鄰域)存在以I為對(duì)稱中心的兩點(diǎn)I1(x1,y1)和I2(x2,y2),并且I1、I2都是位于強(qiáng)梯度帶上的點(diǎn)。然后判斷I1和I2的內(nèi)側(cè)灰度值是否與I的灰度值一致即灰度差小于閾值(此處閾值為[-5,5]),并且I1、I2的梯度方向差滿足閾值條件(本文的梯度方向差閾值范圍是40°到140°),則I1、I2構(gòu)成I的點(diǎn)對(duì),如圖2所示:
圖2 點(diǎn)對(duì)示意圖
獲取了I的點(diǎn)對(duì)I1、I2后,利用I1與I2的梯度方向差(argdiff)、I1與I2的連線距離(length)、I當(dāng)前位置的灰度值(gray)構(gòu)成I的點(diǎn)對(duì)特征,記為Scorners1(argdiff,length,gray),然后繼續(xù)在I的鄰域內(nèi)搜尋符合條件的其他點(diǎn)對(duì),最終構(gòu)成I的點(diǎn)對(duì)特征向量,記為Cfeaturei(Scorners1,Scorners2,…,Scornersj)(j=1,2,…,Ni,Ni為I的點(diǎn)對(duì)數(shù))。
圖3 第1幀圖像的點(diǎn)對(duì)特征點(diǎn)
2.1 點(diǎn)對(duì)特征點(diǎn)的匹配
相鄰兩幀之間,目標(biāo)的運(yùn)動(dòng)是具有連續(xù)性的,在獲取了目標(biāo)區(qū)域的點(diǎn)對(duì)特征點(diǎn)后,通過(guò)遍歷點(diǎn)對(duì)特征點(diǎn),并在下一幀的鄰域內(nèi)搜索尋找滿足灰度、梯度方向差和點(diǎn)對(duì)距離的一致性的匹配點(diǎn),從而實(shí)現(xiàn)點(diǎn)對(duì)特征點(diǎn)的匹配,具體算法實(shí)現(xiàn)如下:
(1)遍歷目標(biāo)區(qū)域點(diǎn)對(duì)特征點(diǎn),若當(dāng)前點(diǎn)對(duì)特征點(diǎn)為Inow(xnow,ynow)。
(2)遍歷Inow的點(diǎn)對(duì)特征向量CfeatureInow。
(3)以Inow為中心確定其在下一幀的搜索范圍(本文的搜索鄰域大小為15×15)。
(4)若在搜索范圍內(nèi)找到點(diǎn)對(duì)特征點(diǎn)Inext(xnext,ynext),遍歷其點(diǎn)對(duì)特征向量Cfeatureinext,比較Inow當(dāng)前點(diǎn)對(duì)特征
與Inext的當(dāng)前點(diǎn)對(duì)特征是否滿足灰度、梯度方向差和點(diǎn)對(duì)距離的一致性的,若滿足,則記錄下Inext的坐標(biāo)為Inow的當(dāng)前點(diǎn)對(duì)特征的匹配點(diǎn),并且統(tǒng)計(jì)該坐標(biāo)的匹配次數(shù)。
(5)遍歷完Inext的點(diǎn)對(duì)特征向量后,重復(fù)步驟(4)尋找其他的點(diǎn)對(duì)特征點(diǎn),直到鄰域搜尋結(jié)束。
(6)繼續(xù)遍歷Inow剩余的點(diǎn)對(duì)特征,重復(fù)步驟(3)(4)(5),直到Inow的點(diǎn)對(duì)特征向量遍歷結(jié)束。
(7)Inow的點(diǎn)對(duì)特征向量遍歷結(jié)束后,繼續(xù)遍歷剩余的目標(biāo)區(qū)域點(diǎn)對(duì)特征點(diǎn),重復(fù)步驟(2)-(6),直到點(diǎn)對(duì)特征點(diǎn)遍歷結(jié)束。
至此,實(shí)現(xiàn)了目標(biāo)區(qū)域的點(diǎn)對(duì)特征點(diǎn)的匹配,最終的匹配結(jié)果包含了特征點(diǎn)的每個(gè)特征分量的一系列匹配點(diǎn),以及每個(gè)匹配點(diǎn)的匹配次數(shù)。
2.2 構(gòu)建點(diǎn)對(duì)矢量場(chǎng)
在假設(shè)當(dāng)前幀中有一點(diǎn)p1(x1,y1),它在下一幀的匹配點(diǎn)為p2(x2,y2),則p1的運(yùn)動(dòng)矢量定義為:
其中dx為p1在x方向的運(yùn)動(dòng)矢量,dy為p1在y方向上的運(yùn)動(dòng)矢量,dx和dy構(gòu)成了p1的運(yùn)動(dòng)矢量MV(dx,dy)。
由前面的點(diǎn)對(duì)特征點(diǎn)匹配,得到了特征點(diǎn)的每個(gè)特征分量的一系列匹配點(diǎn),以及每個(gè)匹配點(diǎn)的匹配次數(shù),則可以根據(jù)匹配點(diǎn)對(duì)計(jì)算出特征點(diǎn)的運(yùn)動(dòng)矢量。首先,計(jì)算特征點(diǎn)的每個(gè)特征分量的運(yùn)動(dòng)矢量,具體算法如下:
(1)若當(dāng)前特征點(diǎn)的坐標(biāo)為pnow(xnow,ynow),計(jì)算出pnow與當(dāng)前特征分量的匹配點(diǎn)的運(yùn)動(dòng)矢量,根據(jù)式(5)和式(6)。
(2)根據(jù)pnow與當(dāng)前特征分量的匹配點(diǎn)的運(yùn)動(dòng)矢量,以各匹配點(diǎn)的匹配次數(shù)為權(quán)重,算出各匹配點(diǎn)運(yùn)動(dòng)矢量的平均值作為當(dāng)前特征分量的運(yùn)動(dòng)矢量,各匹配點(diǎn)的匹配次數(shù)之和作為當(dāng)前特征分量的匹配次數(shù)。
(3)特征點(diǎn)在經(jīng)過(guò)步驟(1)(2)的處理后,得到每個(gè)特征點(diǎn)的各特征分量的運(yùn)動(dòng)矢量以及匹配次數(shù),然后,以各特征分量的匹配次數(shù)為權(quán)重,算出各特征分量的運(yùn)動(dòng)矢量的平均值作為當(dāng)前特征點(diǎn)的運(yùn)動(dòng)矢量。
(4)最終得到全部特征點(diǎn)的運(yùn)動(dòng)矢量。
得到特征點(diǎn)的運(yùn)動(dòng)矢量后,所以特征點(diǎn)的運(yùn)動(dòng)矢量構(gòu)成了矢量場(chǎng),如圖4所示。根據(jù)目標(biāo)區(qū)域特征點(diǎn)的矢量場(chǎng)就可以確定目標(biāo)在下一幀中的位置,從而實(shí)現(xiàn)對(duì)目標(biāo)的跟蹤。
圖4 第1幀圖像的矢量場(chǎng)
本文使用Visual C++編寫(xiě)程序,測(cè)試環(huán)境為3.20GHz CPU計(jì)算機(jī),Windows7操作系統(tǒng),Visual Studio2012編譯環(huán)境。為驗(yàn)證本文算法的有效性,本文以SegTrackv2數(shù)據(jù)庫(kù)下的soldier數(shù)據(jù)進(jìn)行實(shí)驗(yàn),視頻圖像大小為528×224,并與LK光流法做了對(duì)比,實(shí)驗(yàn)結(jié)果如圖5-圖7所示。
實(shí)驗(yàn)表明,本文算法在解決動(dòng)態(tài)背景下的運(yùn)動(dòng)目標(biāo)跟蹤方面具有一定的有效性。
本文給出了一種基于點(diǎn)對(duì)矢量場(chǎng)的運(yùn)動(dòng)目標(biāo)跟蹤算法并利用Visual C++語(yǔ)言編程實(shí)現(xiàn)了該算法在真實(shí)場(chǎng)景下的跟蹤效果,對(duì)于解決動(dòng)態(tài)背景下的運(yùn)動(dòng)目標(biāo)跟蹤具有一定的實(shí)際意義。
從左到右依次為第4幀、第11幀、第23幀、第35幀圖5部分視頻原始圖像序列
圖6 LK光流跟蹤結(jié)果
圖7 本文算法跟蹤結(jié)果
[1]賈艷麗.基于視頻圖像序列的運(yùn)動(dòng)目標(biāo)檢測(cè)與跟蹤[D].哈爾濱:哈爾濱工程大學(xué),2012:1-3.
[2]凌超,吳薇.視頻圖像中運(yùn)動(dòng)目標(biāo)跟蹤算法研究綜述[J].Science&Technology Information,2012(16):6-7.
[3]陳婷婷,阮秋琦.較大尺度運(yùn)動(dòng)下的人體特征點(diǎn)跟蹤算法研究[J].Journal of Signal Processing,2014,30(7):797-803.
[4]張忠義.基于改進(jìn)LK光流的目標(biāo)跟蹤算法研究[J].Information Technology,2015(10):127-130.
[5]謝紅,原博,解武.LK光流法和三幀差分法的運(yùn)動(dòng)目標(biāo)檢測(cè)算法[J].Applied Science and Technology,2016,43(3):23-33.
[6]吳垠,李良福,肖樟樹(shù),劉侍剛.基于尺度不變特征的光流法目標(biāo)跟蹤技術(shù)研究[J].Computer Engineering and Applications,2013,49(15):157-161.
[7]Rafael C.Gonzalez.數(shù)字圖像處理(第三版)[M].北京:電子工業(yè)出版社,2011:101-103.
The Moving Target Tracking Algorithm in Dynamic Background Based on the Vector Field of Point Pair
PENG Duan
(School of Computer and Software Engineering,Xihua University,Chengdu 610039)
Moving object tracking algorithm based on dynamic background has been a hot research topic in the field of computer vision.For moving object tracking in dynamic background,presents a new algorithm of moving object tracking based on the vector field of point pair.Firstly, extracts the point pair of the moving objects.Then,matches the feature points of moving objects according to the consistency of gray scale,gradient direction difference and distance of the point pair.And the vector field is constructed according to the matching points.Finally,tracking of moving objects based on the vector field of point pair.Experimental results show that the proposed algorithm is effective for the moving target tracking in dynamic scenes.
Target Tracking;Point Pair;Vector Field;Dynamic Background
1007-1423(2016)30-0011-04
10.3969/j.issn.1007-1423.2016.30.003
彭端(1990-),男,四川瀘州人,碩士研究生,研究方向?yàn)閿?shù)字圖像與模式識(shí)別
2016-08-18
2016-10-16