,,,,
(1. 貴州大學林學院,貴州 貴陽 550025; 2. 貴州大學礦業學院,貴州 貴陽 550025)
影像匹配的用途極為廣泛,目前的研究熱點主要集中在多視角傾斜航空影像的三維建模[1]、目標檢測與跟蹤[2]等方向。針對無人機遙感影像的匹配和拼接,部分學者開展了一定的研究,考慮AKAZE(accelerated KAZE)算法在構建非線性尺度空間時,能較為完整地保存影像紋理結構和局部信息[3-4],文獻[5]提出把AKAZE算法和相位相關法結合在一起對紋理缺乏的地區影像進行匹配。該匹配方法初步解決了紋理缺乏地區的影像匹配問題。文獻[6]提出一種快速有效的SIFT(scale invariant feature transform,SIFT)特征提取算法,該算法提取特征點的數量顯著降低,較大程度提升了算法效率,但耗時情況還有待改善。文獻[7]提出一種改進BRISK(binary robust invariant scalable key points,BRISK)特征的快速圖像配準算法,該配準算法在保持速度的基礎上達到亞像素級配準精度,并具有優越的場景適應性能。文獻[8]針對小型無人機航拍圖像視點離散、視角變化有一定運動規律的特點,結合Harris特征點和SIFT特征向量的優勢,對SIFT算法進行了改進,試驗證明了該改進算法在準確度和配準耗時等方面得到了較大的提高。由于SIFT算法的實時性較差,文獻[9]首先提出了一種特征點檢測算法(oriented fast and rotated BRIEF),該算法用FAST[10](features from accelerated segment test)來對影像提取特征點,其特征采用BRIEF[11](binary robust independent elementary features)來描述,該算法較大程度上降低了提取特征點的總耗時。文獻[12]結合SIFT和RANSAC(RANdom sample consensus,RANSAC)[13-14]算法對InSAR影像配準,該方法可得到穩定、可靠的匹配點對,但運算速度還有待進一步提升。文獻[15]基于SURF算法和極線約束條件對無人機影像進行匹配,試驗證明了極線約束條件下的無人機影像匹配在誤匹配減少的前提下能獲得更多準確的特征匹配集。在分析上述算法優、缺點基礎上,本文提出一種基于特征組合和RANSAC算法的無人機遙感影像匹配方法。AKAZE特征檢測算法是KAZE[16]算法的改進算法,SIFT算法具有良好的尺度與旋轉不變性[17],本文首先采用AKAZE提取影像特征點,然后利用SIFT算法描述特征向量和獲得主方向,最后基于單映射變換矩陣的RANSAC算法進行精準匹配。針對無人機遙感影像匹配中提取特征點的時長、匹配正確率等指標,對基于特征組合、AKAZE、SIFT和BRISK這4種算法的無人機遙感影像匹配進行試驗對比分析,驗證基于特征組合與RANSAC算法的匹配方法在無人機遙感影像匹配上的可行性。
本文的特征組合檢測算法提取特征點步驟如下:
(1) 利用AOS算法和可變傳導函數建立非線性尺度空間,然后進行尺度歸一化,得到AKAZE特征點。
(2) 利用SIFT算法描述特征向量,獲得特征點的主方向。
1.1.1 非線性擴散濾波
非線性擴散濾波:在不同尺度上變化的影像亮度記為L,將其表達為某一關系的流動函數的散度,數學表達式如下
(1)
選取的傳導函數c(x,y,t)如果合適,則可得到擴散自適應于圖像的局部結構。t為尺度參數,影像的表達形式復雜程度隨著t值的增大而減小。傳導函數的數學表達式為
(2)
1.1.2AOS算法
因為非線性偏微分方程無直接解,本文采用隱式差分來進行求解。本文隱式差分利用的數學形式為
(3)
式中,Al為影像在各維度(l)上傳導性矩陣。此方程的數學形式解為
(4)
式中,Al為對角占優的三對角矩陣;步長(τ)可以任意取值,并利用Thomas算法加速求解。
1.1.3 非線性尺度空間的構造
非線性尺度空間構造方法為:尺度級別成對數遞增,存在M組octaves,各個octave又存在P個sub-level。AKAZE每一個層級利用的分辨率和最初的圖像一致。M組octave與P個sub-level在本文中分別記作m和p,尺度參數σ通過下式與m和p互匹配

