資料載入中
跳到主要內容區塊

logo

內文查詢 網站導覽

文字大小

縮小 放大 English 中文
:::

電子報

新興科技應用
農村發展及水土保持署
應用機器學習進行遙測影像的判釋與分類
期數 / 第118期
發布日期 / 2024.08.22
主筆 / 葉雯婷
責任編輯 / 陳國威、林駿恩
前言

由低空至高空的遙測影像可分為空載 (airborne) 及星載 (spaceborne) 獲得,前者使用飛機或無人飛行載具 (unmanned aerial vehicle, UAV),後者使用衛星搭載感測器,利用感測器所得的多光譜 (multispectral) 與高光譜 (hypespectral) 影像,可針對目標具備的不同光譜特徵進行後續分析。然而,部分地區受限於衛星再訪率與不同解析度的影響,人們常在影像空間解析度與判釋分類正確性間取捨。

透過機器學習演算法,UAV 的影像可與 地面解析度 (Ground Sample Distance, GSD) 等級的衛星影像相輔相成,進行自動化的資料分析,能大幅降低影像分類與判釋的時間。

本期延續 電子報第 19 期提到的 GEE 機器學習演算法協助災前災後影像分類,本文主要介紹利用 R 與 Python 的開源套件建立機器學習模型,對遙測影像進行地表植被的判釋。

機器學習模型

以大數據訓練機器學習建模的過程,可概略分為資料蒐集與預處理 (pre-processing)、特徵選擇 (feature selection) 與利用不同的演算法 (如決策樹、隨機森林、XGBoost 等) 等步驟建立分類模型及驗證模型 (圖 1) (Villoslada et al., 2024)。

圖 1、機器學習建模簡易流程示意圖。(修改自 Villoslada et al., 2024)
圖 1、機器學習建模簡易流程示意圖。(修改自 Villoslada et al., 2024)

機器學習主要分為監督式學習與非監督式學習,監督式學習使用加上標籤的資料來訓練模型,非監督式學習則是給予無標籤的資料,讓機器找出一定的規則分類資料。常見的監督式學習演算法有預測離散型變數 (discrete variable) 較佳的邏輯迴歸 (Logistic Regression)、可處理連續型與離散型變數的支援向量機 (Support vector machines, SVM)、藉由樹的階層概念在各節點挑選特徵進行決策的決策樹 (Decision Trees)、多個決策樹進行演算的隨機森林 (Random Forest) 及透過連續決策樹且後決策樹具更高權重的極限梯度提升 (Extreme Gradient Boosting, XGBoost)(表1)。

對於機器學習建模的準確度,Tamiminia 等人 (2020) 統計包含上述各演算法共 9 種演算法的 265 篇文獻,發現各演算法平均準確度皆達 85%。此外,Morde & Setty (2019) 利用可隨機生成樣本的機器學習資料庫 scikitlearn 訓練模型,發現近年出現在 Kaggle 交易資料數據處理競賽中的 XGBoost,其預測性與處理時間上也相當優秀 (圖 2)。

