ENVI最小距離、最大似然、支持向量機柵格圖像分類與分類後處理

瘋狂學習gis 發佈 2022-06-30T17:08:21.020898+00:00

本文介紹基於ENVI軟體,實現最小距離法、最大似然法與支持向量機三種遙感圖像監督分類方法的具體操作,同時進行分類後處理操作,並對不同分類方法結果加以對比分析。

  本文介紹基於ENVI軟體,實現最小距離法最大似然法支持向量機三種遙感圖像監督分類方法的具體操作,同時進行分類後處理操作,並對不同分類方法結果加以對比分析。

1 分類需求

  我們先來看一下本文需要實現的需求。現有一景北京部分地區高分一號遙感影像數據,空間解析度為16米,如下圖所示;我們需要對其加以分類操作,因此稱其為「待分類影像」。

  此外,為了方便我們在進行分類前的目視解譯(因為是用監督分類方法),還有一景同地區谷歌地球遙感影像數據,空間解析度為0.00002 °,如下圖所示;將其下稱「參考影像」。

  這裡需要注意,本文中待分類影像數據與參考影像數據之間地理參考信息是匹配的,即同一地物在兩景遙感影像中的位置是一致的;因此,我們可以直接開始後續的遙感影像分類操作。而若二者地理參考信息不匹配,則需要進行地理配准,具體方法可以參考 基於ENVI實現遙感影像柵格圖層手動地理配准 與 ENVI自動產生地面控制點GCP實現柵格遙感影像的自動地理配准 這兩篇文章。

  明確了具體需求,接下來就可以開始監督分類操作。

2 具體操作

2.1 ROI區域繪製

  首先,我們需要手動繪製兩個感興趣區(ROI)文件,分別作為本次遙感影像監督分類的訓練數據與精度驗證數據。

  在左側待分類影像的圖層名稱處右鍵,選擇「New Region Of Interest」選項。

  隨後,彈出「Region of Interest (ROI) Tool」窗口。我們首先在該窗口的「ROI Name」選項中輸入第一個繪製的地物類型名稱,這裡就以「林地」為例進行繪製。

  隨後,選擇「Geometry」一欄中的第一個選項,便可以在地圖中進行林地地物的繪製;每對一個區域完成繪製,雙擊滑鼠左鍵即可保存。

  繪製過程中,如果在待分類影像中無法看清具體的地物,則可以藉助空間解析度相對更高的參考影像,對地物的具體類型進行辨認。

  多次重複上述繪製操作,從而將研究區域不同空間位置的林地地物儘可能均勻地標註出來。

  完成對某一類型地物的繪製後,選擇「Region of Interest (ROI) Tool」窗口中的「New ROI」選項,開始對下一地物進行繪製。

  在這裡,我們緊接著以「水體」為例進行第二種地物類型的繪製。

  在繪製過程中,為了保證後期監督分類的準確性,一定需要細心。例如,對於需要將「林地」與「草地」加以區分的分類應用需求,在繪製ROI區域時一定需要注意區別樹木與草木。例如下圖就可以明顯看到樹木與草木區域之間的差別。

  在繪製過程中,可以定時選擇「Region of Interest (ROI) Tool」窗口中的「File」→「Save」選項,從而對已經繪製的數據進行保存。

  在對不同地物類型進行繪製時,在左側圖層列表的ROI文件處右鍵,選擇「Save As…」,即可對ROI文件實現另存;默認保存格式為.xml格式。如果需要.roi格式的文件,大家可以查看ENVI將感興趣區ROI文件由XML格式轉換為ROI格式的方法。

  通過上述操作,對全部需要進行分類的地物完成ROI的繪製,並在左側圖層列表中ROI文件處右鍵,選擇「Save」,即可保存當前ROI文件。

  接下來,我們需要對繪製好的ROI文件進行波譜可分離性計算。這裡的波譜可分離性代表ROI文件中每兩個地物類型之間的可分離情況,數值越大表示這兩個地物類型的差異越大,分類效果越好;如果數值較低(一般認為小於1時就較低),表示兩類地物之間的差異較小,分類效果可能不佳,可以重新劃分ROI區域或將二者合併。

  在「Toolbox」中選擇「Region of Interest」→「ROI Separability」選項。

  在彈出的文件選擇窗口中,輸入待分類影像。

  隨後,選擇需要參與計算的ROI地物類型。

  隨後,即可獲取波譜可分離性計算結果頁面。

  由於波譜可分離性的計算是基於每兩個ROI地物類型分別進行的,因此所得結果也是成對出現的;為了更直觀地獲取計算結果,我們可以直接對結果頁面的後半部分進行瀏覽。其中,這裡是按照升序排列的——大於1.9表明兩種地物類型的分離情況較好,而較小的數值(比如上圖中草地與裸土的波譜可分離性只有1.48)表明兩種地物類型的分離情況不太理想。

  我們可以對分離情況不太理想的地物類型區域加以修改,從而提升其與其它地物類型的波譜可分離性。例如,我這裡就對裸土的區域加以再一次的修改,以期獲取更高的波譜可分離性。

  對修改後的ROI文件重新計算波譜可分離性,得到新的結果如下圖所示(這裡我將原本「林地」類型的名稱修改為「Forest」了)。

  可以看到,修改後ROI文件的波譜可分離性最小值由原先的1.48升至1.68,說明對地物類型區域的修改是有效果的。

  通過以上方法,我們獲取了一個完整的ROI文件。我們選擇將這一文件作為後續監督分類過程中的輸入數據,即分類的標準依據,因此將其文件名稱命名為Classification.xml。此外,由於後期還需要對不同方法的分類結果加以精度評定,因此需要再一次執行上述操作,再生成一個包含有與第一個ROI文件相同的地物類型的新ROI文件,作為精度評定的依據;我們這裡將其命名為Test.xml。這裡需要注意,兩個ROI文件中各地物類型的區域儘量不要繪製到同一個地物。

