1. 程式人生 > 其它 >ENVI下基於知識決策樹提取地表覆蓋資訊

ENVI下基於知識決策樹提取地表覆蓋資訊

基於知識的決策樹分類是基於遙感影像資料及其他空間資料,通過專家經驗總結、簡單的數學統計和歸納方法等,獲得分類規則並進行遙感分類。分類規則易於理解,分類過程也符合人的認知過程,最大的特點是利用的多源資料。

決策樹分類主要的工作是獲取規則,本文介紹使用CART演算法獲取規則,基於規則提取土地覆蓋資訊。下圖是總體技術流程。

圖:總體技術流程圖

在獲取規則過程中,由於計算量較大,我們選擇一部分典型的區域作為實驗區獲取決策樹。

1.   準備資料

本文以L1T級的Landsat8OLI資料為例,資料已經過工程區裁剪。這一步主要是構建多元資料集。資料集由Landsat8OLI七個波段、NDVI、ISODATA非監督分類結果、DEM(具體使用那些資料可根據實際情況進行增減)。其中DEM使用30米的G-DEM,使用相同工程區向量進行裁剪。

  • 在Toolbox中,選擇/Spectral/Vegetation/NDVI,使用多光譜影像計算NDVI。
  • 在Toolbox中,選擇/Classification/Unsupervised Classification/IsoData Classification,最大分類數量為10,迭代次數為10,選擇路徑輸出分類結果。
  • 在Toolbox中,選擇/Raster Management/ Layer Stacking(5版本改名為Build Layer Stack),分別將7個波段、NDVI、ISODATA結果、DEM組合成一個10個波段的檔案。
  • 在圖層管理器中,開啟Edit Metadata,將Band names修改為Band1、2、3、4、5、6、7,NDVI,ISODATA,DEM。

2.   獲取規則

這裡使用CART演算法獲取規則,首先安裝ENVI下的CART擴充套件工具,可在ENVI AppStore上安裝(https://envi.geoscene.cn/appstore/)。

首先從影像中選擇一部分割槽域作為獲取規則的實驗區,

  • 顯示影像,工具欄上開啟ROI Tool。在ROI Tool面板中選擇矩形繪製工具,繪製一定大小的實驗區,這個區域包含土地覆蓋所有型別。
  • 在ROI Tool面板中,選擇File-> Subset data via ROIs,裁剪出實驗區。

注:ENVI5.6版本採用主選單->File->Save As->Save as… 方式進行裁剪。

    下面在實驗區影像中選擇一定數量的訓練樣本,利用訓練樣本獲取專家知識規則。

  • 顯示裁剪的實驗區影像,利用ROI Tool工具分別選擇5個型別的訓練樣本,訓練樣本的可分離度在8以上。

注:由於波段組合影象包括NDVI和ISODATA分類結果,其值範圍與Landsat8的7個多光譜波段範圍不一致,在計算樣本可分離度時候容易報錯。可以將NDVI和ISODATA分類結果通過歸一化處理成與多光譜資料一致的範圍,或直接使用多光譜資料計算分離度。

由於CART擴充套件工具基於4.4版本開發,需要在ENVI Classic中執行,在開始->程式裡選擇開啟ENVI Classic。

  • 選擇ENVI主選單->Classification->Decision Tree->RuleGen ->Classifier,選擇實驗區影像。
  • 選擇決策樹輸出路徑及檔名,單擊OK執行。

注:由於此工具包基於4.4版本開發,在之後版本上執行完得到決策樹檔案之後會自動退出ENVI,不影響決策樹規則檔案的使用。

圖:執行CART工具

  • 選擇ENVI主選單->Classification->Decision Tree->Edit Existing Decision Tree,開啟從實驗區獲取的決策樹規則,如下圖。
  • 在ENVI Decision Tree面板中,選擇Options->Execute,執行決策樹,可以對試驗區的範圍的進行分類。

圖:決策樹

  • 對分類結果進行驗證,類似選擇訓練樣本,選擇一部分ROI作為驗證樣本。在x介面中,Toolbox中選擇/Classification/Post Classification/Confusion Matrix Using Ground Truth ROIs,計算精度驗證混淆矩陣。

精度達到要求,規則的獲取工作就完成了。

3.   土地覆蓋資訊提取

這一步是將獲取的規則應用於整個影象。下面步驟是在ENVI5.x介面中實現。

  • Toolbox中,選擇/Classification/Decision Tree/Edit Decision Tree,開啟從實驗區獲取的決策樹規則。
  • 選擇Options->Show Variable/File Pairings,單擊第一列中的變數,全部替換為整個影像中對應的波段。
  • 選擇Options->Execute,執行決策樹,得到最終的土地覆蓋結果。

圖:修改變數

圖:地表覆蓋分類結果

4.   分類後處理

分類後處理根據需求選擇,包括更改類別顏色、分類統計分析、小斑點處理(類後處理)、柵矢轉換、精度驗證等操作。這裡不一一敘述了。