🚀 Restor基於SegFormer的TCD模型
這是一個語義分割模型,可在高分辨率(10釐米/像素)航空圖像中描繪樹木覆蓋情況,助力生態相關的圖像分析工作。
🚀 快速開始
你可以在 這個Colab筆記本 中查看一個簡單的推理示例。
若要進行端到端的使用,我們建議你使用我們的預測和訓練 管道,它還支持對任意大的圖像進行分塊預測、報告輸出等功能。
✨ 主要特性
- 該語義分割模型在全球航空影像上進行了訓練,能夠準確描繪類似圖像中的樹木覆蓋情況。
- 模型不檢測單棵樹木,而是提供每個像素的樹木/非樹木分類。
- 支持在CPU上進行評估,可滿足野外工作的需求。
📦 安裝指南
使用我們的管道對該模型進行典型訓練的命令如下:
tcd-train semantic segformer-mit-b4 data.output= ... data.root=/mnt/data/tcd/dataset/holdout data.tile_size=1024
💻 使用示例
基礎用法
from transformers import AutoImageProcessor
processor = AutoImageProcessor.from_pretrained('restor/tcd-segformer-mit-b4')
高級用法
暫未提供高級用法的相關代碼示例。
📚 詳細文檔
模型詳情
模型描述
這個語義分割模型在全球航空影像上進行了訓練,能夠準確描繪類似圖像中的樹木覆蓋情況。模型不檢測單棵樹木,而是提供每個像素的樹木/非樹木分類。
- 開發者:Restor / 蘇黎世聯邦理工學院
- 資助方:該項目通過 Google.org影響力贈款 得以實現。
- 模型類型:語義分割(二分類)
- 許可證:模型訓練代碼根據Apache-2許可證提供。NVIDIA根據其自身的研究許可證發佈了SegFormer。用戶在部署前應檢查此許可證的條款。該模型在CC BY - NC影像上進行訓練。
- 微調基礎模型:SegFormer系列
SegFormer是Pyramid Vision Transformer v2模型的一個變體,具有許多相同的結構特徵和一個語義分割解碼頭。在功能上,該架構與特徵金字塔網絡(FPN)非常相似,因為輸出預測是基於在不同空間分辨率下組合網絡不同階段的特徵。
模型來源
- 倉庫:https://github.com/restor-foundation/tcd
- 論文:我們將很快發佈預印本。
使用場景
直接使用
該模型的主要用例是從航空圖像中評估樹冠覆蓋率(即研究區域被樹冠覆蓋的百分比)。此模型適用於對單個圖像塊進行推理。要對大型正射鑲嵌圖進行預測,需要一個更高級的框架來管理源圖像的分塊和拼接預測結果。我們的倉庫提供了這樣一個管道的全面參考實現,並已在超大型圖像(國家規模)上進行了測試。
模型將為整個圖像提供預測結果。在大多數情況下,用戶可能希望預測圖像中特定區域的覆蓋率,例如研究地塊或其他地理邊界。如果你要預測圖像中的樹木覆蓋率,應該對結果進行某種感興趣區域分析。我們鏈接的管道倉庫支持基於形狀文件的區域分析。
不適用場景
- 雖然我們在全球多樣化的影像上訓練了該模型,但訓練數據集中某些生態生物群落的代表性不足,性能可能會有所不同。因此,我們鼓勵用戶在將模型用於任何關鍵任務之前,先使用自己的影像進行實驗。
- 該模型在分辨率為10釐米/像素的影像上進行訓練。你可能能夠在其他地理空間分辨率下獲得良好的預測結果,但結果可能不可靠。特別是,模型本質上是在尋找“看起來像樹木的東西”,這高度依賴於分辨率。如果你想常規地預測更高或更低分辨率的圖像,你應該在自己的數據集或重採樣後的訓練數據集上微調此模型。
- 該模型不預測生物量、樹冠高度或其他衍生信息。它僅預測某個像素被樹冠覆蓋的可能性。
- 目前,該模型不適合用於碳信用額估算。
偏差、風險和侷限性
該模型的主要侷限性是在看起來像樹木或可能被誤認為是樹木的物體上出現誤報。例如,大型灌木叢、灌木或看起來像樹冠的地被植物。
用於訓練此模型的數據集由非專家進行標註。考慮到數據集的規模、獨立測試數據的結果以及Restor在合作伙伴數據上的實際使用期間的經驗評估,我們認為這是一個合理的權衡。然而,數據集中幾乎肯定存在錯誤標籤,這可能導致模型輸出中的錯誤預測或其他偏差。我們觀察到,模型與訓練數據的“不一致”方式可能是正確的(即標籤的總體統計數據良好),我們正在努力重新評估所有訓練數據以去除錯誤標籤。
我們提供交叉驗證結果以對預測性能進行可靠估計,以及在獨立影像(即模型從未見過的圖像)上的結果,以便用戶可以自行評估。我們不提供任何準確性保證,用戶應該對任何“關鍵任務”或生產用途進行自己的獨立測試。沒有什麼能替代在自己的數據上嘗試模型並進行自己的評估,我們強烈鼓勵進行實驗!
訓練詳情
訓練數據
訓練數據集可在 此處 找到,你可以在其中找到有關數據收集和標註過程的更多詳細信息。我們的圖像標籤大多根據CC - BY 4.0許可證發佈,還有一小部分CC BY - NC和CC BY - SA影像。
訓練過程
我們在訓練期間使用了5折交叉驗證過程來調整超參數,然後在“完整”訓練集上進行訓練,並在保留的圖像集上進行評估。此倉庫主分支中的模型應被視為發佈版本。
我們使用 Pytorch Lightning 作為訓練框架,超參數如下所示。訓練過程很直接,任何有深度神經網絡訓練經驗的人都應該熟悉。
預處理
假設你使用 transformers
庫,此倉庫包含一個可與模型一起使用的預處理器配置。你可以通過以下方式輕鬆加載此預處理器:
from transformers import AutoImageProcessor
processor = AutoImageProcessor.from_pretrained('restor/tcd-segformer-mit-b4')
請注意,我們不調整輸入圖像的大小(以尊重源圖像的地理空間比例),並且我們假設歸一化是在這個處理步驟中進行的,而不是作為數據集變換。
訓練超參數
- 圖像大小:1024像素正方形
- 學習率:初始為1e - 4到1e - 5
- 學習率調度:高原衰減
- 優化器:AdamW
- 數據增強:隨機裁剪到1024x1024、任意旋轉、翻轉、顏色調整
- 訓練輪數:交叉驗證期間為75輪以確保收斂;最終模型為50輪
- 歸一化:使用ImageNet統計數據
速度、大小和時間
你應該能夠在CPU上評估該模型(甚至到mit - b5),但是如果你嘗試推斷大尺寸的圖像塊,你將需要大量可用的RAM。一般來說,考慮到輸出分割掩碼的固定大小,我們發現1024像素的輸入是你能處理的最大尺寸(即,以1024x1024像素的批量模式進行推理可能比嘗試預測單個2048x2048像素的圖像更好)。
所有模型都在配備24GB顯存(NVIDIA RTX3090)的單個GPU上進行訓練,該GPU連接到具有64GB RAM的32核機器。除最大的模型外,所有模型都可以在一天內使用此規格的機器完成訓練。最小的模型訓練時間不到半天,而最大的模型訓練時間略超過一天。
我們從用戶(在野外)收到的反饋是,土地所有者通常對查看航空調查結果感興趣,但在偏遠地區,數據帶寬往往是一個限制因素。我們的目標之一是支持這種野外使用場景,以便進行調查飛行的用戶可以在合理的時間內(即大約一小時)離線處理結果。
評估
測試數據
訓練數據集可在 此處 找到。此模型(主分支)在所有“訓練”圖像上進行訓練,並在“測試”(保留)圖像上進行測試。

