← Explainer Library

Interactive Explainer

Earth-Observation Foundation Models, in Depth

A deep tour: why ImageNet weights underperform on satellites, which pretraining recipes have actually scaled, the 2026 model zoo (Prithvi, SatMAE, Clay, AnySat, MMEarth, …), a live multi-band MAE demo, and an end-to-end worked example from raw Sentinel-2 to a fine-tuned downstream model.

Prelude

Why is EO different from ImageNet?

A foundation model trained on ImageNet has seen 1.2M three-channel RGB photos shot by humans for humans. A satellite tile is none of those things:

The slogan. EO foundation models trade the breadth of internet imagery for the depth and physics of remote sensing. The pretraining objective is unchanged (mostly MAE); the data, the tokenizer and the evaluation are completely different.
Step 1

The 2026 EO foundation-model zoo

By mid-2026 there are roughly a dozen actively-maintained EO foundation models. They differ in modality, pretraining objective, and downstream coverage:

ModelYearBackboneModalitiesPretrain objectiveBest at
SatMAE2022ViT-LOptical (multi-spectral, multi-temporal)MAE with band+time maskingMulti-temporal classification
Prithvi-100M (NASA / IBM)2023ViT-LHLS (Sentinel-2 + Landsat-8)MAE on 6-band tilesFlood, burn-scar, crop type
Prithvi-EO 600M / 2.02024ViT-HHLS + temporalMAE + temporal modellingHierarchical change detection
SatMAE++2023ViT-LOptical + SARMAE + cross-modal contrastiveCross-sensor generalisation
SatlasPretrain2023Swin-BSentinel-1, Sentinel-2, NAIPSupervised on 137 tasksMulti-task fine-tuning
Clay v12024ViT-B/LMulti-modal embeddingMAE + CLIP-style language alignmentSearch / retrieval / zero-shot
MMEarth2024ViT-B12 modalities (S2, S1, DEM, climate, biomass…)Multi-modal MAEModality-flexible downstream
AnySat2024JEPA-styleAny optical config (any bands, any res, any time)Predictive (V-JEPA flavour)Heterogeneous deployment
Presto20231D Transformer over pixelsSentinel-2 + S1 + ERA5MAE on per-pixel time seriesCrop-type, very small fine-tune sets
GFM (Mendieta et al.)2023ViT-BOpticalContinual MAE pretraining from a generic ViTCheap to retrain in-domain
IBM/NASA Granite-EO2024ViT-H/22HLSMAE + climate-conditioned objectivesOperational deployment

Two clusters: the MAE-on-multispectral camp (Prithvi, SatMAE, Granite) and the multi-modal camp (Clay, MMEarth, AnySat). The first is simpler and stronger on a fixed sensor; the second is more flexible at deployment time when you don't know what bands or sensors you'll get.

Step 2

The pretraining objective: masked autoencoder, but with twists

Almost every successful EO FM uses a masked autoencoder (Step 1 of the vision-pretraining article). The twists matter:

Step 3

Live: multi-band MAE on a synthetic Sentinel-2 tile

We synthesise a 6-band 64×64 tile (mimicking Sentinel-2's B2/B3/B4/B8/B11/B12) with realistic correlations across bands (vegetation correlates green and NIR; water suppresses NIR; soil pops in SWIR). Drag the mask ratio and which bands to mask; the reconstruction is a smart fill from the visible patches, mimicking what an MAE decoder converges to.

Original 6 bands (B2 blue, B3 green, B4 red, B8 NIR, B11 SWIR1, B12 SWIR2).
Masked input (encoder sees this).
Decoder reconstruction; per-band RMSE shown.
Step 4

From raw Sentinel-2 to a fine-tuned downstream model

The end-to-end pipeline from a Copernicus product to a deployed kiln-detector / crop-type / biomass model.

StageToolingWhy it matters
1. DownloadSentinel Hub, Microsoft Planetary Computer, AWS Open Data, NASA HLSL1C (top-of-atmosphere) vs L2A (surface reflectance) — pick L2A unless you have your own atmospheric correction
2. Tile + normaliserasterio, rioxarrayReproject to a common CRS, tile to 224×224 chips, normalise per-band by training-set mean/std
3. Filtercloud / snow masks (s2cloudless, SCL band)~30% of optical tiles are clouded; if you don't filter, the FM learns to predict clouds and downstream tasks underperform
4. Pretrain (or load)Hugging Face hub: ibm-nasa-geospatial/Prithvi-100M, made-with-clay/Clay-v1Almost always load; you only pretrain if your domain is genuinely off-distribution (hyperspectral, micro-satellite)
5. Adapt encoderlinear probe → LoRA → full FTFor ≤10k labels, linear probe wins; for ≥10k, LoRA on attention; for ≥100k, full FT
6. Task headUperNet / DPT / linear classifierFor segmentation, UperNet over a ViT; for chip classification, a global-pool + MLP; for regression, an MLP
7. Evalgeospatially held-out tiles (no spatial leakage!)Random split overestimates by a lot; use spatial blocking (k-fold over geographic blocks) — this is the most common error in EO papers
8. Deployonnx / tflite / TorchServe with TIFF preprocessing baked inThe data pipeline is the deployment risk, not the model
The single biggest mistake in EO ML papers. Random train/test split. Adjacent tiles are correlated; a random split puts neighbours in train and test, inflating accuracy by 5–25%. Spatial blocking (split by 1°×1° boxes, country, watershed) reveals real generalisation. Always require this in reviews.
Step 5

Where general foundation models fit

DINOv2, SAM2, CLIP, and the new generation of vision-language models also work on EO — sometimes very well, sometimes terribly. Rules of thumb:

Step 6

Practical tips before you build

Final takeaway. EO foundation models exist because remote sensing is a modality apart. As of 2026 the right default for any satellite ML project is: download Prithvi or Clay, freeze it, add a small task head, and only train the head until you run out of data. Most of the work is in the data pipeline and the spatial-blocking evaluation, not the model.