2.2 最小距離法

  接下來,我們就開始基於最小距離法的監督分類操作。

  在「Toolbox」中選擇「Classification」→「Supervised Classification」→「Minimum Distance Classification」選項。

  在彈出的分類數據輸入窗口中,我們選擇待分類影像數據。

  隨後,進入「Minimum Distance Parameters」窗口。首先,在左上角「Select Classes from Regions」一欄中選擇需要進行分類的地物類型。接下來,「Set Max stdev from Mean」與「Set Max Distance Error」表示分類的閾值,前者表示以在平均值上加減一個標準差的範圍作為閾值,後者表示以某個像元的像素作為閾值;超出上述範圍的像素都不會納入分類。隨後,在右側配置分類結果圖像與分類結果規則圖像的保存路徑。關於分類方法的原理與參數的詳細解釋,大家可以點擊左下角的「Help」查閱;我這裡就直接用了默認的參數。

  隨後,單擊「OK」執行對應操作;獲取的分類結果圖像如下圖所示。

2.3 最大似然法

  接下來,我們就開始基於最大似然法的監督分類操作。

  在「Toolbox」中選擇「Classification」→「Supervised Classification」→「Maximum Likelihood Classification」選項,如下圖所示。

  在彈出的分類數據輸入窗口中,我們選擇待分類影像數據。

  隨後,進入「Maximum Likelihood Parameters」窗口。首先,在左上角「Select Classes from Regions」一欄中選擇需要進行分類的地物類型。接下來,「Set Probability Threshold」一欄表示分類閾值,小於指定可能性的像元都不參與分類。隨後,「Data Scale Factor」用以將帶有縮放係數的遙感影像像元數值恢復至原先的數值。隨後,在右側配置分類結果圖像與分類結果規則圖像的保存路徑。關於分類方法的原理與參數的詳細解釋,大家可以點擊左下角的「Help」查閱;我這裡就直接用了默認的參數。

  隨後,單擊「OK」執行對應操作;獲取的分類結果圖像如下圖所示。

