Skip to content

IBM/terratorch

Repository files navigation

TerraTorch

📖 Documentation

Overview

TerraTorch is a library based on PyTorch Lightning and the TorchGeo domain library for geospatial data.

TerraTorch’s main purpose is to provide a flexible fine-tuning framework for Geospatial Foundation Models, which can be interacted with at different abstraction levels. The library provides:

  • Convenient modelling tools:
    • Flexible trainers for Image Segmentation, Classification and Pixel Wise Regression fine-tuning tasks
    • Model factories that allow to easily combine backbones and decoders for different tasks
    • Ready-to-go datasets and datamodules that require only to point to your data with no need of creating new custom classes
    • Launching of fine-tuning tasks through CLI and flexible configuration files, or via jupyter notebooks
  • Easy access to:
    • Open source pre-trained Geospatial Foundation Model backbones:
    • Backbones available in the timm (Pytorch image models)
    • Decoders available in SMP (Pytorch Segmentation models with pre-training backbones) and mmsegmentation packages
    • Fine-tuned models such as granite-geospatial-biomass
    • All GEO-Bench datasets and datamodules
    • All TorchGeo datasets and datamodules

Install

Pip

In order to use th file pyproject.toml it is necessary to guarantee pip>=21.8. If necessary upgrade pip using python -m pip install --upgrade pip.

To get the most recent version of the main branch, install the library with pip install git+https://github.com/IBM/terratorch.git.

TerraTorch requires gdal to be installed, which can be quite a complex process. If you don't have GDAL set up on your system, we reccomend using a conda environment and installing it with conda install -c conda-forge gdal.

To install as a developer (e.g. to extend the library):

git clone https://github.com/IBM/terratorch.git
cd terratorch
pip install -r requirements/required.txt -r requirements/dev.txt
conda install -c conda-forge gdal
pip install -e .

To install terratorch with partial (work in development) support for Weather Foundation Models, pip install -e .[wxc], which currently works just for Python >= 3.11.

Quick start

To get started, check out the quick start guide

For developers

Check out the architecture overview.

A simple hint for any contributor. If you want to met the GitHub DCO checks, just do your commits as below:

git commit -s -m <message>

It will sign the commit with your ID and the check will be met.