孫健鈞, 趙 巖, 王世剛
(吉林大學(xué) 通信工程學(xué)院, 長(zhǎng)春 130012)
圖像局部特征描述子廣泛應(yīng)用于圖像拼接、 目標(biāo)跟蹤[1]、 遙感影像配準(zhǔn)[2]、 圖像檢索及大數(shù)據(jù)條件下應(yīng)用局部特征的視頻圖像壓縮中. 目前局部特征提取方法主要有: 尺度不變特征轉(zhuǎn)換(SIFT)算法、 加速魯棒特性(SURF)算法、 MSER(maximally state extrernal regions)算法等. 在這些局部特征提取方法中, SIFT算法性能最好, SURF算法雖然計(jì)算速度快, 但與MSER算法一樣不具有尺度不變性[3]. 由于SIFT算法對(duì)圖像尺度、 仿射變換、 視角及光照變化均具有不變性[4], 因此改進(jìn)SIFT特征匹配算法可使其具有更優(yōu)良的性能. 目前, SIFT特征匹配算法的改進(jìn)算法已有很多: 穩(wěn)健性高的PCA-SIFT算法、 用于行人識(shí)別的方向梯度直方圖(HOG)算法, 適用于分辨率變化較大和旋轉(zhuǎn)情況的SURF方法, 用于實(shí)時(shí)處理的并行遞歸高斯SIFT算法[5]以及雙向SIFT特征匹配算法[6]等. 這些SIFT特征匹配改進(jìn)方法都是針對(duì)不同的應(yīng)用條件對(duì)算法進(jìn)行的改進(jìn). 但SIFT特征匹配算法作為一種局部特征提取算法不可能避免因?yàn)楸尘跋嗨啤?無(wú)明顯標(biāo)志物等原因引起的誤匹配[7]. 如果圖像中存在局部紋理相似的區(qū)域, SIFT特征匹配算法得到的特征向量就有很大的相似性, 導(dǎo)致誤匹配. 誤匹配說(shuō)明提取的點(diǎn)的準(zhǔn)確性有待提高. 為了減少誤匹配, 人們提出了基于幾何相似性的改進(jìn)方法[8]、 利用全局紋理的Contourlet-SIFT方法[9]以及根據(jù)源進(jìn)行誤匹配消除的方法[10].
圖像梯度是穩(wěn)定的二階圖像屬性, 由于梯度圖直接進(jìn)行匹配的效果非常差, 且傳統(tǒng)的梯度計(jì)算方法[11]對(duì)算子本身進(jìn)行了邊緣強(qiáng)化處理[12], 因此并不適用于SIFT匹配. 本文使用一種適于SIFT特征點(diǎn)提取的梯度算法計(jì)算出所需的梯度圖并融合于原圖中, 以強(qiáng)化圖像的梯度信息, 有效減少誤匹配, 達(dá)到提高匹配率的效果. 實(shí)驗(yàn)結(jié)果表明, 該方法明顯提高了提取特征點(diǎn)的準(zhǔn)確性.
在采用SIFT算法進(jìn)行特征點(diǎn)匹配時(shí), 可通過(guò)距離比值法和隨機(jī)抽樣一致(RANSAC)算法篩選并去除一些不正確的匹配點(diǎn)[13-14]. 強(qiáng)化圖像的梯度信息可增加描述子相似而實(shí)際紋理特征明顯不同的描述子之間的差異, 使特征描述子更具獨(dú)特性, 從而避免一部分特征點(diǎn)的誤匹配. 改進(jìn)的SIFT特征提取算法流程如圖1所示.
圖1 改進(jìn)算法流程Fig.1 Flow chart of improved algorithm
圖像梯度是一種常見(jiàn)的圖像信息描述方法, 它表示當(dāng)前像素與周圍像素的差異情況. 梯度越大, 則當(dāng)前像素與周圍像素的差異越大, 表示該像素位于圖像中的邊緣區(qū)域, 包含的信息量越大; 梯度越小, 當(dāng)前像素與周圍像素的差異越小, 表示該像素位于圖像中的平滑區(qū)域, 該像素包含的信息量越少. 梯度圖就是將當(dāng)前像素與周圍像素的差異作為圖像灰度的一種圖像, 其灰度值實(shí)際上即為當(dāng)前像素和周圍像素的灰度差異值.
梯度計(jì)算公式為
其中:G表示梯度圖的梯度值;B表示原圖的灰度值;i和j分別表示行、 列序號(hào). 式(1)表示第一列的梯度值是原圖第二列減去第一列得出的; 式(2)表示從第二列開(kāi)始每列的梯度值等于其對(duì)應(yīng)原圖位置的后一列減去其前一列, 然后除以2; 式(3)表示最后一列的梯度值是通過(guò)原圖最后一列減去倒數(shù)第二列得出的. 這樣處理得到的梯度圖適用于SIFT匹配. 該梯度的求法不偏重于邊緣, 而更注重求取梯度時(shí)保留圖像原來(lái)的細(xì)節(jié)特征, 防止對(duì)SIFT匹配產(chǎn)生不良影響.
SIFT算法認(rèn)為邊緣點(diǎn)和角點(diǎn)是不穩(wěn)定的特征點(diǎn), 而本文算法采用梯度圖, 相互矛盾. 為解決該矛盾, 即既想引入梯度這一穩(wěn)定特征, 使特征點(diǎn)的提取更準(zhǔn)確, 又不影響保持原圖的細(xì)節(jié), 本文使用一種簡(jiǎn)單的加權(quán)疊加方法: 把梯度圖的灰度值取0.5倍與原圖疊加. 經(jīng)過(guò)大量實(shí)驗(yàn)證實(shí)該簡(jiǎn)單加權(quán)疊加方法可行. 當(dāng)權(quán)值過(guò)低時(shí), 對(duì)原圖影響較大, 效果略低于原算法的匹配率; 權(quán)值過(guò)高又會(huì)影響圖像本身的細(xì)節(jié). 實(shí)驗(yàn)選取不同的權(quán)值時(shí), 部分匹配結(jié)果列于表1(表1中圖號(hào)對(duì)應(yīng)實(shí)驗(yàn)結(jié)果分析中的圖號(hào)).
表1 不同權(quán)值匹配率(%)對(duì)比
加權(quán)疊加公式為
Ii,j=Bi,j+0.5×Gi,j,
(4)
其中:I表示疊加后圖像的灰度值;B表示原圖的灰度值;G表示梯度圖的梯度值;i和j分別表示行、 列序號(hào). 加權(quán)疊加后, 對(duì)圖像進(jìn)行歸一化處理, 使其取值范圍在0~255之間.
在加入梯度信息后還要對(duì)圖像進(jìn)行去噪處理, 因?yàn)橛?jì)算得出的梯度圖含有噪聲, 會(huì)影響描述子的準(zhǔn)確性. 目前圖像的去噪方法主要有中值濾波和高斯模糊等. 中值濾波對(duì)椒鹽噪聲的濾除性能較好, 但無(wú)法適應(yīng)包含復(fù)雜噪聲的圖像; 高斯濾波雖然對(duì)椒鹽噪聲濾除性能較差, 但對(duì)多種噪聲同時(shí)具備一定的適應(yīng)性. 因此, 高斯濾波的綜合性能更好, 也更適合SIFT算法.
高斯模糊采用的高斯核公式為
(5)
取σ=1.2, 即可計(jì)算出本文高斯核矩陣為
以本文梯度算法求出梯度圖, 把梯度信息以0.5為權(quán)值疊加到原圖上, 歸一化后利用高斯模糊去噪, 即可實(shí)現(xiàn)圖像特征提取.
為了驗(yàn)證本文改進(jìn)算法的性能, 在VS2012的編譯環(huán)境下進(jìn)行改進(jìn)算法與原算法及Contourlet-SIFT方法的對(duì)比實(shí)驗(yàn). 實(shí)驗(yàn)用圖來(lái)源于牛津大學(xué)SIFT算法及全景拼接測(cè)試用圖和Mikolajczyk數(shù)據(jù)集. 實(shí)驗(yàn)過(guò)程中對(duì)背景復(fù)雜、 含光照變化、 旋轉(zhuǎn)、 視角變化和噪聲的5類圖像進(jìn)行比較, 結(jié)果表明, 對(duì)于以上圖像, 改進(jìn)算法具有較好的適應(yīng)性. 但對(duì)于特征不明顯的情形和原算法一樣效果不佳. 本文目的是提高特征點(diǎn)提取的準(zhǔn)確性, 所以采用匹配率衡量改進(jìn)后算法的性能.
對(duì)視角變化具有一定的穩(wěn)定性是傳統(tǒng)SIFT算法的突出優(yōu)點(diǎn), 如圖2所示的兩張遙控賽車圖片, 拍攝角度約有25°的改變, 傳統(tǒng)算法和改進(jìn)算法匹配率均較低, 但改進(jìn)算法的匹配率提高了9.05%.
圖3為圖像加入了高斯噪聲和椒鹽噪聲的實(shí)驗(yàn)結(jié)果. 使用傳統(tǒng)算法該圖組匹配率為82.05%, 改進(jìn)算法的匹配率為87.72%, 提升了5.67%.
圖4為含復(fù)雜背景的圖像匹配對(duì)比結(jié)果. 由圖4可見(jiàn), 增加的匹配點(diǎn)集中在樓房和特征明顯的樹(shù)木上, 改進(jìn)后山巒的邊緣也檢測(cè)到了更多的特征點(diǎn). 但對(duì)于遠(yuǎn)景中較復(fù)雜的背景部分并沒(méi)有較大改善, 總體上匹配率提升了7.09%. 這體現(xiàn)了本文算法的優(yōu)勢(shì)和局限性, 因?yàn)閺?qiáng)化了圖像的梯度信息, 所以對(duì)于特征明顯的部分匹配率提升較大, 但本文算法仍未能解決傳統(tǒng)SIFT算法對(duì)于復(fù)雜背景或者特征不明顯部分匹配率低的問(wèn)題[15].
圖2 含視角變化的圖像匹配對(duì)比Fig.2 Comparisons of image matching with different visual angles
圖3 含有椒鹽噪聲和高斯噪聲的圖像匹配對(duì)比Fig.3 Comparisons of image matching with salt and pepper noise and Gauss noise
圖4 含復(fù)雜背景的圖像匹配對(duì)比Fig.4 Comparisons of image matching with complex background
因?yàn)椴煌庠磶?lái)的非線性光照變化會(huì)產(chǎn)生違反普通反射定律的陰影, SIFT算法對(duì)光照變化和反色情況的效果有待改善. 圖5為含光照變化的圖像匹配對(duì)比. 由圖5可見(jiàn), 對(duì)于光照變化的情況, 本文算法的匹配率略有提升, 提升了4.54%.
圖5 含光照變化的圖像匹配對(duì)比Fig.5 Comparisons of image matching with illumination changes
旋轉(zhuǎn)匹配結(jié)果如圖6所示. 由圖6可見(jiàn), 本文算法具有更好的旋轉(zhuǎn)不變性, 傳統(tǒng)SIFT算法在該圖組匹配率僅為52.94%, 而使用本文算法匹配率提升了19.90%. 對(duì)于旋轉(zhuǎn)圖組, 匹配率提升均較大, 平均提升12%.
圖6 含圖像旋轉(zhuǎn)的匹配結(jié)果對(duì)比Fig.6 Comparisons of matching results with image rotation
為了進(jìn)一步檢驗(yàn)改進(jìn)算法的性能, 圖7給出了本文算法與文獻(xiàn)[9]中Contourlet-SIFT算法的匹配結(jié)果比較.
圖7 本文改進(jìn)算法與文獻(xiàn)[9]中算法匹配結(jié)果對(duì)比Fig.7 Comparisons of matching results between improved algorithm in this paper and literature [9]
本文算法、 傳統(tǒng)SIFT算法及Contourlet-SIFT算法的實(shí)驗(yàn)結(jié)果對(duì)比列于表2. 由表2可見(jiàn), 原算法對(duì)于該圖組的匹配率是98.07%, Contourlet-SIFT算法的匹配率提升至99.57%, 而本文算法的匹配率則達(dá)到100%. Contourlet-SIFT算法匹配耗時(shí)0.780 s, 本文算法要額外消耗0.254 s. 因此, 本文算法的匹配率更高, 但效率不及Contourlet-SIFT算法.
表2 改進(jìn)算法與傳統(tǒng)SIFT算法及Contourlet-SIFT算法的實(shí)驗(yàn)結(jié)果對(duì)比
本文算法與傳統(tǒng)SIFT算法的匹配率對(duì)比結(jié)果列于表3. 由表3可見(jiàn), 本文改進(jìn)算法在視角、 旋轉(zhuǎn)不變性上均較傳統(tǒng)SIFT算法有明顯優(yōu)勢(shì), 但其對(duì)亮度變化的圖像匹配率提升不明顯, 對(duì)于有噪聲的圖像匹配率有顯著提升. 改進(jìn)算法對(duì)含有樓房、 車輛或其他邊緣明顯特征物的圖像提升效果較明顯, 匹配率可以提升約5%~20%, 對(duì)大量圖像進(jìn)行檢測(cè)平均匹配率也能提升5%.
表3 本文算法與傳統(tǒng)SIFT算法的匹配率(%)對(duì)比
本文算法與傳統(tǒng)SIFT算法提取特征點(diǎn)并匹配的時(shí)間對(duì)比列于表4. 由表4可見(jiàn), 本文算法并未提高算法的復(fù)雜度.
表4 本文算法與傳統(tǒng)SIFT算法的時(shí)間(s)對(duì)比
綜上所述, 為了提高SIFT特征匹配算法的匹配率, 使其特征點(diǎn)提取的準(zhǔn)確性更高, 本文提出了一種先求原圖的梯度圖, 然后把梯度信息融入原圖, 再進(jìn)行SIFT特征匹配的改進(jìn)算法. 與傳統(tǒng)SIFT算法相比, 本文算法在提高特征點(diǎn)的準(zhǔn)確性和匹配率的同時(shí)未增加算法復(fù)雜度, 適用于多數(shù)圖像的匹配.
[1] 顏雪軍, 趙春霞, 袁夏. 一種魯棒的基于圖像對(duì)比度的局部特征描述方法 [J]. 電子與信息學(xué)報(bào), 2014, 36(4): 882-887. (YAN Xuejun, ZHAO Chunxia, YUAN Xia. A Robust Local Feature Descriptor Based on Image Contrast [J]. Journal of Electronics & Information Technology, 2014, 36(4): 882-887.)
[2] 夏英, 唐小英. 中低分辨率遙感影像控制點(diǎn)對(duì)自動(dòng)提取方法 [J]. 重慶郵電大學(xué)學(xué)報(bào)(自然科學(xué)版), 2014, 26(2): 238-242. (XIA Ying, TANG Xiaoying. Extracting Method of Control Point Pairs for Medium and Low Resolution Remote Sensing Image [J]. Journal of Chongqing University of Posts and Telecommunications (Natural Science Edition), 2014, 26(2): 238-242.)
[3] 張毅, 童學(xué)容, 羅元. 一種改進(jìn)SURF算法的單目視覺(jué)里程計(jì) [J]. 重慶郵電大學(xué)學(xué)報(bào)(自然科學(xué)版), 2014, 26(3): 390-396. (ZHANG Yi, TONG Xuerong, LUO Yuan. A Novel Monocular Visual Odometry Method Based on Improved SURF Algorithm [J]. Journal of Chongqing University of Posts and Telecommunications (Natural Science Edition), 2014, 26(3): 390-396.)
[4] 雷俊峰, 朱月苓, 肖進(jìn)勝, 等. 基于主方向梯度的SIFT算法匹配的優(yōu)化 [J]. 計(jì)算機(jī)工程與應(yīng)用, 2015, 51(13): 149-152. (LEI Junfeng, ZHU Yueling, XIAO Jinsheng, et al. Improved of SIFT Matching Algorithm Based on Main Gradient of Direction [J]. Computer Engineering and Applications, 2015, 51(13): 149-152.)
[5] LUO Yong, YE Zhengyuan, CHEN Yuanzhi. Efficient Parallel Recursive Gaussian SIFT Algorithm Based on Multi-core DSP [C]//2015 IEEE 5th International Conference on Electronics Information and Emergency Communication. Piscataway, NJ: IEEE, 2015: 402-405.
[6] 安婷, 賀一民, 張志毅. 改進(jìn)的雙向SIFT特征匹配算法 [J]. 計(jì)算機(jī)工程與科學(xué), 2016, 38(1): 138-143. (AN Ting, HE Yimin, ZHANG Zhiyi. An Improved Bidirectional SIFT Feature Matching Algorithm [J]. Computer Engineering & Science, 2016, 38(1): 138-143.)
[7] 張良, 王海麗, 吳仁彪. 基于改進(jìn)局部不變特征的興趣點(diǎn)匹配 [J]. 電子與信息學(xué)報(bào), 2009, 31(11): 2620-2625. (ZHANG Liang, WANG Haili, WU Renbiao. Matching of Interesting Points Based on Improved SIFT Algorithm [J]. Journal of Electronics & Information Technology, 2009, 31(11): 2620-2625.)
[8] LI Jinke, WANG Gang. An Improved SIFT Matching Algorithm Based on Geometric Similarity [C]//2015 IEEE 5th International Conference on Electronics Information and Emergency Communication. Piscataway, NJ: IEEE, 2015: 16-19.
[9] 陳抒瑢, 李勃, 董蓉, 等. Contourlet-SIFT特征匹配算法 [J]. 電子與信息學(xué)報(bào), 2013, 35(5): 1215-1221. (CHEN Shurong, LI Bo, DONG Rong, et al. Contourlet-SIFT Feature Matching Algorithm [J]. Journal of Electronics & Information Technology, 2013, 35(5): 1215-1221.)
[10] MENG Qingsong, Lü Zhihui. An Image Registration Method Based on Improved SIFT Algorithm [C]//2015 Seventh International Conference on Advanced Communication and Networking. Piscataway, NJ: IEEE, 2015: 7-10.
[11] 樊養(yǎng)余, 雷濤, 張辰銳, 等. 基于自適應(yīng)矢量參數(shù)的彩色圖像梯度計(jì)算方法 [J]. 西北工業(yè)大學(xué)學(xué)報(bào), 2012, 30(6): 919-925. (FAN Yangyu, LEI Tao, ZHANG Chenrui, et al. A New Method for Calculating Color Image Gradient with Adaptive Vector Parameters [J]. Journal of Northwestern Polytechnical University, 2012, 30(6): 919-925.)
[12] 張春雪. 圖像的邊緣檢測(cè)方法研究 [D]. 無(wú)錫: 江南大學(xué), 2011. (ZHANG Chunxue. Research on Image Edge Detection Method [D]. Wuxi: Jiangnan University, 2011.)
[13] Lowe D. Distinctive Image Features from Scale-Invariant Keypoints [J]. International Journal of Computer Vision, 2004, 60(2): 91-110.
[14] 汪松. 基于SIFT算法的圖像匹配算法研究 [D]. 西安: 西安電子科技大學(xué), 2013. (WANG Song. Research on Image Matching Algorithm Based on SIFT Algorithm [D]. Xi’an: Xidian University, 2013.)
[15] WANG Xiaoli, LIU Dongmei, WANG Lirong. A Feature Point Matching Algorithm for Complex Background Image [C]//2015 IEEE 5th International Conference on Big Data and Cloud Computing. Piscataway, NJ: IEEE, 2015: 243-247.