2.4 支持向量機

  接下來,我們就開始基於支持向量機的監督分類操作。

  在「Toolbox」中選擇「Classification」→「Supervised Classification」→「Support Vector Machine Classification」選項,如下圖所示。

  在彈出的分類數據輸入窗口中,我們選擇待分類影像數據。

  隨後,進入「Maximum Likelihood Parameters」窗口。首先,在左上角「Select Classes from Regions」一欄中選擇需要進行分類的地物類型。接下來,在「SVM Options」一欄中對支持向量機的參數進行配置。

  其中,「Kernel Type」表示核函數,其每一個下拉選項均表示為一種在數學上表示核函數的不同方法;這裡核函數描述的就是對目標地物類型進行預測時,以其周圍數據點為參考時的權重。選擇不同的核函數,就需要對不同的參數加以進一步的配置。一般的,我們選擇「Radial Basis Function」即可,這個核函數可以適用於大部分分類場景。

  這裡我們就以「Radial Basis Function」為例來設置。選擇「Radial Basis Function」後,需要對「Gamma in Kernel Function」進行配置,其表示核函數中的一個參數。隨後,需要對「Penalty Parameter」參數進行配置,這個值代表懲罰參數。接下來,需要對「Pyramid Levels」參數進行配置,從而決定支持向量機分類過程中所用的圖像解析度。此外,還需要對「Classification Probability Threshold」參數進行配置,其表示分類概率閾值,如果某些像元對於任何一個地物類型的概率都小於此值,則該像元將不參與分類。隨後,在右側配置分類結果圖像與分類結果規則圖像的保存路徑。關於分類方法的原理與參數的詳細解釋,大家可以點擊左下角的「Help」查閱;我這裡就直接用了默認的參數。

  隨後,單擊「OK」執行對應操作;獲取的分類結果圖像如下圖所示。

  以上完成了最小距離法、最大似然法與支持向量機三種遙感圖像分類方法的具體操作。

3 精度評定

  接下來,我們需要對三種不同的遙感影像分類方法進行分類結果的精度評定。

  首先,需要將我們在本文2.1部分完成手動繪製的、作為精度評定依據的ROI文件Test.xml導入ENVI軟體中;此時,需要將其添加到待計算精度的分類結果圖像上,我們這裡就先以最小距離法所得結果為例介紹。

  接下來,在「Toolbox」中選擇「Classification」→「Post Classification」→「Confusion Matrix Using Ground Truth ROIs」選項。

  在彈出的分類數據輸入窗口中,我們選擇待計算分類結果精度的圖像數據,在這裡也就是最小距離法所得結果圖像。

  隨後,彈出「Match Classes Parameters」選項窗口。

  在這一窗口中,我們需要將Test.xml文件所對應的地物類型與所得分類結果圖像中地物類型兩兩相匹配;匹配結果出現在窗口下方的「Matched Classes」欄中。我這裡由於Test.xml文件所對應的地物類型與所得分類結果圖像中地物類型命名是一致的(除了分類結果圖像中的「Unclassified」),因此在「Matched Classes」欄中已經自動生成匹配好的地物類型。

  隨後,點擊「OK」,出現如下所示的參數配置窗口。我們在第一行中勾選全部選項,並在第二行中選中Yes,從而使得精度報告的呈現的數據、指標更多。

  點擊「OK」,即可獲得如下所示的精度報告。其中,我們可以重點關注分類的總體精度「Overall Accuracy」與Kappa係數「Kappa Coefficient」。

  隨後,我們對最大似然法與支持向量機所得到的分類結果圖像依次執行以上操作,得到三種圖像分類方法各自的精度評價指標如表1所示。

  關於最小距離法、最大似然法與支持向量機三種遙感圖像分類方法各自精度的對比分析,置於本文第5部分討論。

