A foundation model that learns from the clouds it can’t see
It turns years of cloudy satellite pixels into analysis-ready 128-dimensional embeddings without human labels.

What it does
TESSERA is a self-supervised foundation model that digests annual time series of Sentinel-1 and Sentinel-2 imagery and compresses each 10 m pixel into a 128-dimensional vector. These embeddings are designed to preserve spectral-temporal phenological signals even when large chunks of the year are obscured by clouds. The Cambridge team provides precomputed global embeddings for 2024 and offers the training and inference code to generate your own.
The interesting bit
The core trick is Barlow Twins: the model takes two random cloud-free samples from the same pixel’s time series, forces their auto-encoder embeddings to align, and thereby learns a representation that implicitly captures the whole year—including the missing observations. It is a neat way to turn data corruption into a supervisory signal.
Key highlights
- Global, analysis-ready embeddings at 10 m resolution for 2024 (CC0 licensed), with annual coverage back to 2017 planned.
- Matches or outperforms task-specific baselines on five downstream tasks such as land classification and canopy height prediction, according to the project’s papers.
- Runs fully on spectral-temporal pixel features; no external labels required for pre-training.
- Open-source software (MIT) and open model weights/embeddings (CC0), including a dedicated
geotesseralibrary for fetching precomputed tiles.
Caveats
- Rolling your own embeddings is resource-intensive: the README warns that a 100 km × 100 km area needs roughly 1 TB of storage and recommends 128 GB of RAM and a Linux or WSL environment; macOS is not supported.
- The released checkpoints bind you to a specific, non-standard Sentinel-2 band ordering; reordering inputs without retraining will silently break the model.
- Global coverage currently centers on 2024, with earlier years still being backfilled.
Verdict
Worth a look if you do remote-sensing ML and need temporal features at scale, especially where labels are scarce. If you just need a quick, lightweight feature extractor for small regions or static imagery, the hardware and storage demands will likely outweigh the benefits.
Frequently asked
- What is ucam-eo/tessera?
- It turns years of cloudy satellite pixels into analysis-ready 128-dimensional embeddings without human labels.
- Is tessera open source?
- Yes — ucam-eo/tessera is open source, released under the MIT license.
- What language is tessera written in?
- ucam-eo/tessera is primarily written in Python.
- How popular is tessera?
- ucam-eo/tessera has 641 stars on GitHub.
- Where can I find tessera?
- ucam-eo/tessera is on GitHub at https://github.com/ucam-eo/tessera.