表 1、常見的機器學習模型。(整理自Osisanwo et al. 2017 與 https://reurl.cc/5d2K87)
表 1、常見的機器學習模型。(整理自Osisanwo et al. 2017 與 https://reurl.cc/5d2K87)
圖 2、不同演算法利用 scikitlearn 資料庫訓練模型的表現。
圖 2、不同演算法利用 scikitlearn 資料庫訓練模型的表現。
利用R與Python快速上手機器學習

早在 2002 年,Liaw & Wiener 即利用 R 軟體的 randomForest 套件進行隨機森林演算法將類別資料分類 (classification) 或將連續型資料進行迴歸 (regression),而隨時間演進,能處理分類、迴歸、聚類 (clustering) 與降維 (dimensionality reduction) 的 Scikit-learn 也開放給大眾使用。Scikit-learn 是整合多種機器學習演算法的 Python 模組,簡單且容易上手,相關的程式碼與文件在網站 (https://scikit-learn.org/stable/)(圖 3) 上皆能下載使用 (Pedregosa et al., 2011)。

圖 3、scikit-learn 開源機器學習資料庫示意圖。
圖 3、scikit-learn 開源機器學習資料庫示意圖。
辨識植株病害

Lan 等人 (2020) 利用 UAV 拍攝多光譜影像,先將影像去噪 (denoising) 並以特定波段計算植生指標,合併原始影像與植生指標產製影像庫,選取健康與染病的柑橘樹訓練樣本,第二步驟為特徵萃取 (feature extraction),以主成分分析進行降維 (dimension reduction) 保留資料中主要的特徵 (feature),最後以機器學習演算法訓練模型,利用 Scikit-learn 中的 GridSearchCV 函數將模型參數調整至最佳化後,分析 6 種不同演算法下的分類結果。成果顯示集成學習法的 AdaBoost 與 neural network 在預測健康株與感病株上表現較佳 (圖 4),特別是在加入植生指標進行波段合併後的影像,在各演算模型中皆較原始影像的辨識準確度來得高 (Lan et al., 2020)。

圖 4、不同機器學習演算法下的植株分類結果。黃色圓圈代表偽陰性,分類器將健康株預測為感病株,紅色圓圈為偽陽性,分類器並未正確預測感病株。
圖 4、不同機器學習演算法下的植株分類結果。黃色圓圈代表偽陰性,分類器將健康株預測為感病株,紅色圓圈為偽陽性,分類器並未正確預測感病株。
繪製植被地圖

Villoslada 等人 (2024) 的研究指出,極圈生態系統受氣候變遷影響,其植生組成正經歷快速變動,如何大範圍並準確地評估地表植生與土壤濕度極其重要,因此利用 UAV 拍攝極圈地表樣態多光譜影像,產製不同的植生指標與樹冠高度模型 (canopy height model, CHM),接著應用 RF 與 XGBoost 演算法建立預測模型,再以其驗證選用不同植生指標與 GSD 的 Sentinel-2 與 Landsat-8 衛星影像 (表 2) 模型。從預測結果發現,利用每像元空間解析度為 20 公尺的影像結合以紅光波段進行計算的植生指標,對表層土壤濕度的預測結果最佳 (R2 = 0.73),對林木生物量 (wood biomass) 的預測則是最差 (R2 = 0.38),而影像的像元愈小、預測參數愈多,預測的準確度愈低,可能是極圈植被需要更小的 GSD 才能更準確地反映現地狀況。

表 2、由 Sentinel-2 與 Landsat-8 衛星影像演算而來的 15 個植生指標。(Villoslada et al., 2024)
表 2、由 Sentinel-2 與 Landsat-8 衛星影像演算而來的 15 個植生指標。(Villoslada et al., 2024)

小花蔓澤蘭為臺灣最常見的入侵植物之一,在生態上的危害甚鉅,江等人 (2023) 利用 UAV 拍攝標的物影像後,以 RGB 波段進行影像分類,先以人工判釋 (表 3) 結合現地調查資料圈繪小花蔓澤蘭特徵建立訓練樣本,接著以光譜角映射法 (spectral angle mapping)、最大概似法 (maximum likelihood estimation) 與 隨機森林法 (Random Forest) 進行監督式分類,總體分類準確度以隨機森林法最佳 (圖 5),不過也可依據影像的空間解析度高低與目的選取他法進行分類。

表 3、影像各分類特徵選取標準及定義。(江等人,2023)
表 3、影像各分類特徵選取標準及定義。(江等人,2023)
圖 5、小花蔓澤蘭物件導向影像分類結果。(a)小花蔓澤蘭花期物件導向聚合之影像(b)光譜角映射分類結果(c)最大概似法分類結果(d)隨機森林法分類結果。
圖 5、小花蔓澤蘭物件導向影像分類結果。(a)小花蔓澤蘭花期物件導向聚合之影像(b)光譜角映射分類結果(c)最大概似法分類結果(d)隨機森林法分類結果。
小結

隨著使用 UAV 現地調查的普及化與資源衛星多光譜影像的可得性,對於大範圍區域的影像辨識與分類可更加快速與便捷,加上便利性的開源 Python 機器學習套件,讓新手也可以快速入門。再者,透過機器學習演算法結合 UAV 與衛星影像,除可增加衛星影像判釋模型所需的訓練與驗證資料集外,亦能降低衛星影像因較低空間解析度使地物反射光譜具異質性,所產生的混合像元現象,以增進影像精度並提高訓練/驗證資料的代表性。

高速運算晶片的開發與雲端運算的普及化,遙測技術應用的全面性將更廣泛地推進,往後在土地勘查、物件偵測與災損辦識上,更能進行高精確度的判釋與分類。

參考資料

文獻資料:
1. 江秉鴻、陳建璋、魏浚紘。2023。應用無人空中載具影像調查外來入侵植物小花蔓澤蘭。航測及遙測學刊。28(2): 103-123。
2. Lan, Y., Huang, Z., Deng, X., Zhu, Z., Huang, H., Zheng, Z., Lian, B., Zeng, G., & Tong, Z. (2020). Comparison of machine learning methods for citrus greening detection on UAV multispectral images. Computers and Electronics in Agriculture. 171: 105234.
3. Liaw, A., & Wiener, M. (2002). Classification and Regression by Randomforest. R News. 2: 18-22.
4. Pedregosa, F., Varoquaux, G., Gramfort, A., Michel, V., Thirion, B. Grisel, O., Blondel, M., Prettenhofer, P., Weiss, R., Dubourg, V., Vanderplas, J., Passos, A., Cournapeau, D., Brucher, M., Perrot, M., & Duchesnay, É. (2011). Scikit-learn: Machine Learning in Python. Journal of Machine Learning Research. (2011).12(85): 2825-2830.
5. Tamiminia, H., Salehi, B., Mahdianpari, M., Quackenbush, L., Adeli, S., & Brisco, B. (2020). Google Earth Engine for geo-big data applications: A meta-analysis and systematic review. ISPRS Journal of Photogrammetry and Remote Sensing. 164: 152-170.
6. Villoslada, M., Berner, L. T., Juutinen, S., Ylänne, H., & Kumpula, T. (2024). Upscaling vascular aboveground biomass and topsoil moisture of subarctic fens from Unoccupied Aerial Vehicles (UAVs) to satellite level. Science of The Total Environment, 933: 173049.