4 分類後處理

  通過前述最小距離法、最大似然法與支持向量機三種分類方法,我們獲得了各分類方法得到的直接結果圖像。而為了使得分類得到的結果得以更為廣泛的應用,我們往往還需要對其加以進一步處理,即分類後處理。分類後處理一般包括小斑塊處理、分類統計、修改各類別顯示顏色等步驟。

4.1 小斑塊處理

  我們首先進行小斑塊處理操作。通過這一操作,我們可以將原有分類結果圖像中零碎的地物類別加以消除,使得分類結果圖像變得平滑。這一操作有很多方法,包括「Majority/Minority Analysis」「Clump Classes」「Sieve Classes」等。我們這裡就對第一種方法進行操作。

  在「Toolbox」中選擇「Classification」→「Post Classification」→「Majority/Minority Analysis」選項。

  在彈出的分類數據輸入窗口中,我們選擇待進行小斑塊處理的分類結果影像數據。這裡以最小距離法得到的分類結果為例進行介紹,如下圖所示。

  隨後,彈出「Majority/Minority Parameters」窗口,如下圖所示。首先在「Select Classes」一欄中選中全部的地物類型;隨後,調整「Analysis Method」,這一參數表示具體執行主要分析還是次要分析。接下來,調整「Kernel Size」,其表示執行小斑塊處理的單個範圍大小,數值越大得到的處理結果越平滑。隨後,調整「Center Pixel Weight」,其表示中心像元的權重。

  隨後,點擊「OK」,即可獲得小斑塊處理後的結果圖像。

  隨後,我們對最大似然法與支持向量機所得到的分類結果圖像依次執行以上操作。

4.2 分類統計

  接下來,如果需要實現分類統計,我們可以在「Toolbox」中選擇「Classification」→「Post Classification」→「Class Statistics」選項。

  從而可以實現對分類情況的基本統計值、直方圖、協方差、協方差圖等加以計算或繪製。

4.3 修改類別顏色

  最後,我們進行修改各類別顯示顏色這一步驟。在左側圖層列表中,對任意一張分類結果圖的任意一個地物類型名稱右鍵,選擇「Edit Class Names and Colors」選項。

  在彈出的「Edit Class Names and Colors」窗口中,按照每一類地物類型的實際情況對其顏色加以修改。

  隨後,點擊「OK」即可完成對該結果圖的顏色配置。

  接下來,對其它分類結果圖進行同樣的顏色修改設置。這裡對其它圖像進行修改時,可以直接點擊「Import…」選項,利用我們設定好顏色的圖像進行自動設置。

5 結果對比

  通過表1可知,最小距離法、最大似然法與支持向量機所得遙感影像分類結果的總體精度分別為82.02%、96.50%與98.18%,Kappa係數分別為0.7014、0.9318與0.9637。由整體觀之,總體精度與Kappa係數的提升是同步的,二者增長趨勢與程度較為近似;三種方法中,最小距離法所得結果精度最低,支持向量機方法所得結果精度最高,最大似然法位居二者之間。其中,最小距離法精度明顯低於其餘二者,其總體進度僅為82%,Kappa係數僅0.70,而其它兩種方法總體精度均可達90%以上,Kappa係數均可達0.90以上。支持向量機方法精度水平非常高,總體精度甚至可達98%以上,Kappa係數達0.96以上,說明這一方法較之最小距離法與最大似然法,更加適合對城市遙感影像的分類工作。

  由三種方法的參數設定與操作時長來看,最小距離法與最大似然法在方法執行的簡單程度與效率方面,較之支持向量機方法更具有優勢;支持向量機方法需要調整的參數整體較多,且分類時長顯著大於前兩種方法。當然這也是三種分類方法在數學運算的複雜程度方面具有顯著差異導致的。

  由分類後處理的結果來看,經過小斑塊處理後的遙感影像分類結果整體更為平滑,但在一定程度上也丟了部分細節信息。這說明在今後的遙感影像分類應用中需要兼顧結果圖像平滑程度與細節信息之間的平衡。

關鍵字: