🚀 Restor基於SegFormer的TCD模型
這是一個語義分割模型,能夠在高分辨率(10釐米/像素)的航空圖像中描繪樹木覆蓋情況。它能解決從航空圖像中準確識別樹木覆蓋範圍的問題,為生態研究和評估提供了有力支持。
🚀 快速開始
你可以在 這個Colab筆記本 中查看一個簡單的推理示例。
若要進行端到端的使用,我們建議用戶參考我們的預測和訓練 管道,它還支持對任意大的圖像進行分塊預測、報告輸出等功能。
✨ 主要特性
- 該語義分割模型基於全球航空影像進行訓練,能夠在類似圖像中準確描繪樹木覆蓋情況。
- 模型不檢測單棵樹木,而是提供每個像素的樹木/非樹木分類。
- 模型類型為語義分割(二分類)。
- 基於SegFormer架構,其功能與特徵金字塔網絡(FPN)類似,輸出預測基於不同空間分辨率下網絡不同階段的特徵組合。
📦 安裝指南
使用我們的管道對該模型進行典型訓練的命令如下:
tcd-train semantic segformer-mit-b0 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-b0')
高級用法
暫未提供高級用法的相關代碼示例。
📚 詳細文檔
模型詳情
模型描述
該語義分割模型在全球航空影像上進行訓練,能夠在類似圖像中準確描繪樹木覆蓋情況。模型不檢測單棵樹木,而是提供每個像素的樹木/非樹木分類。
- 開發者:Restor / 蘇黎世聯邦理工學院
- 資助方:該項目通過 Google.org影響力贈款 得以實現。
- 模型類型:語義分割(二分類)
- 許可證:模型訓練代碼根據Apache 2許可證提供。NVIDIA根據其研究許可證發佈了SegFormer。用戶在部署前應檢查此許可證的條款。該模型在CC BY - NC影像上進行訓練。
- 微調自:SegFormer系列
SegFormer是金字塔視覺變換器v2模型的一個變體,具有許多相同的結構特徵和一個語義分割解碼頭。在功能上,該架構與特徵金字塔網絡(FPN)非常相似,因為輸出預測基於不同空間分辨率下網絡不同階段的特徵組合。
模型來源
- 倉庫:https://github.com/restor-foundation/tcd
- 論文:我們將很快發佈預印本。
用途
直接使用
該模型的主要用例是從航空圖像中評估樹冠覆蓋率(即研究區域被樹冠覆蓋的百分比)。該模型適用於對單個圖像塊進行推理。若要對大型正射影像進行預測,則需要一個更高級的框架來管理源圖像的分塊和拼接預測結果。我們的倉庫提供了這樣一個管道的全面參考實現,並已在超大型圖像(國家規模)上進行了測試。
超出範圍的使用
- 雖然我們在全球多樣化的影像上訓練了該模型,但訓練數據集中某些生態生物群落的代表性不足,性能可能會有所不同。因此,我們鼓勵用戶在將該模型用於任何關鍵任務之前,先在自己的影像上進行實驗。
- 該模型在10釐米/像素的分辨率影像上進行訓練。你可能能夠在其他地理空間分辨率下獲得良好的預測結果,但結果可能不可靠。特別是,該模型本質上是在尋找“看起來像樹的東西”,這高度依賴於分辨率。如果你想常規地預測更高或更低分辨率的圖像,你應該在自己的數據集或重採樣後的訓練數據集上微調該模型。
- 該模型不預測生物量、樹冠高度或其他衍生信息。它僅預測某個像素被樹冠覆蓋的可能性。
- 目前,該模型不適合用於碳信用額估計。
偏差、風險和侷限性
- 該模型的主要侷限性是在看起來像樹或可能被誤認為是樹的物體上出現誤報。例如,大型灌木叢、灌木或看起來像樹冠的地被植物。
- 用於訓練該模型的數據集由非專家進行標註。考慮到數據集的規模、獨立測試數據的結果,以及Restor在合作伙伴數據上的實際使用中的經驗評估,我們認為這是一個合理的權衡。然而,數據集中幾乎肯定存在錯誤標籤,這可能導致模型輸出中的錯誤預測或其他偏差。我們觀察到,模型與訓練數據的“分歧”可能是正確的(即標籤的總體統計數據良好),我們正在努力重新評估所有訓練數據,以去除虛假標籤。
- 我們提供交叉驗證結果,以對預測性能進行可靠估計,以及在獨立影像(即模型從未見過的圖像)上的結果,以便用戶可以自行評估。我們不提供任何準確性保證,用戶應針對任何“關鍵任務”或生產用途進行自己的獨立測試。
訓練詳情
訓練數據
訓練數據集可在 此處 找到,你可以在其中找到有關數據收集和標註過程的更多詳細信息。我們的圖像標籤大多根據CC - BY 4.0許可證發佈,還有一小部分CC BY - NC和CC BY - SA影像。
訓練過程
我們在訓練過程中使用了5折交叉驗證來調整超參數,然後在“完整”訓練集上進行訓練,並在保留的圖像集上進行評估。該倉庫主分支中的模型應被視為發佈版本。
我們使用 Pytorch Lightning 作為訓練框架,超參數如下:
- 圖像大小:1024像素正方形
- 學習率:初始為1e4 - 1e5
- 學習率調度:高原衰減
- 優化器:AdamW
- 數據增強:隨機裁剪到1024x1024、任意旋轉、翻轉、顏色調整
- 訓練輪數:交叉驗證期間為75輪以確保收斂;最終模型為50輪
- 歸一化:使用ImageNet統計數據
速度、大小和時間
你應該能夠在CPU上評估該模型(即使是mit - b5),但如果你嘗試推斷大尺寸的圖像塊,你將需要大量可用的RAM。一般來說,考慮到輸出分割掩碼的固定大小,我們發現1024像素的輸入是你能處理的最大尺寸(即,在1024x1024像素的批量模式下進行推理可能比嘗試預測單個2048x2048像素的圖像更好)。
所有模型都在配備24GB VRAM(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。
📄 許可證
模型訓練代碼根據Apache 2許可證提供。NVIDIA根據其研究許可證發佈了SegFormer。用戶在部署前應檢查此許可證的條款。該模型在CC BY - NC影像上進行訓練。本模型整體許可證為CC。
信息表格
屬性 |
詳情 |
模型類型 |
語義分割(二分類) |
訓練數據 |
可在 此處 找到,圖像標籤大多根據CC - BY 4.0許可證發佈,還有一小部分CC BY - NC和CC BY - SA影像。 |