p∈[0,1,…,P-1],i∈[0,1,…,N]
(5)
式中,σ0為給定的初始值;N為尺度空間的影像總數,N=M×P。式(6)將σi(單位為像素)轉變為ti(進化時間)
(6)
影像處理過程中,用高斯濾波預處理AKAZE特征檢測算法,然后獲得處理影像的梯度直方圖,進而可得到對比度參數。采用AOS算法,并依據一組進化時間,來完成非線性尺度空間的構建,其數學表達式為
(7)
1.1.4 特征點檢測
采用搜索不同尺度歸一化后獲得的Hessian局部極大值點。Hessian矩陣可由下式得到
(8)
式中,將尺度參數σi取整得到σ。為了獲得極值點,將所有像素點與它周圍的全部相鄰像素點相比,將中心像素點和周圍26個相鄰點比較。確定特征點所在位置后,繼續進行亞像素精準定位,該方法的泰勒展開表達式為
(9)
特征點的亞像素坐標的解為
(10)
1.2.1 計算特征點主方向
(1) 當特征點的位置確定后,在特征點所在的尺度獲取鄰域,把該鄰域均分為36個方向計算直方圖,獲得的直方圖中最大值對應的方向就是特征點的主方向。
(2) 對計算所得直方圖峰值而言,與最大直方圖峰值相比,如該峰值所占比例達到最大直方圖峰值的80%以上,則把此方向視作輔方向。約有1/5的特征點會存在一個甚至更多的輔方向,并且這些特征點在匹配中起到非常重要的作用,輔方向極容易影響匹配過程的穩定性。
1.2.2 計算特征點描述子
要想獲得具有較強獨立性的描述子,確保組合特征檢測算法的匹配正確率,需滿足以下幾個條件:①還需校正已得到的主方向;②利用校正后的主方向生成描述子,進而得到128維的特征向量;③需對特征向量進行歸一化處理,減弱光照對匹配率的影像。
隨機抽樣一致性算法是在一組存在“外點”的數據集里面,尋找一個符合該模型最佳的單映射變換矩陣H(8個未知參數,至少存在4組匹配點對),采用尋找到的最優矩陣來滿足特征點數量最多。
文中基于單映射變換矩陣的RANSAC算法進行精匹配的具體步驟如下:
(1) 從特征組合算法提取的特征匹配點對中任意取出4個樣本,并保證這4個樣本之間不共線,利用RANSAC算法,計算出H矩陣,記為模型Q。
(2) 將模型Q應用于全部數據集,計算符合該模型的點數和投影誤差,若誤差小于閾值ε,則對應的代價函數最小,此匹配點加入內點集,計算公式如下
(11)
式中,(x′,y′)為原影像角點坐標。
(3) 任意取4組匹配點對,不斷地進行步驟(1)、(2)的重復計算。
(4) 若通過以上步驟所得的內點集元素個數多于最優內點集,則把目前元素集視為最優內點集。當迭代次數不小于k時,可得到目標影像和待匹配影像之間的透視變換模型,把不滿足此模型的點對刪除,進而提高影像的匹配正確率。
為了驗證本文方法在無人機遙感影像的匹配正確率及速度上的優勢,試驗利用4種算法對分辨率為580×387像素、640×426像素的兩組遙感影像數據進行試驗及對比分析,分析試驗耗時情況及匹配精度。本次試驗運行環境為:運行內存8 GB,AMD FX(tm)-8300 Eight-Core Processor 3.30 GHz的工作站,基于VS2015的Open-CV3.4.0計算機視覺庫,Win10系統作為開發平臺。試驗所用的無人機遙感影像如圖1所示,分別為影像對(a)、(b),影像對(a)地形起伏大、局部存在陰影,影像對(b)影像變形大。
試驗結果對比分析如下:
(1) 表1為特征組合、AKAZE、SIFT、BRISK這4種算法分別對(a)、(b)影像對的特征點提取數及耗時時長的試驗結果。
由表1可看出,對于影像對(a)而言,AKAZE算法提取的特征點數約為SIFT算法提取的特征點數的25%,為BRISK算法提取的特征點數的12%,AKAZE+SIFT的特征組合算法提取的特征點數和AKAZE算法的提取數量相等。從耗時情況來看,特征組合算法的提取耗時高于AKAZE算法,低于SIFT算法,但仍然高于BRISK算法。對于影像對(b)而言,AKAZE算法提取的特征點數約為SIFT算法提取的特征點數的20%,約為BRISK算法提取的特征點數的8%,AKAZE+SIFT的特征組合算法提取的特征點數和AKAZE算法的提取數量相等,特征點提取耗時介于AKAZE算法和SIFT算法之間,仍高于BRISK算法。究其原因,是由于AKAZE算法在構建非線性尺度空間時耗時較多造成的。

