---
title: README
emoji: ๐
colorFrom: green
colorTo: blue
sdk: static
pinned: false
---
TESSERA
A pixel-wise Earth observation foundation model
from the University of Cambridge ยท ucam-eo
---
**TESSERA** turns raw satellite time series into ready-to-use **embeddings**. For every
**10 m** pixel on Earth it reads a full year of **Sentinel-1 (SAR)** and
**Sentinel-2 (optical)** observations and compresses them into a compact,
task-agnostic vector โ a learned summary of the land's spectral and temporal
behaviour. Trained self-supervised on billions of pixels, with **no labels
required**, these embeddings work as drop-in features for land cover and crop
mapping, biomass and carbon estimation, change detection, and more, and are far
cheaper to store and serve than raw imagery.
| | |
|---|---|
| ๐ฐ๏ธ **Inputs** | Sentinel-1 + Sentinel-2, one full year per pixel |
| ๐ **Resolution** | 10 m, global, annual embeddings for **2017โ2025** |
| ๐งฉ **Output** | dense per-pixel embeddings โ v2 adds nested **Matryoshka** vectors (use 16 / 32 / 64 / 128 dims) |
| ๐ง **Training** | self-supervised (Barlow Twins), no labels |
## Models
| Release | Description | Weights |
|---|---|---|
| **TESSERA v2** *(latest)* | Four compact pixel students โ **Nano 1.07M ยท Small 7.11M ยท Medium 21.03M ยท Large 43.83M** โ distilled from a **2B teacher**, with 128-d Matryoshka output. | [N](https://huggingface.co/geotessera/TESSERA-V-2.0-2B-N) ยท [S](https://huggingface.co/geotessera/TESSERA-V-2.0-2B-S) ยท [M](https://huggingface.co/geotessera/TESSERA-V-2.0-2B-M) ยท [L](https://huggingface.co/geotessera/TESSERA-V-2.0-2B-L) ยท [Teacher](https://huggingface.co/geotessera/TESSERA-V-2.0-2B-Teacher) |
| **TESSERA v1.1** | Wider QAT encoder, all-observation inference; MPC & AWS checkpoints (int8). | [TESSERA-V-1.1](https://huggingface.co/geotessera/TESSERA-V-1.1) |
| **TESSERA v1.0** | The original release (QAT / int8 and early fp32). | [TESSERA-V-1.0](https://huggingface.co/geotessera/TESSERA-V-1.0) |
๐ Everything in one place: the [**TESSERA collection**](https://huggingface.co/collections/geotessera/tessera-6a108c1a6618e155f551c065).
## Get started
**Just want embeddings?** Skip the model entirely โ download ready-made global
embeddings with the [`geotessera`](https://github.com/ucam-eo/geotessera) Python library:
```bash
pip install geotessera
```
...or [request coverage](https://github.com/ucam-eo/geotessera#request-missing-embeddings)
for your region. New v2 embeddings can be [pre-requested here](https://github.com/ucam-eo/geotessera/issues/new?template=v2-embedding-prerequest.yml&labels=v2-embedding-prerequest).
**Want to run the model yourself?** Generate embeddings from your own Sentinel-1/2
tiles with the code and instructions in [`ucam-eo/tessera`](https://github.com/ucam-eo/tessera).
## Learn more
- ๐ Website โ https://geotessera.org
- ๐ฆ Model & inference code โ https://github.com/ucam-eo/tessera
- ๐ Embeddings library โ https://github.com/ucam-eo/geotessera
- ๐ Papers โ [TESSERA v2: Scaling Pixel-wise Earth Foundation Models](https://arxiv.org/abs/2607.03949) ยท [TESSERA (v1)](https://arxiv.org/abs/2506.20380)
Model weights are released under CC0-1.0; the `geotessera` library under MIT. Use is additionally governed by the TESSERA Acceptable Use Policy.