評估指標
我們報告了保留數據集上的F1分數、準確率和交併比(IoU),以及5折交叉驗證分割的結果。交叉驗證結果在下面的圖表中以最小/最大誤差線的形式可視化。
評估結果

環境影響
此估計是此處介紹的SegFormer系列模型的最大訓練時間(方面)。較小的模型,如 mit - b0
,訓練時間不到半天。
- 硬件類型:NVIDIA RTX3090
- 使用時長:< 36小時
- 碳排放:每個模型相當於5.44千克二氧化碳排放量
碳排放使用 Lacoste等人(2019) 提出的 機器學習影響計算器 進行估算。
此估計未考慮實驗所需的時間、失敗的訓練運行等。例如,由於我們使用了交叉驗證,每個模型實際上需要大約此估計值的6倍時間——每折一次運行,加上最終運行。
在CPU上進行高效推理對於野外工作是可行的,但會犧牲推理延遲。一次典型的單電池無人機飛行數據可以在幾分鐘內處理完成。
引用
我們將很快提供論文的預印本版本。在此期間,請按以下方式引用:
BibTeX:
@unpublished{restortcd,
author = "Veitch-Michaelis, Josh and Cottam, Andrew and Schweizer, Daniella Schweizer and Broadbent, Eben N. and Dao, David and Zhang, Ce and Almeyda Zambrano, Angelica and Max, Simeon",
title = "OAM-TCD: A globally diverse dataset of high-resolution tree cover maps",
note = "In prep.",
month = "06",
year = "2024"
}
模型卡片作者
Josh Veitch - Michaelis,2024年;代表數據集作者。
模型卡片聯繫方式
如有疑問或需要更多信息,請聯繫 josh [at] restor.eco。
信息表格
屬性 |
詳情 |
模型類型 |
語義分割(二分類) |
訓練數據 |
可在 此處 找到,圖像標籤大多根據CC - BY 4.0許可證發佈,還有一小部分CC BY - NC和CC BY - SA影像 |
許可證 |
模型訓練代碼根據Apache - 2許可證提供。NVIDIA根據其自身的研究許可證發佈了SegFormer。用戶在部署前應檢查此許可證的條款。該模型在CC BY - NC影像上進行訓練 |