torchgeo/torchgeo

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

TorchGeo – PyTorch用地理空間ディープラーニング・ツールキット

概要 – TorchGeoは、用意された地理空間データセット、サンプラー、変換、学習済みモデルをまとめたPyTorch互換ライブラリです。衛星および航空写真版の torchvision と考えてください。

重要性 – リモートセンシングデータには、多くのスペクトルバンド、異なる空間解像度、異なる座標参照系(CRS)といった特有の複雑さがあります。TorchGeoはこれらの複雑な処理を隠蔽するため、機械学習の研究者はモデルに集中でき、リモートセンシングの専門家は低レベルのデータ処理コードを書くことなくディープラーニングのパイプラインを試行できます。

主な機能(READMEの記載に基づく)

  • データセットとメタデータの処理 – 人気のあるソース(Landsat 7/8, Sentinel, Cropland Data Layer, VHR-10など)に対して GeoDataset のサブクラスを提供します。データセットは、CRSと解像度を自動的に整列させる集合演算子(| は和集合、& は積集合)を使用して組み合わせることができます。
  • サンプラーRandomPatchSampler などにより、巨大な画像から固定サイズのパッチ(例:256 × 256)を抽出でき、エポックごとに設定可能な数のサンプルを返します。
  • ベンチマーク・コレクション – 分類、回帰、セマンティック・セグメンテーション、物体検出、変化検出などのための、すぐに使えるラベル付きデータセットを提供し、torchvisionのAPIスタイルを継承しています。
  • 学習済み重み – torchvisionのマルチウェイトAPIおよび timm モデルズーを介して、マルチスペクトル重み(例:Sentinel-2-pre-trained ResNet-18)をサポートしています。
  • Lightning統合 – 内蔵の拡張機能(kornia)とチャンネル統計を備えたLightning DataModule および Task オブジェクト(例:SemanticSegmentation)を提供し、数行のトレーニングスクリプト、または torchgeo/LightningCLI を介したフルCLIの使用を可能にします。
  • インストール – PyPI、conda-forge、spackで利用可能。uv でのインストールも可能です。
  • コミュニティとドキュメント – Slack、OSGeo、Radiant Earth、Hugging Face、YouTubeチャンネル、およびチュートリアルとAPIリファレンスを備えた完全なReadTheDocsサイト。

典型的なワークフロー

  1. データセット(例:Landsat8)をインポートし、必要に応じて別のデータセット(例:CDL)と組み合わせる。
  2. パッチを抽出するためのサンプラーを作成する。
  3. データセットを DataLoader でラップする(または提供されているLightning DataModule を使用する)。
  4. PyTorch Lightningを使用して、カスタムアーキテクチャまたは学習済みモデルのいずれかでモデルをトレーニングする。

引用 – TorchGeoを使用して研究成果を公開する場合は、ACM Transactions on Spatial Algorithms and Systemsの論文(2025年)を引用してください。


上記の内容はすべてプロジェクトのREADMEから直接引用されており、外部の仮定は含まれていません。

関連

  • プロジェクト
  • プロジェクト
  • Dispatch
  • プロジェクト
  • プロジェクト