李秀華, 劉國銳
(長春工業(yè)大學(xué) 計(jì)算機(jī)科學(xué)與工程學(xué)院, 吉林 長春 130012)
?
一種改進(jìn)的SIFT特征匹配算法
李秀華, 劉國銳
(長春工業(yè)大學(xué) 計(jì)算機(jī)科學(xué)與工程學(xué)院, 吉林 長春 130012)
首先采用稀疏點(diǎn)匹配算法提取待匹配的兩幅圖像的輪廓,構(gòu)建輪廓高斯金字塔,然后逐層進(jìn)行SIFT特征匹配。仿真實(shí)驗(yàn)結(jié)果表明,該方法提高了匹配速度和準(zhǔn)確性。
特征匹配; 稀疏匹配; 高斯金字塔; SIFT算法
三維重建系統(tǒng)的完成需要特征點(diǎn)提取、特征匹配等圖像處理過程。由于立體匹配效果關(guān)系到重建的效果,所以,立體匹配環(huán)節(jié)算法的改善至關(guān)重要。常用的立體匹配方法有SIFT特征匹配方法和基于窗口稀疏匹配方法等。
SIFT特征匹配算法具有對平移、旋轉(zhuǎn)、亮度的變化及尺度縮放保持不變性的優(yōu)點(diǎn),但是SIFT算法在匹配過程中總會出現(xiàn)少量誤匹配的情況,這種情況需要改善?;诖翱诘南∈杵ヅ渌惴ㄌ崛〉奶卣鼽c(diǎn)具有很強(qiáng)的特征性,匹配結(jié)果相對可靠。但是當(dāng)這種稀疏匹配方法用于比三棱柱結(jié)構(gòu)復(fù)雜的綠色盆景植物進(jìn)行匹配時(shí),效率變低了,所以針對兩種方法中存在的問題,提出了改進(jìn)的SIFT算法,首先利用改進(jìn)稀疏匹配算法提取物體的強(qiáng)特征點(diǎn),然后結(jié)合改進(jìn)的SIFT算法進(jìn)行特征匹配。
SIFT算法是由David Lowe研究出的一種基于尺度空間不變特征的提取算法,也叫尺度不變特征方法[1]。
SIFT算法是一種在尺度空間尋找極值點(diǎn)的局部特征的提取算法,實(shí)現(xiàn)過程中確定極值點(diǎn)的位置、尺度、旋轉(zhuǎn)不變性等局部特征[2]。
SIFT算法的主要特點(diǎn)如下:
1)信息量巨大,獨(dú)特性突出,適合在大量特征數(shù)據(jù)庫中進(jìn)行準(zhǔn)確、快速的匹配,在特征匹配時(shí)正確匹配的概率相當(dāng)高。
2)SIFT特征可以對旋轉(zhuǎn)、平移、亮度變化、尺度縮放等因素保持穩(wěn)定性,對仿射變換、視角變化、光照變化等具有一定程度的魯棒性,SIFT特征是圖像的局部特征。
3)可擴(kuò)展性。比較容易結(jié)合其他形式的特征向量。
4)多量性。從為數(shù)不多的幾個(gè)物體可以提取較多SIFT特征向量。
5)高速性。優(yōu)化過的SIFT匹配算法有望實(shí)現(xiàn)實(shí)時(shí)的要求[3]。
SIFT算法步驟如圖1所示。
圖1 SIFT算法步驟圖
SIFT特征匹配算法可用于場景或同一物體的有效匹配。
稀疏點(diǎn)匹配算法主要是對圖像中的一些角點(diǎn)、輪廓點(diǎn)等強(qiáng)特征點(diǎn)進(jìn)行匹配。之后再對這些匹配完成之后的點(diǎn)進(jìn)行插值運(yùn)算。為了得到較好的匹配結(jié)果,需要盡可能多的、可靠的特征點(diǎn),選取的特征點(diǎn)為圖像輪廓點(diǎn),因?yàn)閳D像輪廓具有很好的連續(xù)性,既使在無法取得弱角點(diǎn)的地方,也可得到輪廓點(diǎn),不損失精度的情況下可得到較多的特征點(diǎn),使匹配的可信度提高[4]。首先在圖中取一特征點(diǎn),然后運(yùn)用向量夾角匹配方法計(jì)算它和圖中同一行中所有特征點(diǎn)的cosθ值,可把取值大于0.9的特征點(diǎn)記為該點(diǎn)的相對匹配點(diǎn)??捎胐=x2-x1代表兩個(gè)點(diǎn)的橫坐標(biāo)的視差值,視差的大小表示三維點(diǎn)離攝像機(jī)的距離遠(yuǎn)近,呈反相關(guān)關(guān)系[5]。
若向量v1和向量v2的夾角越大,則匹配度越低;若向量v1和向量v2的夾角越小,則兩個(gè)點(diǎn)的匹配度越高[6]。兩個(gè)向量的夾角為:
式中:θ----兩個(gè)向量的夾角。
當(dāng)cosθ=1時(shí),兩向量具有最佳匹配;反之,若cosθ=0,則兩向量具有最差匹配。為了去除一些無匹配點(diǎn),在進(jìn)行匹配時(shí),不妨將cosθ的最小值設(shè)為0.9。當(dāng)cosθ小于0.9時(shí),不被判定為匹配點(diǎn)[7]。
文中針對SIFT算法處理圖像產(chǎn)生的少量誤匹配進(jìn)行改善優(yōu)化,首先用結(jié)合了高斯金字塔原理的稀疏匹配方法對物體圖像強(qiáng)特征點(diǎn)進(jìn)行提取,然后用融進(jìn)了特征匹配點(diǎn)8鄰域特征方向的SIFT算法進(jìn)行特征匹配。
在強(qiáng)特征點(diǎn)提取的過程中融合了金字塔原理。
金字塔圖像的第一層的構(gòu)成是由圖像輪廓和不同尺度因子的高斯核進(jìn)行卷積得到的不同尺度空間的一組圖像輪廓。
金字塔圖像的第二層的構(gòu)成,首先對得到的第一層圖像以2倍像素距離下采樣得到第二層圖像,然后用不同尺度因子的高斯核對第二層圖像進(jìn)行卷積,可獲得金字塔圖像中第二層的圖像。
金字塔圖像中第三層的圖像與第二層圖像獲取方法是一樣的。依次操作,可得到由各個(gè)層組成的圖像構(gòu)成的金字塔。文中算法采用金字塔的5層結(jié)構(gòu),由處理過的各層高斯圖像相鄰層相減得出高斯差分圖像。
改進(jìn)的SIFT 算法在對圖像輪廓金字塔進(jìn)行匹配時(shí)融進(jìn)了特征點(diǎn)8鄰域特征方向的方法,對每個(gè)匹配特征點(diǎn)(設(shè)為原點(diǎn))的8鄰域特征方向作比較,如圖2所示。
-1,-1-1,0-1,10,-1原點(diǎn)0,11,-11,01,1
圖2 特征點(diǎn)的8領(lǐng)域
用最小平均誤差算法取其最有效的特征方向,取如下準(zhǔn)則函數(shù)最小值為有效特征方向。
式中:Xi----特征點(diǎn)到周圍的8鄰域特征方向向量;
bi----特征點(diǎn)。
在對圖像進(jìn)行特征提取時(shí),將對應(yīng)的參數(shù)信息及金字塔塔層信息暫存于創(chuàng)建的鏈表中,在匹配環(huán)節(jié)依次取出鏈表中的信息結(jié)合匹配方法進(jìn)行匹配,使匹配更加有效準(zhǔn)確,匹配時(shí)先匹配金字塔的最頂層,通過下層更豐富的特征點(diǎn)信息完善上層匹配結(jié)果,直到完成金字塔的第一層輪廓特征點(diǎn)的匹配。
實(shí)驗(yàn)中所用圖片來自實(shí)驗(yàn)室的兩個(gè)sony彩色CCD攝像機(jī)拍攝的視頻幀中同一時(shí)間的兩幅左右圖片,拍攝的是一盆綠色植物。
用SIFT算法對綠色植物左右圖像進(jìn)行處理后的結(jié)果如圖3所示。
圖3 SIFT算法特征匹配圖
從圖3可以看出,存在一些誤匹配點(diǎn),即有一少部分匹配點(diǎn)的匹配線與大部分線是交叉的而不是平行的。
用經(jīng)過改進(jìn)的SIFT算法進(jìn)行匹配處理的結(jié)果如圖4所示。
圖4 改進(jìn)的SIFT算法特征匹配圖
從圖4中可以看出,左右兩幅圖像誤匹配點(diǎn)變少了。
匹配成功的特征點(diǎn)在左右兩幅圖像上的坐標(biāo)分別用x1,y1,x2,y2來表示,部分匹配點(diǎn)坐標(biāo)具體值、匹配時(shí)間及成功匹配特征點(diǎn)總數(shù)的對比結(jié)果分別如圖5和圖6所示。
圖5 SIFT算法仿真實(shí)驗(yàn)結(jié)果
從實(shí)驗(yàn)結(jié)果還可得出,改進(jìn)后的算法把立體匹配時(shí)間15 s縮短為原來時(shí)間30 s的一半,匹配的實(shí)時(shí)性提高了,匹配成功的對數(shù)在匹配點(diǎn)總對數(shù)中的比例變大了,匹配效率提高。
圖6 改進(jìn)的SIFT算法仿真實(shí)驗(yàn)結(jié)果
選擇在同一實(shí)驗(yàn)條件下拍攝的總共6對左右圖像進(jìn)行驗(yàn)證實(shí)驗(yàn)結(jié)果,對于改進(jìn)的方法和原SIFT特征匹配方法,成功匹配特征點(diǎn)的總數(shù)量在兩種方法處理的對比結(jié)果如圖7所示。
圖7 6對左右圖像特征點(diǎn)匹配點(diǎn)數(shù)目
經(jīng)驗(yàn)證,說明實(shí)驗(yàn)結(jié)果具有可靠性。
立體匹配是三維重建等圖像處理問題的前期工作,立體匹配的正確率越高,三維重建的效果越好[8]。改進(jìn)的SIFT算法結(jié)合了稀疏匹配算法的優(yōu)點(diǎn)對雙目圖像進(jìn)行特征提取和立體匹配。經(jīng)過仿真實(shí)驗(yàn)證明,改進(jìn)的SIFT算法不僅改善了誤匹配的問題,同時(shí)提高了匹配的實(shí)時(shí)性及立體匹配效率。
[1] 程德志,李言俊,余瑞星,等.基于改進(jìn)SIFT算法的圖像匹配方法[J].計(jì)算機(jī)仿真,2011(7):285-289.
[2] 曹娟,李興瑋,林偉廷,等.SIFT特征匹配算法改進(jìn)研究系統(tǒng)[J].仿真學(xué)報(bào),2010(11):2760-2763.
[3] 趙啟兵,王養(yǎng)柱,胡永浩.基于改進(jìn)SIFT算法的無人機(jī)遙感影像匹配[J].電光與控制,2012(3):36-40.
[4] 于仕琪,劉瑞禎.學(xué)習(xí)OpenCV[M].北京:清華大學(xué)出版社,2009.
[5] 陳勝勇,劉盛.基于OpenCV的計(jì)算機(jī)視覺技術(shù)實(shí)現(xiàn)[M].北京:科學(xué)出版社,2005.
[6] 章毓晉.圖像工程[M].北京:清華大學(xué)出版社,2007.
[7] 高雋,謝昭.圖像理解理論與方法[M].北京:科學(xué)出版社,2009.
[8] 林曉梅,裴建國,牛剛,等.醫(yī)學(xué)圖像三維重建方法的研究與實(shí)現(xiàn)[J].長春工業(yè)大學(xué)學(xué)報(bào):自然科學(xué)版,2005,26(3):225-228.
An improved SIFT feature matching algorithm
LI Xiuhua, LIU Guorui
(School of Computer Science & Engineering, Changchun University of Technology, Changchun 130012, China)
First the sparse point matching algorithm is applied to extract the contour of two images to build outline Gaussian Pyramids, and then SIFT feature matching is used layer by layer. Simulation results indicate the method can improve both matching speed and accuracy.
feature matching; sparse matching; Gaussian Pyramid; SIFT algorithm.
10.15923/j.cnki.cn22-1382/t.2017.1.11
2016-07-17
李秀華(1971-),女,漢族,吉林長春人,長春工業(yè)大學(xué)副教授,博士,主要從事圖像處理與智能控制方向研究,E-mail:lixiuhua@ccut.edu.cn.
TP 302
A
1674-1374(2017)01-0058-04