遙感資源大放送(上):用開源程式碼,訓練土地分類模型

內容概要:土地分類是遙感影像的重要應用場景之一,本文介紹了土地分類的幾個常用方法,並利用開源語義分割程式碼,打造了一個土地分類模型。

關鍵詞:遙感資料集 語義分割 機器視覺

遙感影像是開展測繪地理資訊工作的重要資料,對於地理國情監測、地理資訊資料庫更新等意義重大,在軍事、商業、民生等領域發揮了越來越重要的作用。

近年來,隨著國家衛星影像獲取能力的提升,遙感影像資料採集效率大幅提升,形成了低空間解析度、高空間解析度、寬視角多角度、雷達等多種傳感器共存的格局。

軌道中的 Landsat 2 正在收集地球遙感資料

該衛星是 NASA 陸地衛星計劃中的第 2 顆

於 1975 年發射,旨在以中等解析度獲取全球季節性資料

傳感器種類齊全,滿足了不同用途的對地觀測需求,但是也造成了遙感影像資料格式不統一、耗費大量儲存空間等問題,在圖像處理過程中常常面臨較大的挑戰。

以土地分類為例,以往利用遙感影像進行土地分類,往往依賴大量人力進行標註和統計,耗時長達數月甚至一年的時間;加上土地類型複雜多樣,難免也會出現人為統計失誤。

隨著人工智慧技術的發展,遙感影像的獲取、加工、分析,也變得更加智慧和高效。

常用的土地分類方法

常用的土地分類方法,基本上分為三類:以 GIS 為基礎的傳統分類方法、以機器學習演算法為依據的分類方法,以及利用神經網路語義分割的分類方法。

傳統方法:利用 GIS 地理資訊系統分類

GIS 是處理遙感影像時常需要用到的工具,全稱 Geographic Information System,又被稱為地理資訊系統。

它把關係資料庫管理、高效圖形演算法、插值、區劃和網路分析等先進技術集成起來,讓空間分析變得簡單易行。

利用 GIS 對伊莉莎白河東部支流地區進行空間分析

利用 GIS 的空間分析技術,可以獲取對應土地類型的空間位置、分佈、形態、形成和演變等資訊,識別土地特徵並進行判斷。

機器學習:利用演算法分類

傳統的土地分類方法包括監督分類和非監督分類。

監督分類又稱訓練分類法,它是指用已確認類別的訓練樣本像元,跟未知類別像元作比較和識別,進而完成對整個土地類型的分類。

在監督分類中,當訓練樣本精度不夠時,通常會重新選擇訓練區或人為目視修改,以確保訓練樣本像元的準確性。

監督分類後的遙感圖像(左)

監督分類後的遙感圖像(左)

紅色為建設用地,綠色為非建設用地

非監督分類是指不必提前獲取先驗類別標準,而是完全按照遙感影像中像元的光譜特性進行統計分類,該方法自動化程度高,人為干預少。

藉助支持向量機、最大似然法等機器學習演算法,可以極大提高監督分類和非監督分類的效率和準確度。

神經網路:利用語義分割分類

語義分割是一種端到端像素級別的分類方法,可以加強機器對環境場景的理解,在自動駕駛、土地規劃等領域應用廣泛。

基於深度神經網路的語義分割技術,在處理像素級分類任務時,其表現優於傳統的機器學習方法。

利用語義分割演算法對某地遙感影像進行識別和判斷

利用語義分割演算法對某地遙感影像進行識別和判斷

高解析度遙感圖像場景複雜、細節資訊豐富,地物間光譜差異不確定,很容易導致分割精度低,甚至產生無效分割。

利用語義分割處理高解析度、超高解析度遙感影像,可以更準確地提取圖像的像素特徵,迅速且準確地識別特定土地類型,進而提高遙感圖像的處理速度。

常用的語義分割開源模型

常用的像素級語義分割開源模型包括 FCN、SegNet 和 DeepLab。

1、全卷積網路(FCN)

特性:端到端語義分割
優點:不限制圖像尺寸,具有通用性和高效率

缺點:無法快速進行實時推理,處理結果不夠精細,對圖像細節不敏感

2、SegNet

特性:將最大池化指數轉移至解碼器中,改善了分割解析度
優點:訓練速度快、效率高,佔用記憶體少
缺點:測試時不是前饋(feed-forward ),需要最佳化來確定 MAP 標籤

3、DeepLab

DeepLab 由 Google AI 發佈,主張用 DCNN 來解決語義分割任務,共包括 v1、v2、v3、v3+ 四個版本。

DeepLab-v1 為了解決池化引起的資訊丟失問題,提出了空洞卷積的方式,在增大感受野的同時不增加參數數量,同時保證資訊不丟失。

DeepLab-v1 模型流程演示

DeepLab-v1 模型流程演示

DeepLab-v2 在 v1 的基礎上,增加了多尺度並行,解決了對不同大小物體的同時分割問題。

DeepLab-v3 將空洞卷積應用在了級聯模組,並且改進了 ASPP 模組。

