張海芹 張銀鳳 王 浩
(黑龍江地理信息工程院,黑龍江 哈爾濱150081)
異構尺度的遙感影像,僅通過傳統(tǒng)的影像分析和處理,很難實現(xiàn)高效的地形圖要素匹配及分析。在地理信息數(shù)據(jù)生產(chǎn)過程中,通過建立影像控制點數(shù)據(jù)庫的方式并應用特征算法,可以在一定程度上解決控制點自動匹配的問題。英國科學家David Lowe在1999年公開發(fā)表了SIFT算法,其特點是在角度不變、光線均衡的條件下,匹配跟蹤目標特征點,提高了特征點位匹配的效率。本文通過對SIFT算法進行進一步優(yōu)化和改進,實現(xiàn)高效除去不穩(wěn)定點,進而實現(xiàn)影像間高效特征匹配。
1.SIFT特征點算法簡介
SIFT算法是建立在尺度空間的基礎上,通過檢索異構尺度空間上的影像特征點,實現(xiàn)多尺度影像特征點統(tǒng)一的過程,SIFT算法是提取影像某一部分的特征點算法,具有一定的可擴展性。SIFT算法的基本步驟是通過初步檢測極值點,然后除去不穩(wěn)定點噪聲,進而實現(xiàn)影像之間的特征匹配[1],其具體步驟(如圖1所示):
圖1 SIFT算法具體步驟
(1)SIFT特征是圖像的局部特征,對平移、旋轉、尺度縮放、亮度變化、遮擋和噪聲等具有良好的不變性,對視覺變化、仿射變換也保持一定程度的穩(wěn)定性。
(2)獨特性好,信息量豐富,適用于在海量特征數(shù)據(jù)庫中進行快速、準確匹配。
(3)多量性,即使少數(shù)的幾個物體也可以產(chǎn)生大量SIFT特征向量。
(4)速度相對較快,經(jīng)優(yōu)化的SIFT匹配算法甚至可以達到實時的要求。
以某地航空影像為例,目標影像在未經(jīng)過重采樣的前提下直接匹配,由于影像分辨率過高,未能實現(xiàn)較好的特征點匹配(如圖2所示),因此需要對目標影像進行重新采樣,從而提升特征點位匹配率[2,3]。
圖2特征點直接匹配
對目標影像進行降低采樣率,能夠有效提升特征點匹配率。影像降低采樣率的方法有線性插值法、鄰近像元法和三次卷積法等,采用任何一種方法均可實現(xiàn)較好的影像降采樣效果。經(jīng)過實驗分析,將目標影像降采樣與控制點影像分辨率近似時,匹配到的同名像控點數(shù)量較多[4](如圖3所示):
圖3降采樣后匹配特征點情況
在控制點影像數(shù)據(jù)庫中,同一點位可能存在較多的特征點影像,這些影像往往是不同來源不同時相的,影像紋理表達的地物特征也不盡相同,經(jīng)過實驗可知,在影像地物特征明顯、影像清晰的情況下,匹配效果較好[5,6],在影像地物特征不明顯、影像模糊的情況下,匹配效果一般,因此應盡量選擇地物特征明顯的控制點影像進行匹配,在控制點影像數(shù)據(jù)采集的時候,也應該盡量選取地物特征明顯的影像錄入數(shù)據(jù)庫,不同地物特征控制點影像匹配結果(如表1所示):
表1不同地物特征控制點影像匹配結果
首先對目標影像確定影像范圍,根據(jù)分辨率和精度要求,通過SHIF算法,提取待匹配控制點,最終得到帶匹配的影像相片,控制點提取基本流程(如圖4所示)。在匹配過程中要特別注意目標影像的分辨率和精度要求,相同來源的影像要優(yōu)先考慮,控制點分布應盡量均勻[7,8]。
圖4控制點提取基本流程
尺度屬于圖像信息的一種,通常情況下,我們可用大尺度來表示圖像細節(jié)特征,用小尺度來描述影像概貌特征。主要目的是得到多尺度的圖像空間序列,利用圖像的多尺度特性,并在此基礎上提取目標的輪廓,再在輪廓上提取特征點[9,10],其目的也就是檢測在尺度變化下仍然穩(wěn)定的特征,這也是尺度不變的含義。如式(1)所示:
式(1)中,是圖像像素坐標;σ為尺度空間因子;G是高斯函數(shù)。
SIFT算法建議在某一個尺度上檢測極值點,可以通過對相鄰兩個尺度空間的圖像相減得到一個高斯差分(DOG)的響應值圖像是高斯尺度空間;,如式(2)所示:
式(2)中,k為常數(shù)因子。
DOG描述的就是圖像的輪廓,SIFT算法就在此基礎上提取極值點(特征點),實際就是求函數(shù)的極值點,每一個像素點都要與其相鄰點進行比較,包括圖像域和尺度域,當其是這些點中的極值點(最大值或者最小值)時,就認為其是該圖像的特征點。
對上面得到的點進行插值運算,采用式(3)進行最小二乘擬合,用得到的擬合曲面極值來確定特征點的位置。DOG函數(shù)的泰勒展開式如式(3)所示:為尺度空間坐標的偏移量,求導并令其為0,得到X的極值如式(4)所示:
式(3)中,
采用多次修正的方法進行點的精確定位,當三個偏移量有任何一個大于0.5時,就改變位置重新進行計算,直到滿足要求為止,將式(4)代入式(3),得到式(5):
由于D0G函數(shù)在圖像邊緣具有很強的邊緣效應,會給特征點的檢測帶來影響,所以要進一步排除邊緣效應,函數(shù)特征點在圖像橫跨邊緣方向具有較大的主曲率,而在垂直方向具有較小主曲率[11,12],可以通過計算在該點位置尺度的階的Hessian矩陣得到主曲率的值,如式(6)所示:
D0G函數(shù)的主曲率與H矩陣特征值是正比關系,令最大、最小的特征值分別為和,它們之間的比值為,則:
式(7)中,tr(H)和Det(H)如式(8)和式(9)所示:隨著 的增大而增大,建議取值,若時將特征點保留,否則剔除。
根據(jù)特征點的尺度,可以求出圖像任一像素梯度的模值和方向,如式(10)和式(11)所示:
通過周圍采樣點梯度幅值的加權處理,確定特征點的主方向,并以幅度為主峰值80%的方向為特征點的輔助方向。這樣一來,特征點的檢測結束,每個特征點都有三個信息:位置、尺度、方向;同時,也使特征點具有平移、縮放以及旋轉不變性,進而實現(xiàn)對影像的匹配。
在特征點計算后,用一組向量將其描述出來,作為目標匹配的依據(jù),也可以是特征點具有更多的不變性,以特征點為中心,范圍為采樣窗口(如圖5所示):
圖5采樣窗口
圖5中左圖的每一小格都代表了特征點領域的一個像素,箭頭代表梯度方向,長度代表了幅值,先把它分為4×4的小格,每個小格內的梯度方向把0°-360°均分為8個方向,計算每個方向的幅值累加值,這樣一來一個特征點的描述就具有128維向量表征。為了增強匹配算法的穩(wěn)定性,圖中一般取4×4=16個種子點進行描述,為了去除光照影響,還需要對其進行歸一化處理,尺度空間特征描述(如圖6所示):
圖6尺度空間特征描述
利用SIFT算法對相鄰兩張航空影像進行實驗,其中SIFT提取點的主方向用紅色箭頭表示,尺度的大小用箭頭的長度來表示(如圖7和圖8所示),圖中高斯空間為4,每組5層,經(jīng)過計算統(tǒng)計,在左片上共有2245個特征向量,右片上共有1979個特征向量。SIFT算法提取的特征點不只分布在特征紋理清晰的地方,同時特征紋理不明顯的地方也能提取出大量的特征點信息。
圖7匹配左片
圖8匹配右片
當用SIFT算法將兩幅圖像的特征向量提出來后,需要對特征點進行粗匹配,可以通過度量關鍵點特征向量之間的歐式距離來完成。主要思想是:取一幅圖像中的一個關鍵點,計算其與另一幅圖像中每個關鍵點的歐式距離,計算最近距離和次近距離之間的比值,如果小于設定的閾值,那么就認為這一對特征點匹配上了。經(jīng)過采用歐式距離進行粗匹配之后,在兩幅影像中共有725對同名特征點成功匹配(如圖9所示):
圖9 SIFT算法粗匹配影像
生成特征點后我們就可以進行兩幅圖像之間的匹配,得到同名點,利用這些同名點我們就可以進行圖像拼接、空三處理以及質量檢查,但都需要一個前提,就是沒有誤匹配點,否則都會給結果帶來明顯的誤差。所以,在進行SIFT特征匹配后,需要對誤匹配點進行剔除。
RANSAC算法(隨機抽樣一致性)是一種參數(shù)估計算法,主要就是根據(jù)不同的任務要求,設計不同的目標模型,在原始數(shù)據(jù)中隨機抽取樣本,每組樣本的數(shù)據(jù)量由目標模型而定,然后分別估計目標模型的參數(shù)初值,接著再計算每組參數(shù)初值所對應的局內點(滿足參數(shù)模型函數(shù))和局外點(不滿足參數(shù)模型函數(shù)),如果局內點數(shù)量越多,說明估計的模型夠合理,這個過程被重復執(zhí)行固定的次數(shù),直到得到最理想的結果。
RANSAC計算步驟:
(1)設樣本數(shù)k為無窮大,樣本計數(shù)器為0;
(2)從匹配點中隨機選擇4個點對,求解投影變換系數(shù)M;
(3)利用投影變換系數(shù)計算其他點的誤差d,計算所有誤差的中值med(d),根據(jù)中值計算內點的閾值t,,當時是樣本個數(shù),m為計算模型參數(shù)需要的數(shù)據(jù)量。根據(jù)閾值判斷內點,計算誤匹配的概率
(4)樣本計數(shù)器t加1;
根據(jù)RANSAC算法得到精匹配圖(如圖10所示):
圖10粗差剔除后精匹配影像
通過實驗分析應用基于特征的影像拼接方法,在生成整體影像過程中,由于拼接誤差的積累,會使得影像產(chǎn)生嚴重的變形,越到最后影像的變形越大,拼接效果越差。
通過對SIFT算法的應用研究,可以得到如下結論:在控制點影像匹配過程之前要先對目標影像進行降采樣處理,降采樣方法采取任意方法均可,影像匹配時,應選取地物特征明顯的地區(qū),在控制點影像數(shù)據(jù)采集的時候,也應該盡量選取地物特征明顯的影像錄入數(shù)據(jù)庫。