torchgeo/torchgeo

TorchGeo: datasets, samplers, transforms, and pre-trained models for geospatial data

What it solves

TorchGeo 簡化了將深度學習應用於地理空間數據的過程。它解決了處理遙感影像時的挑戰,因為不同衛星與感測器之間的譜段、空間解析度與座標參考系統 (CRS) 通常會有所不同。

How it works

TorchGeo 作為一個 PyTorch 領域庫 (類似於 torchvision),為地理空間數據提供專門的工具:

  • Geospatial Datasets & Samplers: It 允許用戶使用交集 (&) 與聯集 (|) 運算符來組合多個數據集,並自動處理重投影至匹配的 CRS 與解析度。它包含採樣器 (例如 RandomPatchSampler),透過提取小塊圖像 (patches) 來處理極大的影像。
  • Benchmark Datasets: 它提供用於常見任務 (例如影像分類、語義分割、物件偵測) 的現成數據集。
  • Pre-trained Weights: 它提供在多光譜感測器 (例如 Sentinel-2) 上預訓練的模型,超越了標準的 RGB ImageNet 權重,以更好地適應遙感數據。
  • Lightning Integration: 它提供 PyTorch Lightning datamodules 與 trainers,以減少樣板代碼並確保實驗的可重複性。

Who it’s for

  • Machine learning experts who 想要在不需要深厚的遙感專業知識的情況下處理地理空間數據。
  • Remote sensing experts who 想要為其數據探索機器學習解決方案。

Highlights

  • Automatic CRS/Resolution Handling: 自動確保在組合數據集時,座標參考系統與解析度能夠匹配。
  • Multispectral Support: 首個支持多光譜感測器預訓練權重的庫。
  • Flexible Dataset Composition: 使用集合運算符來合併或交集影像與標籤數據集。
  • C-Line Interface: 透過 LightningCLI 支援指令行訓練,以便進行基於配置的實驗。