DeepLab-v3+ 在 encoder-decoder 結構上採用 SPP 模組,可以恢復精細的物體邊緣。細化分割結果。

模型訓練準備

目的:在 DeepLab-v3+ 基礎上,開發用於土地分類的 7 分類模型

資料:源自 Google Earth 的 304 張某地區遙感圖像。除原圖外,還包括經過專業標註的配套 7 分類圖、7 分類 mask、25 分類圖、25 分類 mask 圖像。圖像解析度為 560*560,空間分配率為 1.2m。

原圖及對應 7 分類圖拼接示例

原圖及對應 7 分類圖拼接示例

上半部分為原圖,下半部分為 7 分類圖

調參程式碼如下:

    net = DeepLabV3Plus(backbone = 'xception')criterion = CrossEntropyLoss()optimizer = optim.SGD(net.parameters(), lr=0.05, momentum=0.9,weight_decay=0.00001) lr_fc=lambda iteration: (1-iteration/400000)**0.9exp_lr_scheduler = lr_scheduler.LambdaLR(optimizer,lr_fc,-1)

    訓練詳情

    算力選擇:NVIDIA T4

    訓練框架:PyTorch V1.2

    迭代次數:600 epoch

    訓練時長:約為 50h

    IoU:0.8285(訓練資料)

    AC:0.7838(訓練資料)

    資料集連結:

    https://openbayes.com/console/openbayes/datasets/qiBDWcROayo

    詳細訓練過程直達連結:

    https://openbayes.com/console/openbayes/containers/dOPqM4QBeM6

    遙感圖像土地七分類公共教程詳情

    遙感圖像土地七分類公共教程詳情

    教程使用

    教程中的樣例展示檔案是 predict.ipynb,運行這個檔案,會安裝環境,並展示已有模型的識別效果。

    項目路徑

    測試圖片路徑:

    semantic_pytorch/out/result/pic3

    掩膜圖片路徑:

    semantic_pytorch/out/result/label

    預測圖片路徑:

    semantic_pytorch/out/result/predict

    訓練資料列表:train.csv

    測試資料列表:test.csv

    使用說明

    訓練模型進入 semantic_pytorch,訓練的模型被保存在 model/new_deeplabv3_cc.pt。

    模型採用 DeepLabV3plus,訓練參數中,Loss 採用二進位制交叉熵。Epoch 為600,初始學習率0.05。

    訓練指令:

      python main.py

      如果使用我們已經訓練好的模型,則使用保存在 model 檔案夾中 fix_deeplab_v3_cc.pt,在 predict.py 中直接調用即可。

      預測指令:

        python predict.py

        教程地址:

        https://openbayes.com/console/openbayes/containers/dOPqM4QBeM6

        模型作者

        模型作者

        王巖鑫

        黑龍江大學

        軟體工程 研二

        現於 OpenBayes 實習

        問題 1:為了開發這個模型,你都通過哪些渠道,查閱了哪些資料?

        王巖鑫:主要是通過技術社區、GitHub 等渠道,查看了一些 DeepLab-v3+ 的論文和相關項目案例,提前了解了一下都有哪些坑、怎麼克服,為後續模型開發過程中隨時遇到問題隨時查詢解決,做了比較充分的準備。

        問題 2:過程中遇到了哪些障礙?怎麼克服的?

        王巖鑫:資料量不是很夠,導致 IoU 和 AC 的表現一般,下次可以用資料量更豐富的公開遙感資料集試試。

        問題 3:關於遙感還想嘗試哪些方向?

        王巖鑫:這一次是對土地進行分類,接下來我想利用結合機器學習和遙感技術,對海洋景觀和海洋要素進行分析,又或者結合聲學技術嘗試對海底地形進行識別和判斷。

        此次訓練所用資料量較小,在訓練集上 IoU 及 AC 表現一般,大家也可以嘗試用已有公共遙感資料集進行模型訓練,一般情況下訓練越充分、訓練資料越豐富,模型表現越好。

        本系列的(下)篇文章中,我們彙總了 11 個主流的公共遙感資料集,並將其做了歸類整理。大家可以依據本文提供的訓練思路,按需選用,訓練更完善的模型。

        參考:

        http://tb.sinomaps.com/CN/0494-0911/home.shtml

        https://zhuanlan.zhihu.com/p/75333140

        相關文章

        5G基站的輻射大?5G 被誤解的9個真相

        5G基站的輻射大?5G 被誤解的9個真相

        1、5G基站的輻射大? 5G跟前面的4G和3G一樣,同屬於行動通訊技術,在電磁輻射的強度在本質上並沒有什麼區別,運營商建網都需要遵從相同的標...

        Transformer,ChatGPT 幕後的真正大佬

        Transformer,ChatGPT 幕後的真正大佬

        ChatGPT的背後 ChatGPT紅得發紫,強得讓人類心悸。 但在它的背後,還隱藏著一位真正的大佬。 可以說,與它相比,ChatGPT其實...