曹 南,蔡揚揚,李旭洋,李 黎
(1.自然資源部第一地形測量隊,陜西 西安 710054;2.西安新華測繪有限公司,陜西 西安 710054)
近年來,隨著遙感技術的快速發展,多源、多分辨率、多時相的遙感影像已應用于人類生活與工作的多個方面,如生態環境保護、農作物生長狀態估計、災害管理、城市規劃等[1-3]。在遙感領域,平臺、傳感器、無線通信傳輸技術的快速更新,使遙感影像逐漸向高空間、高時間、高光譜分辨率的高分方向發展[4]。在許多遙感影像的處理與應用中,需要將多源數據結合起來進行分析與比較,如影像融合、變化檢測、影像拼接等,需對影像進行匹配處理。影像信息主要集中在特征區域[5],而影像特征匹配依靠點位匹配完成,因此可通過影像特征點匹配實現影像匹配。傳統的特征點匹配采用人工操作的方式,需要有經驗的操作人員在圖上逐點均勻選點,操作過程極其耗時、費工費力,且對于含有沙漠、森林等紋理重復性高、相似度大的地區,難以辨別相同特征,誤匹配的幾率增大,無法達到自動化匹配要求。
目前的遙感影像特征點匹配方法包括兩類,即基于灰度的特征點匹配方法和基于特征的特征點匹配方法[6],后者克服了前者計算量大、對灰度敏感等缺點,是目前研究的主要方向。SURF算法是一種基于特征的特征點匹配方法,對旋轉、尺度縮放保持不變性,同時具有較高的運行速度,被廣泛應用于影像匹配領域[7]。然而,將SURF算法應用于高分影像匹配時存在以下問題:
1)算法來源于場景圖像的特征提取,數據量較小,對于擁有豐富紋理特征的遙感影像,特征提取階段會檢測到大量特征點,構造特征點描述子、匹配特征點將耗費過多時間,算法效率底下。
2)當遙感影像中存在重復或非常相似的場景時,產生誤匹配的概率將變大。
3)無法同時滿足保證算法運行效率和保持尺度縮放、旋轉不變性的需求。
針對上述問題,本文從特征提取和特征匹配兩個方面出發,通過控制特征點數量和分布情況,采用分部匹配策略和粗差控制策略,提出了一種基于SURF的改進特征點匹配算法,并應用于高分影像特征匹配中。
SURF算法借鑒了SIFT算法簡化近似的思想,采用積分圖像和盒式濾波器等技術,將圖像與模板的卷積運算轉化為若干次加減運算[8],檢測速度能達到SIFT算法的3倍以上。
SURF算法對特征點的檢測基于Hessian矩陣,假設圖像是一個灰度分布為L(x,y)的函數,在點(x,y)處,尺度為σ的Hessian矩陣為:

式中,Lxx(x,y,σ)、Lxy(x,y,σ)、Lyy(x,y,σ)為圖像中點(x,y)與高斯二階偏導數的卷積。
Hessian矩陣的行列式為:

實際運算中,高斯濾波器必須離散化,則Hessian矩陣行列式的近似值,即特征響應值為:

式中,Dxx、Dxy、Dyy為差分模板與圖像進行卷積的結果。
為在不同尺度上尋找特征點,需建立圖像的尺度空間。SURF算法只需改變方框濾波器即可獲取不同尺度下的影像,運算過程較簡單。該方式只需改變濾波器和模糊系數,生成不同大小、清晰度的影像,達到構建尺度空間的目的[9]。
為了獲取圖像的旋轉信息,需要確定特征點的方向。SURF算法首先統計特征點圓形鄰域內的Harr小波特征,即在特征點的圓形鄰域內,統計一定弧度扇形內所有點的水平、垂直Harr小波特征總和;然后將扇形以固定弧度大小的間隔進行旋轉,并再次統計該區域內Harr小波特征值;最后將值最大的那個扇形方向作為該特征點的主方向。
獲取特征點主方向后,以特征點為中心,首先將坐標軸旋轉到主方向,按主方向選取20σ×20σ的正方形區域,并將其等分為4×4個子區域,計算每個子區域的Harr小波響應;假設dx和dy分別為水平與垂直方向上的Harr小波響應,賦予高斯權重后統計每個子區域里響應的總和以及響應絕對值之和,得到一個四維向量所有子區域的向量構成該點的特征向量,最終生成總計64維的特征描述符,是SIFT特征的描述子的1/2[10]。
獲取SURF特征向量后即可進行特征點匹配,采用最近鄰搜索算法在歐式空間搜索查找每個特征點的兩個最近鄰特征點,若最近距離與次近距離的比值小于某個閾值,則接受這對匹配點[11]。
本文從4個方面對高分辨率遙感影像進行特征匹配,具體方法流程如圖1所示。首先對高分辨率參考影像進行降采樣,使采樣后的影像與遙感影像保持同一分辨率;再設置影像分割閾值,對高分辨率遙感影像進行影像分割,形成對應的匹配圖像;然后利用基于GPU運算改進的SURF算法進行特征點提取、描述、匹配;最后設置閾值刪除誤匹配點。