表1 4種算法對影像的特征點提取數及耗時情況 (特征點數/ms)
(2) 本研究分別對影像對(a)、(b)采用特征組合檢測算法、AKAZE、SURF和BRISK算法進行特征點檢測試驗,并利用基于單映射變換矩陣的RANSAC算法刪除誤匹配點對。由于篇幅限制,本文只列出特征組合+RANSAC算法的匹配效果圖。

表2 4種算法的試驗相關指標數據統計
由圖2、圖3及表2可看出:
(1) 對于地形起伏大、局部存在陰影的影像對(a),就匹配總耗時而言,特征組合的總耗時高于AKAZE算法,低于SIFT算法且遠低于BRISK算法的總耗時,約為BRISK算法耗時的30%,說明特征組合檢測算法在匹配速度上較好地繼承了AKAZE算法的快速匹配性能。就匹配正確率而言,特征組合的匹配正確率為95%,均高于另外3種算法。特征組合、AKAZE、SIFT和BRISK這4種算法的正確匹配點對分別是156、128、160和120,可以看出特征組合后的正確匹配點對高于AKAZE算法和BRISK算法,接近于SIFT算法。
(2) 對于影像變形大的影像對(b),就匹配總耗時而言,特征組合的總耗時情況仍然介于AKAZE和SIFT算法之間,遠低于BRISK算法的總耗時,約為BRISK算法的19%。就匹配正確率而言,特征組合、AKAZE、SIFT和BRISK這4種算法分別為88%、92%、82%和84%,可以看出特征組合檢測算法的匹配正確率略低于AKAZE算法,高于另外兩種算法。就正確匹配點對而言,特征組合的正確匹配點對多于AKAZE算法,略低于SIFT和BRISK算法。綜合分析試驗結果,基于特征組合與RANSAC算法的無人機遙感影像匹配方法在滿足匹配正確率與正確匹配點對的前提下,其匹配耗時更短。考慮到后續工作是對多張無人機遙感影像進行匹配,當需匹配的無人機遙感影像數量眾多時,該匹配方法更有利于無人機遙感影像的匹配。
無人機遙感影像匹配是無人機遙感影像拼接和三維重建的核心工作。從本文基于特征組合與RANSAC算法的無人機遙感影像匹配方法的試驗結果可以看出:特征組合算法具有匹配速度快和冗余計算量少的優點。對于無人機遙感影像的匹配效果而言,本文提出的匹配方法從整體上優于AKAZE算法、SIFT算法和BRISK算法。與常用匹配方法相比,本文的匹配方法更加有效和快速,更適合于無人機遙感影像匹配。