黃 鶯
(馬鞍山師范高等??茖W(xué)校)
基于ORB和SIFT的特征提取算法*
黃 鶯
(馬鞍山師范高等??茖W(xué)校)
結(jié)合SIFT算法提取的特征點具備尺度不變性以及ORB算子在特征點提取時具有較好的實時性,提出了基于ORB和SIFT的特征提取算法.該算法特征點提取主要分為3步:(1)借鑒SIFT算法的思想,建立尺度空間并求出極值點;(2)為解決ORB算法不具備尺度不變性的缺點,去除主曲率大于8和對比度較低的極值點;(3)求出特征點質(zhì)心方向后求取ORB算子.采用兩幅企業(yè)的LOGO進行仿真實驗.仿真實驗結(jié)果表明,提出的基于ORB和SIFT的特征提取算法相比SIFT算法和ORB算法具有較低的特征點提取誤差,相比SIFT算法具有較高的特征點提取速度,并且相比ORB算法具有較高的特征點提取精度,同時解決了ORB算子不具備尺度不變性的缺點.
ORB;SIFT;特征點提取
數(shù)據(jù)圖像處理領(lǐng)域中,特征點提取是非常關(guān)鍵的一種技術(shù)[1-2],DavidG.Lowe于2004年提出SIFT特征點提取算法[3]一直以來是主流的特征點提取算法,其特征點提取精確度較高,但實時性表現(xiàn)較差,后來學(xué)者對此算法進行的改進和研究,著名的是后來提出的SURF算法[4].隨著對特征點提取對實時性要求的不斷提高,Rublee等[5]人在2011年提出的ORB算法相比SIFT、SURF算法在實時性方面表現(xiàn)突出,但是ORB算法不具備尺度不變性.
目前國內(nèi)對于特征點提取算法的研究主要是對SIFT算法和SURF算法的研究[6-10],對ORB的研究關(guān)注也越來越多[11-13].文獻[11]在復(fù)雜的環(huán)境中利用ORB的快速準(zhǔn)確性檢測運動目標(biāo);文獻[12]中將ORB算法應(yīng)用到增強現(xiàn)實系統(tǒng)中,提高了增強現(xiàn)實系統(tǒng)的實時性和魯棒性,但是目前對于ORB算法的研究對于該算法不具備尺度不變性的研究很少.
針對以上問題,該文結(jié)合ORB算法和SIFT算法的思想,提出了基于ORB和SIFT的特征提取算法,相比SIFT算法和ORB算法具有較低的特征點提取誤差,相比SIFT算法具有較高的特征點提取速度,并且相比ORB算法具有較高的特征點提取精度,同時解決了ORB算子不具備尺度不變性的缺點.
1.1 ORB算法
2011年Rublee等人在ICCV上提出的一種用于基于視覺信息的特征點檢測與描述的ORB[14]算法,使用FAST[15]對特征點進行檢測的同時,加入了FAST特征的方向信息,并利用BRIEF[16]進行特征點描述,并改進了BRIEF不具備旋轉(zhuǎn)不變性和對圖像噪聲敏感的缺點.ORB特征提取可以分為兩部分:(1)具有方向的FAST興趣點檢測;(2)具有旋轉(zhuǎn)不變性的BRIEF興趣點描述.
(1)興趣點檢測
使用分割檢測判據(jù)進行FAST特征點檢測,在以像素點p為中心,如果半徑為r的圓周上存在聯(lián)系的n個像素Ik(其中k=1,2,…,n),通過下式可判斷像素點p是否為角點:
其中Ik為任意一個像素點的灰度值;像素點p的灰度值為Ip,t是已知的一個很小的閾值,若CRF=1的個數(shù)多于一個給定的閾值t′,將該點視為候選點,通常t′=12.如圖1所示為FAST特征檢測示意圖.
圖1 FAST特征檢測示意圖
通過建立圖像金字塔引入尺度特性并通過灰度質(zhì)心法[17]去除頂特征點的方向,使FAST興趣點具有方向,并根據(jù)此方向來提取BRIEF算子.
(2) 生成具有旋轉(zhuǎn)不變的算子
在解決噪聲問題時ORB算法使用高斯核濾波器進行圖像預(yù)處理,且使用兩種方法解決BRIEF算子不具有旋轉(zhuǎn)不變的特點:①控制FAST特征點的方向;②使用貪婪窮舉算法找到相關(guān)性較低的隨機點對,即相關(guān)系數(shù)接近0.5的圖像點對;圖2為尋找隨機點對的方法,(a)為BRIEF特征引入主方向后,特征點主方向的變換造成的較高相關(guān)性的隨機點對;(b)為采用貪婪窮舉算法后得到的較低相關(guān)性的隨機點對,其彩條為每次測試特征點的相關(guān)性,顏色越淺相關(guān)性越高.
(a)較高相關(guān)性的隨機點對 (b)較低相關(guān)性的隨機點對圖2 尋找隨機點對
1.2 SIFT算法
2004年DavidG.Lowe等人提出的SIFT特征點提取算法具有旋轉(zhuǎn)不變性、光照不變性、尺度不變性以及仿射不變性,且可以獲得較多的穩(wěn)定的特征點,但是SIFT算法在能夠精確提取穩(wěn)定特征點的同時其算法耗時較嚴重.SIFT特征提取算法主要包括以下4個基本步驟:
(1) 尺度空間極值檢測:搜索所有尺度上的圖像位置.通過高斯微分函數(shù)來識別潛在的對于尺度和旋轉(zhuǎn)不變的興趣點.
(2) 關(guān)鍵點定位:在每個候選的位置上,通過一個擬合精細的模型來確定位置和尺度.關(guān)鍵點的選擇依據(jù)于它們的穩(wěn)定程度.
(3) 方向確定:基于圖像局部的梯度方向,分配給每個關(guān)鍵點位置一個或多個方向.所有后面的對圖像數(shù)據(jù)的操作都相對于關(guān)鍵點的方向、尺度和位置進行變換,從而提供對于這些變換的不變性.
(4) 關(guān)鍵點描述:在每個關(guān)鍵點周圍的鄰域內(nèi),在選定的尺度上測量圖像局部的梯度.這些梯度被變換成一種表示,這種表示允許比較大的局部形狀的變形和光照變化.
由于ORB算法特征點的提取和匹配精度相比SIFT、SURF等算法較低,且FAST檢測出的特征點不含有尺度不變信息,導(dǎo)致ORB算法不具備尺度不變性,使得即使引進FAST特征點的方向使其具有旋轉(zhuǎn)不變性,但其仍不具有尺度不變性.在對SIFT算法進行研究學(xué)習(xí)時發(fā)現(xiàn),該算法使用多尺度空間理論提取穩(wěn)定特征點,以及后續(xù)的特征點描述及匹配,使得該算法具有較好的尺度不變性,而這正是解決ORB算法不具有尺度不變性所需要的.借鑒SIFT算法的思想,對特征點進行ORB描述從而生成ORB算子,然后進行特征點的提取.因此,使得在保留了ORB算子運算快速度以及旋轉(zhuǎn)不變性的優(yōu)點的同時,解決了ORB算法不具備尺度不變性的缺陷.
2.1極值點檢測
Lindeberg等人已經(jīng)證明[18],某些受限制的條件下,Gauss函數(shù)是唯一尺度空間的核平滑函數(shù).將圖像F(x,y)的尺度定義為函數(shù)L(x,y,σ),其中σ為尺度因子,其由圖像F(x,y)與Gauss函數(shù)G(x,y,σ)卷積后得到
L(x,y,σ)=G(x,y,σ)F(x,y)
為了在尺度空間中得到穩(wěn)定的特征點,在圖像卷積得到的空間 與Gauss差分函數(shù)中尋找極值點,將其局部極值點視為尺度空間的候選特征點.
D(x,y,σ)=[G(x,y,kσ)-
G(x,y,σ)]F(x,y)=L(x,y,kσ)-L(x,y,σ)
上式中,常數(shù)k分開相鄰的兩個尺度.
2.2穩(wěn)定的特征點的提取
在完成極值點的檢測后,需去除一些不穩(wěn)定的極值點,使得在進行特征點匹配時精確度和穩(wěn)定性更好,使用3維的2次函數(shù)求在某個尺度上求得的極值點在原圖像上的位置,并且將低對比度的極值點去除掉.首先在某極值點處對D(x,y,σ)進行泰勒展開有:
(1)
(2)
將式(2)帶入式(1)中有:
設(shè)H最大、最小特征值分別為α和β,則有
上式可知極值點D的主曲率與H的特征值對應(yīng)成比例,則只需關(guān)心α/β的值,設(shè)r=α/β且可知
上式的結(jié)果與具體特征值無關(guān)而與其值之間的比例有關(guān),其中隨著r的增加(r+1)2/r也增加.則通過下式來檢查主曲率的比值是否小于某一閾值γ
杜京義等人指出閾值γ=8[19],即認為主曲率比值不大于8的極值點保留,其他極值點被去除[20].
2.3算法改進小結(jié)
使用SIFT算法求出特征點和其質(zhì)心方向后,用ORB算子描述特征點,最后生成具有旋轉(zhuǎn)不變性和尺度不變性的算子并進行匹配,在其過程中對特征點數(shù)目和特征分布進行改進,這樣既使原始ORB算法具備尺度不變性,又保留了其旋轉(zhuǎn)不變性和計算速度快速的特點.具體步驟如下:
Step1.借鑒SIFT算法的思想,建立尺度空間并求出極值點;
Step2.為解決ORB算法不具備尺度不變性的缺點,去除主曲率大于8和對比度較低的極值點;
Step3.求出特征點質(zhì)心方向后求取ORB算子.
該文在一臺裝有Windows 7操作系統(tǒng)的PC機上進行實驗,在VS2013+OpenCV2.4.10的平臺下采用C++編程語言進行仿真實驗.
3.1特征點提取實驗結(jié)果
圖像采用星巴克和亞馬遜的兩幅圖像進行實驗,進行實驗圖像的像素為210×210px,圖3為原始圖像,圖4為ORB算法特征檢測結(jié)果,圖5為SIFT算法特征檢測結(jié)果,圖6為ORB與SIFT算法特征點提取結(jié)果可見基于改進ORB算法的多視角圖像拼接效果良好.
圖3 原始圖像
圖4 ORB算法特征檢測結(jié)果
圖5 SIFT算法特征檢測結(jié)果
圖6 ORB與SIFT算法特征點提取結(jié)果
3.2特征點提取實驗結(jié)果分析
上述實驗中,提取的特征點間誤差和特征提取花費的時間比較見表1,其中,RMSE為已知特征點坐標(biāo)與檢測出的特征點坐標(biāo)間的整體均方根誤差,X與Y向的均方根誤差分別為RMSEx與RMSEy.
表1 各算法提取特征點誤差比較
仿真結(jié)果表明,提出的基于ORB和SIFT的特征提取算法相比SIFT算法和ORB算法具有較低的特征點提取誤差,相比SIFT算法具有較高的特征點提取速度,并且相比ORB算法具有較高的特征點提取精度,同時解決了ORB算子不具備尺度不變性的缺點.
該文結(jié)合SIFT算法提取的特征點具備尺度不變性以及ORB算子在特征點提取時具有較好的實時性,提出了基于ORB和SIFT的特征提取算法.該算法借鑒SIFT算法的思想,建立尺度空間并求出極值點;同時為解決ORB算法不具備尺度不變性的缺點,去除主曲率大于8和對比度較低的極值點;最后通過求出特征點質(zhì)心方向后求取ORB算子.仿真實驗結(jié)果表明,該文提出的基于ORB和SIFT的特征提取算法相比SIFT算法和ORB算法具有較低的特征點提取誤差,相比SIFT算法具有較高的特征點提取速度,并且相比ORB算法具有較高的特征點提取精度,同時解決了ORB算子不具備尺度不變性的缺點.
[1] 張開玉,梁鳳梅.基于改進SURF的圖像配準(zhǔn)關(guān)鍵算法研究[J].科學(xué)技術(shù)與工程,2013,13(10):2875-2879.
[2] Sinha S N,Frahm J M,Pollefeys M,et al.Feature tracking and matching in video using programmable graphics hardware[J].Machine Vision and Applications,2011,22(1):207-217.
[3] Lowe D G.Distinctive Image Features from Scale-Invariant Keypoints[J].International Journal of Computer Vision,2004,60(2):91-110.
[4] Bay H,Tuytelaars T,Gool L V.SURF:Speeded Up Robust Features[J].Computer Vision & Image Understanding,2006,110(3):404-417.
[5] Rublee E,Rabaud V,Konolige K,et al.ORB:An efficient alternative to SIFT or SURF[C]// International Conference on Computer Vision.IEEE Computer Society,2011:2564-2571.
[6] 曾巒,王元欽,譚久彬.改進的SIFT特征提取和匹配算法[J].光學(xué)精密工程,2011,19(6):26-31.
[7] 范志強,趙沁平.一種基于數(shù)據(jù)聚類的魯棒SIFT特征匹配方法[J].計算機研究與發(fā)展,2012,49(5):1123-1129.
[8] 傅衛(wèi)平,秦川,劉佳,等.基于SIFT算法的圖像目標(biāo)匹配與定位[J].儀器儀表學(xué)報,2011,32(1):163-169.
[9] 馮政壽,王美清.基于Harris與改進SIFT算法的圖像匹配算法[J].福州大學(xué)學(xué)報,2012(2):176-180.
[10] 杜京義,胡益民,劉宇程.基于區(qū)域分塊的SIFT圖像匹配技術(shù)研究與實現(xiàn)[J].光電工程,2013,40(8):52-58.
[11] 趙劍,韓斌,張其亮.基于改進ORB算法的虛實注冊方法[J].計算機應(yīng)用,2014,34(9):2725-2729.
[12] 李小紅,謝成明,賈易臻,等.基于ORB特征的快速目標(biāo)檢測算法[J].電子測量與儀器學(xué)報,2013,27(5):455-460.
[13] 張云生,鄒崢嶸.基于改進ORB算法的遙感圖像自動配準(zhǔn)方法[J].國土資源遙感,2013,25(3):20-24.
[14] 葛山峰,于蓮芝,謝振.基于ORB特征的目標(biāo)跟蹤算法[J].電子科技,2017(2):98-100.
[15] Rosten E,Drummond T.Machine learning for highspeed corner detection[C].In European Conference on Computer Vision,2006:430-443.
[16] Calonder M,Lepetit V,Strecha C,et al.Fua.Brief:Binary robust independent elementary features[C].In European Conference on Computer Vision,2010:778-792.
[17] Rosin P L.Measuring corner properties[J].Computer Vision and Image Understanding,1999,73(2):291-307.
[18] lindeberg T.Feature detection with automatic scale selection.International Journal of Computer Vision,1998,30(2):79-116.
[19] 杜京義,胡益民,劉宇程.基于區(qū)域分塊的SIFT圖像匹配技術(shù)研究與實現(xiàn).光電工程,2013;40(08):52-58.
[20] 許宏科,秦嚴嚴,陳會茹.基于改進ORB的圖像特征點匹配[J].科學(xué)技術(shù)與工程,2014,14(18):105-109.
Abstract:The feature points extracted by the SIFT algorithm have scale invariance and the ORB operator has better real-time performance when the feature points are extracted.In this paper,a feature extraction algorithm based on ORB and SIFT is proposed.The algorithm of feature extraction is mainly divided into 3 steps:(1) from the thought of SIFT algorithm,a scale space and the extreme point are found; (2) In order to solve the ORB algorithm having no scale invariance,the main curvature larger than 8 and low contrast points are removed; (3) the feature points the centroid direction after calculating the ORB operator is obtained.LOGO simulation using two enterprises.The simulation results show that the proposed feature extraction algorithm based on ORB and SIFT compared to the SIFT algorithm and the ORB algorithm has the characteristics of low point extraction error,compared to the SIFT algorithm of feature points with higher extraction rate,and compared the feature point extraction ORB algorithm has a high precision,and the ORB operator have no scale invariance is solved.
Keywords:ORB; SIFT;Feature Detection
(責(zé)任編輯:季春陽)
FeatureDetectionAlgorithmBasedonORBandSIFT
Huang Ying
(Ma’anshan Normal College)
TP391.9
A
1000-5617(2017)02-0025-05
2017-03-21
*安徽省承接教育部《高等職業(yè)教育創(chuàng)新發(fā)展行動計劃(2015-2018年)》任務(wù):XM-01軟件技術(shù)骨干專業(yè)建設(shè)(序號97);馬鞍山師范高等??茖W(xué)校校級特色專業(yè)-計算機網(wǎng)絡(luò)技術(shù)(2016xjtszy01);馬鞍山師范高等??茖W(xué)校校級精品開放課程-網(wǎng)頁設(shè)計與制作(2016xjjpxj01);馬鞍山師范高等??茖W(xué)校校級專業(yè)綜合改革試點-多媒體技術(shù)(2015xjzy01);馬鞍山師范高等??茖W(xué)校校級教研項目-計算機課程教學(xué)資源庫的建設(shè)與開發(fā)——以Linux課程為例(2017xjzdjy07)