圖1 方法流程圖
作業過程中,一般選用較高分辨率的遙感影像來糾正較低分辨率的影像,為消除兩種影像間的尺度差,同時減小精確提取同名點時的運算量,先將參考影像分辨率降采樣為與遙感影像同等分辨率[12]。降采樣過程[13]如圖2所示。

圖2 降采樣過程
在遙感影像降采樣處理時,由于采樣點對應的位置坐標不是整數,因此通過對周圍像元值進行內插求取新的像元值。常見的內插方法包括最近鄰內插法、雙線性內插法和三次卷積內插法[14]。本文采用雙線性內插法實現參考影像的降采樣。雙線性內插法考慮投影點周圍4個相鄰像元的灰度值,并根據各自權重計算輸出像元灰度值,計算公式為:

式中,gxy為輸出像元灰度值;gi為鄰近點i的灰度值;pi為鄰近點對投影點的權重。
雙線性內插法具有平均化的濾波效果,且內插精度和運算量較適中,結果如圖3所示。

圖3 降采樣前后對比圖
高分辨率遙感影像一般來源于航天或航空影像,普遍具有地物紋理信息豐富、成像光譜波段多、影像數據量大的特點。同名點匹配算法一般來源于圖像處理領域對圖片特征點的提取需求,處理的影像大小一般較小。影像過大,處理時間則過長,同時讓高分辨率遙感影像特征點匹配失去了意義。為解決該問題,需對高分辨率遙感影像進行分割,再對分割后的遙感影像進行特征點匹配。影像分割應滿足的條件為:①既能滿足快速分割要求,又能滿足單幅影像特征點匹配的需要;②分割后的單幅影像大小不超過1 GB;③分割后的單幅影像信息應與原遙感影像保持一致。
傳統SURF算法會對整幅影像的所有區域進行特征點提取和描述,處理過程耗時嚴重,難以滿足實時性應用的要求。為了提升算法速度,本文考慮將GPU并行運算引入SURF算法的影像特征點匹配中,較好地解決了遙感影像特征點匹配效率低的問題。
將預處理后的輸入圖像數據,通過總線從內存上傳至顯卡顯存,再利于分段前綴加法在GPU上構建積分圖像。其實現原理為:


