時培弘,董淑福,單 勇
(空軍工程大學 信息與導航學院,陜西 西安710077)
SIFT[1]算法和SURF算法作為局部特征提取算法被廣泛應用,為模式識別乃至深度學習[2]奠定了基礎。近年來各國學者提出許多局部特征描述子,如局部二值描述子ORB[3]、BRIEF[4]、FREAK[5]、Brisk[6]等,但都不同程度地對尺度變化和角度旋轉(zhuǎn)敏感,魯棒性不強。SIFT算法是目前為止最為穩(wěn)定的特征點提取算法,從提出至今不斷被優(yōu)化,其中SURF算法是對SIFT算法的優(yōu)化。SURF算法引入了積分圖像及盒子濾波器等方法[7],避免采用SIFT中的降采樣[8]構(gòu)造圖像金子塔,而是令圖像尺寸不變,濾波器尺寸相應改變[9]來濾波原圖像(這一過程可以并行處理[8]),上述一系列操作簡化了Hessian矩陣行列式和哈爾小波響應的計算[9],將算法的運算速度提至SIFT算法的3~5倍[10],在保證運算速度的同時兼顧了穩(wěn)定性[11]。與SIFT算法類似[12],為保證旋轉(zhuǎn)不變性,SURF特征描述子依賴于關(guān)鍵點的主方向,在計算出主方向后,還需以主方向為基準計算出鄰域內(nèi)哈爾小波響應。其中計算主方向和計算哈爾小波中包含大量掃描計算[13]與浮點運算。
本文利用各向同性的向量重新定義SURF特征描述子,在保證旋轉(zhuǎn)不變性的基礎上節(jié)省了確定主方向和旋轉(zhuǎn)哈爾小波響應的運算時間,并且新定義的描述子在計算過程中利用了積分圖像,加快了計算速度。
SURF算法主要分為3部分[14]:(1)特征點提取。(2)特征描述子的生成。(3)利用描述子匹配特征點。以下主要介紹描述子生成,也是本文所改進的部分。
這樣最終形成4×4×4=64維描述子。
上述操作中,為得到哈爾小波響應,需要將旋轉(zhuǎn)前的點進行二維旋轉(zhuǎn)[8],令旋轉(zhuǎn)前的坐標為(l,k),旋轉(zhuǎn)后的坐標為(x,y),其滿足
得到(x,y)后,求取水平與垂直方向的dx和dy,高斯加權(quán)后按式(2)得到dx'和dy'
本文利用各向同性數(shù)學量重新構(gòu)造特征描述子,使描述子具有旋轉(zhuǎn)不變性,使算法免于計算特征點主方向所用到的扇形掃描和哈爾小波旋轉(zhuǎn)所產(chǎn)生的浮點運算。同時新的描述子利用了積分圖像,加快了計算速度。
與原算法類似,以特征點為中心,構(gòu)造16s×16s方形區(qū)域,以同心圓劃分方形區(qū)域,如圖1所示,形成8個子區(qū)域,每個子區(qū)域計算區(qū)域內(nèi)點的像素值與特征點像素值之差dr和,以特征點為中心,3.5σ高斯加權(quán)后,形成子區(qū)域的前兩維
然后分別依據(jù)特征點尺度計算各個子區(qū)域內(nèi)的每一個點一階拉普拉斯算子之和與LoG算子響應之和,2.5σ高斯加權(quán)后形成子區(qū)4維向量
這樣最后形成8×4=32維描述子。由于徑向差分、Laplace算子和LoG算子都具有各向同性,最終構(gòu)造的描述子滿足旋轉(zhuǎn)不變性。
圖1 本文算法區(qū)域劃分
圖2 3×3拉普拉斯模
圖3 5×5 LoG算子模板
上述運算中,求取一階拉普拉斯算子和LoG算子響應時利用了積分圖像。為利用積分圖像,算子可作分解處理。
其中,分解后的純量陣可直接利用積分圖像計算。最終形成的描述子滿足旋轉(zhuǎn)不變性。
實驗主要測試當圖像發(fā)生尺度、旋轉(zhuǎn)、模糊時修正后與修正前算法匹配的正確率和匹配速度。如圖4~圖6,每組第一張為原圖,后4張為在原圖基礎上尺度、旋轉(zhuǎn)、模糊變化。實驗所用素材為300×400的彩色圖像,測試軟件為Matlab 2013b,硬件平臺CPU為i5-4200U 1.60 GHz的個人電腦。
圖4 尺度變化的圖像
圖5 旋轉(zhuǎn)變化的圖像
圖6 模糊變化的圖像
表1 本文算法與原SURF算法性能比較
對于尺度變化而言,隨著尺度變大,原SURF算法和本文算法正確匹配率均降低,并且識別率總小于原SURF算法。原因是尺度變大時,本文算法中描述子所用到的一階拉普拉斯算子和LoG算子尺寸隨尺度增長劇烈,導致過多信息被計算到描述子中,令誤差變大,改善方法是選取合適尺寸的各向同性數(shù)學。
對于旋轉(zhuǎn)變化來說,本文算法保持了良好的正確率,如圖7所示。由于本文算法匹配所用到的描述子具有各向同性,對圖像的旋轉(zhuǎn)不敏感,所以對于各種角度算法均能保持較高的匹配率。
圖7 旋轉(zhuǎn)時本文算法匹配效果示例
對于模糊變化,隨著模糊程度增加,本文算法與SURF算法正確匹配率都隨之下降。由于模糊程度增加,本文描述子由灰度信息構(gòu)成,不能體現(xiàn)關(guān)鍵點的方向性,且維度是SURF算法的1/2,信息過于單薄,不能較好地反應模糊后圖像與原圖像的匹配關(guān)系,造成匹配率低于SURF算法,如圖8所示。
從運行速度上來說,本文算法的表現(xiàn)優(yōu)于SURF算法。原因如下:(1)各向同性描述子的引入省去了計算主方向所用到的扇形滑動窗口掃描和哈爾小波旋轉(zhuǎn)所產(chǎn)生的浮點運算。(2)描述子中一階拉普拉斯算子和LoG算子的計算利用了積分圖像。(3)描述子的維度小于SURF描述子。
圖8 模糊時本文算法匹配效果示例
本文算法與SURF算法最大區(qū)別在于關(guān)鍵點周圍區(qū)域的劃分方式和描述子所用到的信息。SURF算法將區(qū)域劃分為4×4=16個子塊,每一個子塊在尺寸上大小一致,位置緊湊,將16個子塊的每一子塊中心點視作區(qū)域的“骨架”,以主方向為基準分別形成豐富的64維信息,由于以方向為區(qū)別,SURF描述子具有較高的辨識度。本文算法是以同心圓劃分區(qū)域,每個圓環(huán)域作為整個區(qū)域的“骨架”,并且隨著圓環(huán)距離特征點越來越遠,圓環(huán)增大,點數(shù)增多,與其他子塊不夠緊湊,雖用高斯加權(quán),但子塊所形成的向量獨特性減弱。但也正是因為劃分方法不同,使本文算法在誤差范圍內(nèi)得以加快計算速度。使新算法所消耗的時間大幅減少。重新構(gòu)造的特征描述子利用了積分圖像,因而可以進一步加快計算速度。本文算法需改進的地方較多,其中最重要的是在精細劃分區(qū)域的基礎上引入更多更優(yōu)秀的各向同性數(shù)學量,使描述子信息更豐富,辨識度更高。
[1]Lowe David-G.Distinctive image feature transfrom scaleinvariant keypoints[J].International Journal of Computer Vision,2004,60(2):91-110.
[2] 杜騫.深度學習在圖像語義分類中的應用[D].武漢:華中師范大學,2014.
[3] 章杰.基于ORB特征和粒子濾波的目標跟蹤算法研究[D].吉林:吉林大學,2014.
[4]Calonder M.BRIEF:binary robustindpendnt elementary features[C].ToYonto:ECCV,2010:778-792.
[7]Bay H,Ess A,Tuytelaars T.SURF:speeded up robust features[J].Computer Vision&Image Understanding,2008,110(3):346-359.
[8] 李云霞,曾毅,鐘瑞艷,等.基于SIFT特征匹配的圖像拼接算法[J].計算機技術(shù)與發(fā)展,2009,19(1):43-45.
[9] 王永明,王貴錦.圖像局部不變特征與描述[M].北京:國防工業(yè)出版社,2010.
[10]吳銳航.基于SIFT特征的圖像檢索技術(shù)[D].廈門:廈門大學,2007.
[11]劉少鵬,郎躍東,丁祝順.改進SURF算法及其在目標跟蹤中的應用[J].傳感器與微系統(tǒng),2012,31(12):148-152.
[12]崔振興,曾威,楊明強,等.一種改進的SURF快速匹配算法[J].江蘇師范大學學報,2014,32(3):41-46.
[13]徐曉鵬.基于改進SIFT算法的目標識別研究[D].南京:南京理工大學,2011.
[14]石雅筍.改進的SURF圖像配準算法研究[D].成都:電子科技大學,2008.
[15]林怡,應旻,楊業(yè),等.改進的SURF算法在彩色車載影像匹配中的應用[J].同濟大學學報:自然科學版,2014,42(4):624-629.