葛山峰,于蓮芝,謝 振
(上海理工大學(xué) 光電信息與計算機工程學(xué)院,上海 200093)
基于ORB特征的目標(biāo)跟蹤算法
葛山峰,于蓮芝,謝 振
(上海理工大學(xué) 光電信息與計算機工程學(xué)院,上海 200093)
為提高基于特征點目標(biāo)跟蹤的速度,提出一種基于ORB特征的跟蹤算法。通過對目標(biāo)的ORB特征不斷進行實時更新,去除過時的信息,以保證目標(biāo)特征的準(zhǔn)確與穩(wěn)定,提高匹配準(zhǔn)確度。實驗結(jié)果表明,同基于SIFT和SURF特征的跟蹤算法相比,在匹配表現(xiàn)相似的情況下,匹配速度大幅提高,基本滿足了實時性的要求。
目標(biāo)跟蹤;ORB;特征匹配;實時性
目標(biāo)跟蹤算法是計算機視覺應(yīng)用中關(guān)鍵技術(shù),在醫(yī)療診斷、視頻監(jiān)控、軍事視覺制導(dǎo)等領(lǐng)域有著非常重要的實用價值[1]。跟蹤技術(shù)主要分為4大類:基于模型的跟蹤方法,基于主動輪廓的跟蹤方法,基于運動估計的跟蹤方法和基于特征點的跟蹤方法[2]。本文主要研究基于特征的目標(biāo)跟蹤算法,其步驟主要有兩個步驟:特征提取和特征匹配。2004年,David Lowe提出的尺度不變換SIFT算法[3],2006年,Bay在SIFT的基礎(chǔ)上提出基于積分圖像的特征描述方法SURF算法[4],2011年Ethan Rublee等人提出ORB特征算法[5]。通過對比三個算法提出基于ORB特征的目標(biāo)跟蹤算法。首先利用幀間差分法對運動目標(biāo)進行分割,并對分割后的目標(biāo)進行ORB特征變換,最后利用目標(biāo)的特征值進行運動分析。實驗證明,在實時性方面ORB特征有著較大的優(yōu)勢,基本實現(xiàn)了跟蹤系統(tǒng)的實時性。
運動目標(biāo)檢測常用方法:幀間差分法,背景減除法和光流法[6]。幀間差分法能夠快速得從每幀中檢測出運動的目標(biāo),其最大的特點檢測速度快,對整體光照不敏感,缺點是不能提取出對象的完整區(qū)域[7]。背景減除法速度較快,但是對光照和外來無關(guān)事物特別敏感,影響檢測的準(zhǔn)確性[8]。光流法計算復(fù)雜,難以滿足實時性的要求[9]。綜合考慮采用幀間差分法對運動目標(biāo)進行檢測。
幀間差分法思想:檢測出相鄰兩幀圖像中發(fā)生變化的區(qū)域。該方法是用圖像序列中的連續(xù)兩幀圖像進行差分,然后二值化該灰度差分圖像來提取運動信息,其公式如下所示
(1)
2.1 特征提取
ORB的實現(xiàn)是基于oFAST檢測算子和rBRIEF描述算子[5]。oFAST是指有方向的FAST[10]檢測算子,rBRIEF是指能夠識別旋轉(zhuǎn)的BRIEF[11]描述算子,通過這兩個方面的改進,使得ORB算法在匹配性能方面同SIFT和SURF算法相似,但在實時性上優(yōu)于前兩種算法。
FAST角點定義為:若某像素點與其周圍領(lǐng)域內(nèi)足夠多的像素點處于不同的區(qū)域,則該像素點可能為角點。
圖1 特征點檢測示意圖
如圖1所示,任取一像素點p,以其為中心形成一個半徑為3的圓形區(qū)域(也可以取其他值),圓上總共有16個像素點,如果存在n個像素點的灰度值都>Ip+t或者 在進行特征點的篩選時無需每次將圓周上所有的像素點與中心像素點相比較,通過以下算法能夠快速剔除大量非特征點。具體算法如下: (1)首先計算p像素1和9的灰度差值,若ΔI1和ΔI9的絕對值都小于閾值t,則p非特征點,若大于則繼續(xù)執(zhí)行; (2)再計算p與像素5和13的灰度差值,若ΔI1,ΔI9,ΔI5,ΔI13,其中至少3項都>t或<-t,則p為候選點,算法繼續(xù)執(zhí)行,否則p不是特征點; (3)按照步驟(1)和步驟(2)的判準(zhǔn)繼續(xù)執(zhí)行,直到完成圓周上的16個像素點[12]。 FAST本身不產(chǎn)生多尺度特征,所以利用金字塔圖像,在每一級上都產(chǎn)生FAST特征,以滿足多尺度的特性。為了解決旋轉(zhuǎn)不變性,通過灰度質(zhì)心來解決這個問題。灰度質(zhì)心法假設(shè)角點的灰度與質(zhì)心之間存在一個偏移,這個向量可以用于表示一個方向,對于任意一個特征點p來說,定義p的鄰域像素的矩為 (2) 式中,I表示x,y坐標(biāo)上的灰度值,可知質(zhì)心c為 (3) θ=arctan(m01,m10) (4) ORB描述子建立在BRIEF特征描述子的基礎(chǔ)之上,相比于BRIEF具備了旋轉(zhuǎn)不變性,是一種二進制碼形式的描述子。提取描述子過程為:在圖像某點的鄰域內(nèi)隨機選取n個點對,對于每一個點對形成一個二值τ測試,定義如下 (5) 式中,P(x)指的是x點的灰度值。BRIEF描述子定義為N個τ測試組成的一個向量,如式(6),其中N一般取256,構(gòu)成256 bit的二值特征描述子 (6) ORB根據(jù)FAST特征點的主方向提取BRIEF描述子,稱為steered BRIEF。但加入主方向后,steered BRIEF的方差變小了,導(dǎo)致其判別性能下降。 為了解決這個問題,ORB采用貪婪算法[13]選出具有高反差和低相關(guān)性的steered BRIEF。 2.2 特征匹配 因為BRIEF描述子是一個256 bit的二值特征描述子,所以應(yīng)用漢明距離來對其進行匹配是個不錯的方式,漢明距離表示兩個相同長度字對應(yīng)位不同的個數(shù)[14]。用Ds1,s2來表示兩個ORB特征的相似程度,公式如下 Ds1,s2=s1⊕s2 (7) 式中,Ds1,s2越小,表示相似程度越高,反之相似程度越低。通過漢明距離實現(xiàn)目標(biāo)與前景的匹配。 2.3 目標(biāo)定位 提取了目標(biāo)特征點之后需要在前景上對目標(biāo)進行定位。定位方式很簡單,從選出的特征點中分別找出x軸,y軸上最小最大的點,這樣就可以對目標(biāo)進行定位[15],公式如下 (8) 2.4 特征更新 隨著場景的變換的,目標(biāo)也在不斷的變化,對其的特征點提取也需要不停的更新,以提高特征匹配的適應(yīng)能力。通過一個簡單的更新算法來實現(xiàn):第一幀的目標(biāo)特征點總是存儲在特征點集中,然后由當(dāng)前幀的目標(biāo)特征點集組成一個新的特征集,以此來匹配目標(biāo)。該算法描述為如下 Vnew=Vfirst+Vcur (9) 這里Vnew指最新的目標(biāo)特征集;Vfirst指的是第一幀目標(biāo)特征;Vcur指當(dāng)前目標(biāo)特征集;“+”指的是兩個集合的融合。 根據(jù)之前講訴的內(nèi)容,本文設(shè)計了目標(biāo)特征跟蹤的流程圖,包括目標(biāo)提取,特征提取,特征匹配,目標(biāo)定位,特征更新部分[15],如圖2所示。 圖2 特征匹配流程圖 本文實驗的計算機系統(tǒng)為Windows 10,處理器為Intel(R)Core(TM)i5CPU M460,主頻為2.53 GHz,內(nèi)存為6 GB,實驗是基于Visual Studio 2013的開發(fā)平臺,使用C++編程語言,并結(jié)合計算機視覺庫OpenCV2.4.11完成。視頻采集是由小米手機拍攝,為了減小數(shù)據(jù)的處理,對視頻進行了壓縮,壓縮后視頻分辨率為856×480。實驗過程中分別對目標(biāo)檢測,特征點提取,目標(biāo)跟蹤進行了驗證。 3.1 目標(biāo)檢測 通過幀間差分法對運動目標(biāo)進行檢測,效果如圖3~圖6所示。 圖3 第34幀檢測結(jié)果 圖4 第52幀檢測結(jié)果 圖5 第62幀檢測結(jié)果 圖6 第74幀檢測結(jié)果 結(jié)果檢測出了運動目標(biāo),但幀間差分法的缺點也體現(xiàn)出來,目標(biāo)“空洞”現(xiàn)象明顯,針對這一情況可以采用圖像處理中形態(tài)學(xué)的膨脹來修飾完善,具體不再贅述。 3.2 特征點提取匹配 基于ORB特征匹配的結(jié)果如圖7所示?;旧蠈⒛繕?biāo)的特征匹配出來,但還有不少誤匹配,有待進一步的改善。 圖7 特征提取匹配 同時也對3種不同的特征點提取算法的提取速度進行了實驗,結(jié)果如表1所示。 表1 特征提取速度對比 由表1可以看出在特征提取速度上ORB算法有明顯的優(yōu)勢,這主要得益于FAST檢測算子,所以采用ORB算法來進行特征提取是一個不錯的想法。 3.3 目標(biāo)定位 目標(biāo)定位的效果如圖8所示。 圖8 目標(biāo)跟蹤結(jié)果 本文研究基于ORB特征的跟蹤算法,采用高效的ORB算法基本可以實現(xiàn)實時跟蹤。但還有很多不足的地方需要改進,解決幀間差分法的“空洞”問題,特征匹配方面要去除誤匹配,提高匹配的正確率,讓跟蹤更加精準(zhǔn)。 [1] Yilmaz A,Javed O,Shah M.Object tracking:a survey[J]. ACM Computing Surveys,2006,38(4):229-240. [2] 謝成明.基于ORB特征的目標(biāo)檢測與跟蹤的研究[D]. 合肥:合肥工業(yè)大學(xué),2013. [3] David G Lowe.Distinctive image features from scale-invariant keypoints[J].International Journal of Computer Vision,2004,60(2):91-110. [4] Bay B H,Ess A,Tuytelaars T,et al.Speeded-up robust features(SURF)[J].European Journal on Computer Vision,2010,110(3):346-359. [5] Rublee E, Rabaud V, Konolige K, et al. ORB: An efficient alternative to SIFT or SURF[C].MA,USA:International Conference on Computer Vision,IEEE Computer Society, 2011. [6] 付朝霞.基于視頻流的人體目標(biāo)檢測與行為識別研究[D].太原:中北大學(xué),2013. [7] 朱明旱,羅大庸.基于幀間差分背景模型的運動物體檢測與跟蹤[J].計算機測量與控制,2006,14(8):1004-1006. [8] 紀青華,禹素萍.基于Surendra背景減除法和四幀差分法的目標(biāo)檢測算法[J].計算機應(yīng)用與軟件,2014(12):242-244. [9] 周建鋒.基于光流的運動目標(biāo)檢測方法研究[D].哈爾濱:哈爾濱工業(yè)大學(xué),2009. [10] Rosten E,Drummond T.Machine learning for high-speed corner detection[C].Italy:Conference on Computer Vision,2006. [11] Calonder M,Lepetit V,Strecha C. BRIEF:binary robust independent elementary features [C].Span:Conference on Computer Vision,2010. [12] 丁尤蓉,王敬東,邱玉嬌.基于自適應(yīng)閾值的FAST特征點提取算法[J].指揮控制與仿真,2013,35(2):47-52. [13] 趙永嘉,戴樹嶺.基于圖像骨架和貪婪算法的無人機航路規(guī)劃[J].北京航空航天大學(xué)學(xué)報,2010,36(4):474-477. [14] Kolpakov R,Kucherov G.Finding approximate repetitions under hamming distance[J].Theoretical Computer Science,2001,303(1):170-181. [15] Meng F,You F.A tracking algorithm based on ORB[C].Shenyang:International Conference on Mechatronic,Elgineering and Computer,2013. A Target Tracking Algorithm Based on ORB GE Shanfeng, YU Lianzhi, XIE Zhen (School of Optical-Electrical and Computer Engineering, University of Shanghai for Science and Technology, Shanghai 200093, China) A tracking algorithm based on the ORB features is proposed to improve the speed of tracking based on feature keypoints. The obsolete information is removed through real-time update of the ORB features of the object to ensure the accuracy and stability of the object feature. The experimental results show a greatly improved matching speed over those by the tracking algorithm based on the SIFT and SURF features in the case of similar performance, meeting the real-time requirements. object tracking; ORB; feature matching; real-time 2016- 04- 05 葛山峰(1992-),男,碩士研究生。研究方向:圖像處理。于蓮芝(1966-),女,副教授。研究方向:檢測技術(shù)與自動化裝置。 10.16180/j.cnki.issn1007-7820.2017.02.026 TN953;TP391.41 A 1007-7820(2017)02-098-043 實驗結(jié)果及分析
4 結(jié)束語