對于一幅圖像I(x,y),式(5)為對輸入圖像的每一行進行行前綴加法,式(6)為對行前綴加法的輸出進行列前綴加法得到的積分圖像。
在構建尺度空間時,各尺度空間圖像中各點的海森矩陣判別計算相互獨立,可利用GPU并行計算優勢改進尺度空間的構建速度。基于GPU并行加速優化的SURF算法的特征點提取與匹配過程為:①將輸入的遙感圖像從主機存儲器上傳至GPU顯示存儲器;②利用積分圖像對特征進行檢測,獲取特征位置和尺度參數;③結合遙感圖像和特征參數計算主方向;④計算特征向量,SURF描述符有16個區域,可采用16個線程計算一個特征的特征向量;⑤利用GPU加速特征點匹配過程;⑥將處理后的數據從GPU下載到CPU主機內存。
2.5.1 特征點匹配算法
特征點匹配算法主要包括樸素匹配法(BF)和快速最近鄰逼近搜索函數庫(FLANN)。FLANN算法包含了一些大數據量的快速搜索鄰近和高維特征的優化算法,比BF算法的匹配速度更快,因此本文采用FLANN算法進行特征點匹配[15]。
FLANN算法步驟為:①建立k-d樹將數據劃分為兩部分,對每個部分重復該過程直至為子結點建立快速搜索索引;②通過保存在堆棧中的搜索路徑回溯,計算得到第一個從堆棧中取出的點與基準匹配點的歐氏距離;③依次比較保存在堆棧中的節點大小,直至找出最小距離即為最鄰近匹配點。
2.5.2 誤匹配去除
由于圖像遮擋或背景混亂等原因,FLANN算法匹配的圖像會產生部分誤匹配點,需對其進行去除。去除誤匹配點采用比較最近鄰距離和次近鄰距離的方式,具體步驟為:①取參考圖像中的特征點,并找出與另一幅圖像中歐氏距離最短的兩個匹配點;②計算最鄰近距離與次鄰近距離的比率;③當比率值大于0.4時,去除匹配點,當比率值小于等于0.4時,保留匹配點。
本文的研究內容來源于對生產活動中地理國情監測影像的精度檢測工作,采用最新的1∶5萬更新DOM影像成果作為參考影像,以單景糾正后的地理國情監測衛星影像數據為原始影像進行特征點匹配實驗。影像參數如表1所示。實驗所用的硬件環境:CPU為Intel(R)Core(TM)i7-3770 3.4 GHz 8核,內存為16 GB,存儲為1 TB,GPU顯卡為Nvidia GeForce GTX 1050Ti,顯存為2 GB。

表1 影像參數
實驗采用的1∶5萬更新DOM數據為分幅數據,覆蓋地理國情單景衛星影像全范圍,首先對1∶5萬更新DOM影像進行降采樣,按照1∶5萬圖幅的范圍對單景影像進行裁切,然后利用GPU并行加速優化的SURF算法對降采樣后的影像和裁切后的影像進行特征點提取與描述,最后進行特征匹配與誤匹配點刪除。
本文算法采用C#語言、基于OpenCV的計算機視覺庫OpenCVSharp3以及開源柵格空間數據轉換庫GDAL2.2進行開發。
3.3.1 匹配效果圖
參與實驗的1∶5萬圖幅共30幅,對應裁切出30幅待匹配影像。對30組影像進行特征提取與匹配,匹配效果如圖4所示。

圖4 匹配效果圖
3.3.2 結果分析
隨機選取8組影像對,分別采用本文方法和傳統SURF算法進行特征點提取與匹配,對比結果如表2所示。
為進行精度評定,對于采用本文方法的匹配結果,每幅影像隨機選取5個點進行精度統計。影像自帶高斯—克呂格投影,逐點記錄其投影坐標,精度統計結果如表3所示。

表3 精度統計結果
由表2、3中數據可知:

表2 實驗結果對比
1)對于高分辨率、大數據量的影像匹配,改進算法的總匹配數與傳統SURF算法相差不大,匹配點數基本相同,改進算法基本保證了其正確性。
2)在總匹配點數基本一致的基礎上,改進算法大幅提高了匹配點的提取速度,約提高了4倍,使得算法應用于實際工程成為了可能。
3)匹配得到的特征點坐標平均差值為6.358 m,人工檢測單點精度要求5個像素,即10 m以內均滿足檢測要求,說明自動匹配結果滿足影像檢測與配準工作的需要,可替代人工特征匹配工作。
4)采用人工方式進行影像匹配需要作業人員逐景尋找同名點,耗費大量人力;而采用改進算法可快速找到大量精度較高的同名點,代替了人工工作,使計算機完成特征點匹配工序成為可能。
綜上所述,本文方法在滿足匹配正確性與較高匹配數的前提下,匹配耗時較短,當需要批量影像匹配時,可明顯提高匹配效率,節約大量人力。
針對高分辨率遙感影像人工匹配費時費力的問題,以滿足實際應用需要為導向,本文提出了一種高分辨率遙感影像特征點自動化匹配方法。首先采用參考影像降采樣和高分辨率遙感影像分幅裁切的方式,降低影像匹配的難度和要求;然后采用GPU并行運算提高SURF算法的計算速度;最后采用計算最近鄰距離與次近鄰距離比率的方式,刪除誤匹配點。結果表明,該方法的匹配速度比傳統算法提高了4倍,且擁有較高的匹配精度,實現了高分辨率遙感影像特征點的自動匹配,能滿足科學研究、工程應用快速響應的要求,具有較高的理論研究意義和實際應用價值。