THOR: Transformer based foundation model for Heterogeneous Observation and Resolution

January 30, 2026 · View on GitHub

A Versatile Foundation Model for Earth Observation Climate and Society Applications

Website arXiv Models TerraTorch Extension Dataset

THOR is a compute-adaptive geospatial foundation model developed by Norwegian Computing Center (NR), UiT The Arctic University of Norway and ESA Φ-lab.

Key Features

  • Multi-sensor support: Sentinel-1 (SAR), Sentinel-2 (MSI), Sentinel-3 OLCI & SLSTR
  • Flexible resolution: 10 m to 1000 m native resolutions
  • Compute-adaptive: Flexible patch sizes and ground covers (1000 m to +100,000 m)
  • Data-efficient: State-of-the-art performance in data-limited regimes
  • Model type: Vision Transformer (FlexiViT)

Model Description

THOR unifies data from Copernicus Sentinel-1, -2, and -3 (OLCI & SLSTR) satellites, processing their native 10 m to 1000 m resolutions in a single model. THOR is pre-trained with a novel randomized patch and input image size strategy, allowing deployment at inference with any patch size for dynamic trade-offs between computational cost and feature resolution without retraining.

Setup

  1. Using uv to set up the environment:
uv sync
  1. Optional dependencies for development:
uv sync --group dev --extra scripts --extra test

Usage

For downstream applications, we recommend using the terratorch framework with our THOR terratorch extension.

Terratorch backbone loading example

# Example usage of THOR ViT backbone with terratorch

# Import our custom thor_terratorch_ext module to register THOR backbones
import thor_terratorch_ext  # noqa: F401

# Load the backbone registry
from terratorch import BACKBONE_REGISTRY

# List available THOR backbones
print([b for b in list(BACKBONE_REGISTRY) if "thor" in b])

# Build a THOR ViT model with specific bands
model = BACKBONE_REGISTRY.build(
    "thor_v1_tiny",
    pretrained=True,
    model_bands=["BLUE", "GREEN", "RED", "VV", "VH"],
    input_params=dict(  # Optional input parameters to customize
        ground_covers=[
            2880
        ],  # Ground cover in meters (typically input image size [px] * input image resolution)
        flexivit_patch_size_seqs=[8],  # Patch size in pixels
    ),
)

Model Training

Pretrain THOR architecture on THOR-Pretrain data from scratch

uv run main.py train thor/config/pretrain/final/thor-base.yaml

Evaluation

THOR demonstrates highly competitive performance on the PANGAEA benchmark, particularly in data-limited regimes. With only 10% training data, THOR-Base achieves the best average rank across all datasets.

ModelHLS BurnsMADOSPASTISSen1Floods11FBPDynEarthNetCropMapSN7AI4Farms
CROMA76.4432.4432.8087.2237.3936.0836.7742.1538.48
DOFA71.9823.7727.6882.8427.8239.1529.9146.1027.74
Prithvi77.7321.2433.5686.2829.9832.2827.7136.7835.04
SpectralGPT83.3520.2934.5383.1239.5135.3331.0636.3137.35
Terramind-B77.3944.0639.9684.4354.0037.3535.6543.2138.59
UNet Baseline79.4624.3029.5388.5552.5835.5913.8846.0834.84
ViT Baseline75.9210.1838.4481.8556.5335.3927.7636.0139.20
THOR-B76.9040.6738.9386.2942.8035.2142.2355.9438.90
THOR-T75.9841.6536.2682.7042.8134.0337.8258.5238.56

Results in mIoU on PANGAEA benchmark with 10% training data. Bold = best, italic = second-best.

Attribution

The development of THOR was funded and supported by European Space Agency (ESA) Φ-lab (FM4CS project, contract no. 4000143489/24/I-DT), and the Research Council of Norway (KnowEarth project no. 337481).

Citation

If you use THOR in your research, please cite the paper:

@article{forgaard2026thor,
      title={THOR: A Versatile Foundation Model for Earth Observation Climate and Society Applications}, 
      author={Theodor Forgaard and Jarle H. Reksten and Anders U. Waldeland and Valerio Marsocci and Nicolas Longépé and Michael Kampffmeyer and Arnt-Børre Salberg},
      year={2026},
      eprint={2601.16011},
      archivePrefix={arXiv},
      primaryClass={eess.IV},
      url={https://arxiv.org/abs/2601.16011}, 
}

License

THOR is released under the MIT License.

This project is based in part on code from the Stanford Machine Learning Group, also licensed under MIT.