本發(fā)明涉及高光譜遙感影像特征提取領域,特別是涉及一種基于SIFT-LPP的高光譜遙感影像特征提取方法。
背景技術:
高光譜遙感影像具有信息量大、光譜分辨率高的特點,更易于遙感地物的分類和識別,已成為遙感應用領域的一大熱點。然而,高光譜遙感影像的高分辨率是以數(shù)據(jù)維度的變大和數(shù)據(jù)間相關性的變大為代價,同時也給影像的分析和處理提出了挑戰(zhàn)。例如,信息的冗余度高、數(shù)據(jù)存儲和處理時間長、易產生維數(shù)災難現(xiàn)象等。因此,高光譜遙感影像在實際應用之前進行降維處理變得十分迫切,如何從數(shù)百波段中選擇出高精度的波段組合仍是一個亟待解決的問題。然而,現(xiàn)有技術中的高光譜遙感影像特征提取方法往往地物識別分類精度較低。
技術實現(xiàn)要素:
發(fā)明目的:本發(fā)明的目的是提供一種能夠解決現(xiàn)有技術中存在的缺陷的基于SIFT-LPP的高光譜遙感影像特征提取方法。
技術方案:本發(fā)明所述的基于SIFT-LPP的高光譜遙感影像特征提取方法,包括以下步驟:
S1:找到影像的特征關鍵點mi(x,y,σ),σ為高斯正態(tài)分布的方差;
S2:以特征關鍵點mi(x,y,σ)為中心,選取4*4大小的區(qū)域,構建128維特征向量SIFTi,并進行歸一化處理,獲得向量d=(d1,d2,…,dn)T,di∈RN,i=1,2,…,n;其中,n為維度;
S3:將向量d=(d1,d2,…,dn)T通過矩陣WPCA映射到PCA子空間,得到向量α=(α1,α2,…,αn)T;
S4:構造最近鄰圖G和相似矩陣S:將PCA子空間向量的數(shù)據(jù)點αi相應的n個節(jié)點圖用鄰圖G體現(xiàn),然后在αi相應的節(jié)點i和αj相應的節(jié)點j處設立邊緣,其中αi和αj之間相差k個最近的樣本點,并利用式(1)計算出相似矩陣S中的元素Sij;
S5:通過式(2)求解n個特征值和n個特征向量,將得到的特征向量構成矩陣WLPP,從而得到算法的映射矩陣W為W=WPCAWLPP;
XLXTw=λXDXTw (2)
式(2)中,X={x1,x2,…,xn},L=D-S,λ為實數(shù),w為映射矩陣W中的向量;
S6:對影像進行SVM分類,以平均分類精度來驗證算法的有效性。
進一步,所述步驟S1中的特征關鍵點mi(x,y,σ)通過以下步驟找到:
S1.1:對原始輸入的高光譜遙感影像I(x,y)進行高斯濾波,生成的尺度空間函數(shù)L(x,y,σ)如式(3)所示:
式(3)中,G(x,y,σ)為高斯函數(shù),如式(4)所示;
S1.2:在尺度空間內,構建高斯函數(shù)差分的DOG函數(shù)D(x,y,σ),如式(5)所示:
式(5)中,k為一個實數(shù);
S1.3:在生成的尺度空間內,通過對比當前尺度的圖像像素與相鄰的8個像素點以及上下不同尺度的圖像的各9個像素點的像素大小,選擇出局部的極值點作為特征關鍵點mi(x,y,σ)。
有益效果:本發(fā)明公開了一種基于SIFT-LPP的高光譜遙感影像特征提取方法,利用SIFT算子對LPP算法進行了改進,不單考慮了所要識別的地物本身的光譜特性,還兼顧了與其臨近的地物光譜信息以及空間布局,有效提高了地物識別分類精度。
附圖說明
圖1為現(xiàn)有技術中的LPP算法的示意圖;
圖2為本發(fā)明具體實施方式的SIFT特征提取過程的示意圖;
圖3為本發(fā)明具體實施方式生成的尺度空間的示意圖;
圖4為本發(fā)明具體實施方式的DOG尺度空間極值檢測的示意圖;
圖5為本發(fā)明具體實施方式的特征描述符的生成過程圖;
圖6為本發(fā)明具體實施方式的方法流程示意圖;
圖7為四種算法在不同降維維度下的分類結果。
具體實施方式
下面結合附圖和具體實施方式,對本發(fā)明的技術方案作進一步的介紹。
“流形學習”(Manifold Learning)是由Bregler等人在1995年首次提出來的,主要是學習維數(shù)比較高的數(shù)據(jù)內蘊幾何結構,發(fā)現(xiàn)出這些高維數(shù)據(jù)的本質規(guī)律,獲得高維歐氏空間中潛在的低維流形結構以及相應的對應關系,因此可以研究流行學習對高光譜遙感影像進行特征提取。局部保持投影算法(Locality Preserving Projection,LPP)屬于“流形學習”算法的一種,能夠挖掘出數(shù)據(jù)集的局部非線性特性和獲取數(shù)據(jù)集的最優(yōu)判別特征,達到維數(shù)約減的目的。LPP算法的基本原理是樣本在原始空間上以及其附近的位置關系映射到特征空間上仍舊互為相鄰狀態(tài),即在進行空間變換時可以保留數(shù)據(jù)的幾何關系和局部結構。而局部特征描述算子(Scale Invariant Feature Transform,SIFT)是一種基于尺度空間的,對影像進行縮放、旋轉或者仿射操作而保持尺度不發(fā)生變化的變換。當讀取一幅影像的基本信息并經過高斯濾波處理后,SIFT算子在影像的尺度空間通過求極值點、過濾低對比點以及邊緣點等操作得到穩(wěn)定的關鍵點(Key Points)作為特征點,確定其位置和尺度信息,而后取特征點附近區(qū)域的梯度主方向當作其方向特征,最后生成特征描述符。因此可以研究用局部不變特征(SIFT)算子對流型算法保局影射(LPP)算法進行改進的特征提取方法。
本具體實施方式公開了一種基于SIFT-LPP的高光譜遙感影像特征提取方法,如圖6所示,包括以下步驟:
S1:找到影像的特征關鍵點mi(x,y,σ),σ為高斯正態(tài)分布的方差;
S2:以特征關鍵點mi(x,y,σ)為中心,選取4*4大小的區(qū)域,構建128維特征向量SIFTi,并進行歸一化處理,獲得向量d=(d1,d2,…,dn)T,di∈RN,i=1,2,…,n;其中,n為維度;
S3:將向量d=(d1,d2,…,dn)T通過矩陣WPCA映射到PCA子空間,得到向量α=(α1,α2,…,αn)T;
S4:構造最近鄰圖G和相似矩陣S:將PCA子空間向量的數(shù)據(jù)點αi相應的n個節(jié)點圖用鄰圖G體現(xiàn),然后在αi相應的節(jié)點i和αj相應的節(jié)點j處設立邊緣,其中αi和αj之間相差k個最近的樣本點,并利用式(1)計算出相似矩陣S中的元素Sij;
S5:通過式(2)求解n個特征值和n個特征向量,將得到的特征向量構成矩陣WLPP,從而得到算法的映射矩陣W為W=WPCAWLPP;WPCA為XX;
XLXTw=λXDXTw (2)
式(2)中,X={x1,x2,…,xn},L=D-S,λ為實數(shù),w為映射矩陣W中的向量;
S6:對影像進行SVM分類,以平均分類精度來驗證算法的有效性。
其中,如圖2所示,步驟S1中的特征關鍵點mi(x,y,σ)通過以下步驟找到:
S1.1:對原始輸入的高光譜遙感影像I(x,y)進行高斯濾波,生成的尺度空間函數(shù)L(x,y,σ)如式(3)所示,生成的尺度空間如圖3所示:
式(3)中,G(x,y,σ)為高斯函數(shù),如式(4)所示;
S1.2:在尺度空間內,構建高斯函數(shù)差分的DOG函數(shù)D(x,y,σ),如式(5)所示:
式(5)中,k為一個實數(shù);
S1.3:在生成的尺度空間內,如圖4所示,通過對比當前尺度的圖像像素與相鄰的8個像素點以及上下不同尺度的圖像的各9個像素點的像素大小,選擇出局部的極值點作為特征關鍵點mi(x,y,σ)。
在步驟S1.3中,要實現(xiàn)特征關鍵點的精確定位,首先由位置(x,y)決定尺度空間的哪一層,而且它的梯度值m(x,y)和方向θ(x,y)可以通過以下公式得到:
θ(x,y)=tan-1(L(x,y+1)-L(x,y-1))/(L(x+1,y)-L(x-1,y)) (7)
在計算過程中,做出梯度的直方圖,對于當前特征點,取梯度直方圖上相對應的峰值為主方向。如果在圖上關于特征點存在其他接近主蜂值80%能量的方向時,認定為該點的第二主方向。所以,一個特征點也許不只有一個主方向,或許具有多個主方向,此時也就對應地具有多個特征向量描述。
將處理得到的影像根據(jù)目前特征點的主方向旋轉,以轉動后的領域范圍作為目標,將其劃分為個4*4子區(qū)域。計算每個子區(qū)域的8個方向梯度直方圖,接著對它們的位置進行排序,如此就產生了一個維數(shù)為128的SIFT特征向量,如圖5所示。此時得到的SIFT特征向量不再受尺度標準的變更、轉動等操作的干擾,而后歸一化其長度,在一定程度上能夠剔除光照變化的干擾。
為了驗證本具體實施方式提出的方法(SIFT-LPP-SVM)降維的有效性,另外設計了3組實驗,分別是A組(PCA-SVM)、B組(LDA-SVM)、C組(LPP-SVM),具體實驗內容設計如表1所示。
表1四組對比實驗
圖7呈現(xiàn)出維度不相同的條件下四組實驗的結果,在選擇完全相同的樣本情況下,A組的PCA算法是一種經典的線性降維方法,但是對于非線性的有效影像信息可能會丟失,因此處理實際的數(shù)據(jù)時效果不佳。在實驗初期,隨著維數(shù)的增加,B組的LDA降維方法增加速度比較快,但是當維數(shù)為25左右時,LDA算法的分類精度趨于穩(wěn)定,隨后提高不大。LPP算法也具有一定有效性,不過針對較為明顯非線性特征的數(shù)據(jù)集它只是非監(jiān)督的線性維數(shù)約簡方法,構建局部最近領圖時也未考慮樣本的類標識信息,分類的精度并不是十分理想。采用本具體實施方式的SIFT-LPP算法能夠非常好地通過特征點的梯度特征尋求到嵌入其中的線性結構,分類精度明顯優(yōu)于其他3種算法,LDA算法和LPP算法的特征子集的分類精度相差不大,PCA的分類精度較差。
此外,從圖7中還可知,隨著降維維數(shù)的變大,算法的分類精度增加速度變慢。這主要因為高光譜圖像遙感數(shù)據(jù)的不確定性和復雜性,所以不是降維的維數(shù)越高越好。這時,合適維度的確定變?yōu)楦吖庾V數(shù)據(jù)降維時的首要任務。
表2總體分類精度和kappa值
從表2可知,SIFT-LPP-SVM的總體分類精度和Kappa值比LPP-SVM算法、LDP-SVM算法以及PCA-SVM算法有了大幅度的提高,SIFT-LPP-SVM算法的總體分類精度最好,LPP-SVM總體分類精度優(yōu)于LDP-SVM和PCA-SVM。