Skip to main content

Unified ROI->embedding interface for remote sensing foundation models.

Project description

icon rs-embed

One line code to get Any Remote Sensing Foundation Model (RSFM) embeddings for Any Place and Any Time

arXiv Docs Python PyTorch 2.2

Visitors Last Commit License PyPI Downloads

Docs · StartNow · Releases · Changelog · UseCase · Paper

Get Start on I-GUIDE Today!

TL;DR

emb = get_embedding("prithvi", spatial=..., temporal=..., output=...)

Install

# base install
pip install rs-embed

# add [terratorch] only if you use terramind
pip install "rs-embed[terratorch]"

For local development:

git clone https://github.com/cybergis/rs-embed.git
cd rs-embed
pip install -e .  # use -e ".[terratorch]" if you need terramind

If this is your first time using Google Earth Engine, authenticate once:

earthengine authenticate

Quick Example

from rs_embed import PointBuffer, TemporalSpec, OutputSpec, get_embedding

spatial = PointBuffer(lon=121.5, lat=31.2, buffer_m=2048)
temporal = TemporalSpec.range(
    "2022-06-01",
    "2022-09-01",
)

emb = get_embedding(
    "prithvi",
    spatial=spatial,
    temporal=temporal,
    output=OutputSpec.pooled(),
)

See the visualization helper and end-to-end notebook in the repository:

Main API

For new users, start with these primary APIs:

  • get_embedding(...): one ROI -> one embedding
  • get_embeddings_batch(...): many ROIs, same model
  • export_batch(...): export datasets / experiments (single or multiple ROIs)
  • inspect_provider_patch(...): inspect raw provider patches before inference

Supported Models

This is a convenience index with basic model info only (for quick scanning / links). For detailed I/O behavior and preprocessing notes, see Supported Models.

Precomputed Embeddings

Model ID Resolution Time Coverage Publication
tessera 10m 2017-2025 CVPR 2026
gse (Alpha Earth) 10 m 2017-2024 arXiv 2025
copernicus 0.25° 2021 ICCV 2025

On-the-fly Foundation Models

Model ID Primary Input Resolution(Default) Publication Link
satmae S2 RGB 10m NeurIPS 2022 link
satmaepp S2 RGB 10m CVPR 2024 link
satmaepp_s2_10b S2 SR 10-band 10m CVPR 2024 link
prithvi S2 6-band 30m arXiv 2023 link
scalemae S2 RGB (+ scale) 10m ICCV 2023 link
remoteclip S2 RGB 10m TGRS 2024 link
dofa Multi-band + wavelengths 10m arXiv 2024 link
satvision TOA 14-channel 1000m arXiv 2024 link
anysat S2 time series (10-band) 10m CVPR 2025 link
galileo S2 time series (10-band) 10m ICML 2025 link
wildsat S2 RGB 10m ICCV 2025 link
fomo S2 12-band 10m AAAI 2025 link
terramind S2 12-band 10m ICCV 2025 link
terrafm S2 12-band / S1 VV-VH 10m ICLR 2026 link
thor S2 10-band 10m arXiv 2026 link
agrifm S2 time series (10-band) 10m RSE 2026 link

Resolution here means the default provider/source fetch resolution used by the adapter, not the final resized tensor shape seen by the model.

Learn More

📚 Full documentation

🪄 Get Started: Try rs-embed Now

🪀 Use case: Maize yield mapping Illinois

📢 Disscusion

🧾 Release policy and versioning

📌 Project changelog

Extending & Contributing

We welcome issues for new model integrations, extension ideas, bugs, and documentation gaps. If you have your own work, or a model or paper that you think would be valuable to include in rs-embed, please open an Issue and share the relevant links, context, and examples.

We also warmly welcome community contributions, including new model support, bug fixes, documentation improvements, and example notebooks. If you would like to contribute directly, please start with the extending guide and the contributing guide.

🎖 Acknowledgements

We would like to thank the following organizations and projects that make rs-embed possible: Google Earth Engine, TorchGeo, GeoTessera, TerraTorch, rshf, and the Copernicus-Embed.

This library also builds upon the incredible work of the Remote Sensing community!(Full list and citations available in our Documentation)

Citation

@article{ye2026modelplacetimeremote,
      title={Any Model, Any Place, Any Time: Get Remote Sensing Foundation Model Embeddings On Demand},
      author={Dingqi Ye and Daniel Kiv and Wei Hu and Jimeng Shi and Shaowen Wang},
      year={2026},
      eprint={2602.23678},
      archivePrefix={arXiv},
      primaryClass={cs.CV},
      url={https://arxiv.org/abs/2602.23678},
}

License

This project is released under the Apache-2.0

Contributors

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

rs_embed-0.1.3.tar.gz (315.7 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

rs_embed-0.1.3-py3-none-any.whl (404.1 kB view details)

Uploaded Python 3

File details

Details for the file rs_embed-0.1.3.tar.gz.

File metadata

  • Download URL: rs_embed-0.1.3.tar.gz
  • Upload date:
  • Size: 315.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for rs_embed-0.1.3.tar.gz
Algorithm Hash digest
SHA256 841dc4b022e76b4fdd5b9bc15bd7ee3d2f8a80cf9f8874267134c09da35cd851
MD5 fd6dc3dd7882b02ea5940c9ec7c23e23
BLAKE2b-256 8104380f6f4363cfc86df32f269a8ff7ef80feed853b4f46e595a523e0b05214

See more details on using hashes here.

Provenance

The following attestation bundles were made for rs_embed-0.1.3.tar.gz:

Publisher: release.yml on cybergis/rs-embed

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file rs_embed-0.1.3-py3-none-any.whl.

File metadata

  • Download URL: rs_embed-0.1.3-py3-none-any.whl
  • Upload date:
  • Size: 404.1 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for rs_embed-0.1.3-py3-none-any.whl
Algorithm Hash digest
SHA256 427a96d3f53c81b6c7c9880e3d0dcefca8ca57365645abf9c23745190a702f0b
MD5 56bb936a172e9f4102ad13f97b4ed80e
BLAKE2b-256 e1d7b61af0026fec6c0d4a70217ad933c1bf5a5c09a9354f5e5ce9826bd54eea

See more details on using hashes here.

Provenance

The following attestation bundles were made for rs_embed-0.1.3-py3-none-any.whl:

Publisher: release.yml on cybergis/rs-embed

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page