Ir para o conteúdo
ModelListadosExterno
Browse files

Eo VAE

EO-VAE is a multi-sensor variational autoencoder designed to serve as a foundational tokenizer for the Earth Observation (EO) domain. Unlike traditional approaches that require separate models for different sensors,...

TipoOtherVersãoDecoder dconv weight generator init 0.01 er50kBnota

Fonte do modelo

Tipo
Other
Tamanho do arquivo
3,03 MB–1,07 GB
Versão
vDecoder dconv weight generator init 0.01 er50k
Atualizado
9 de out. de 2026
Fonte
Hugging Face

Descrição da fonte

EO-VAE: Towards A Multi-sensor Tokenizer for Earth Observation

EO-VAE is a multi-sensor variational autoencoder designed to serve as a foundational tokenizer for the Earth Observation (EO) domain. Unlike traditional approaches that require separate models for different sensors, EO-VAE utilizes a single model to encode and reconstruct flexible channel combinations through dynamic hypernetworks.

Model Summary

Usage

import torch
from eo_vae.models.new_autoencoder import EOFluxVAE

model = EOFluxVAE.from_pretrained(
    repo_id="nilsleh/eo-vae", 
    ckpt_filename="eo-vae.ckpt",
    config_filename="model_config.yaml",
    device="cpu",
)

# Run reconstruction / latent extraction
x = torch.randn(1, 3, 256, 256)
# Example wavelengths for Sentinel-2 RGB
wvs = torch.tensor([0.665, 0.56, 0.49], dtype=torch.float32) 

with torch.no_grad():
    recon = model.reconstruct(x, wvs)                # [B, 3, 256, 256]
    z = model.encode_spatial_normalized(x, wvs)      # [B, 32, 32, 32] for 256x256 input

These are the wavelengths used across modalities:

WAVELENGTHS = {
    'S2RGB': [0.665, 0.56, 0.49],
    'S1RTC': [5.4, 5.6],
    'S2L2A': [
        0.443, 0.490, 0.560, 0.665, 0.705, 0.740,
        0.783, 0.842, 0.865, 1.610, 2.190, 0.945,
    ],
    'S2L1C': [
        0.443, 0.490, 0.560, 0.665, 0.705, 0.740,
        0.783, 0.842, 0.865, 0.945, 1.375, 1.610, 2.190,
    ],
}

If you use this model in your work, please cite:

EO-VAE: Towards A Multi-sensor Tokenizer for Earth Observation Data

@article{eo-vae,
  title={EO-VAE: Towards A Multi-sensor Tokenizer for Earth Observation Data},
  author={Lehmann, Nils and Wang, Yi and Xiong, Zhitong and Zhu, Xiaoxiang},
  journal={arXiv preprint arXiv:2602.12177},
  year={2026}
}

Fontes

1 fonte
Hugging FacePrimárioVersão 7f675ab7d242a34a63a03e6fd2d19f28bb73cdd2
huggingface.co/nilsleh/eo-vae/tree/7f675ab7d242a34a63a03e6fd2d19f28bb73cdd2

Verificado 9 de out.

Download files

Artefatos de modelo

3 artefatos

decoder_dconv_weight_generator_init_0.01_er50k.pt

pt · 3,03 MB · SHA-256 e452546f85d7…3323 · Hugging Face

Download file

encoder_dconv_weight_generator_init_0.01_er50k.pt

pt · 3,09 MB · SHA-256 9ae67a11dc71…f651 · Hugging Face

Download file

eo-vae.ckpt

ckpt · 1,07 GB · SHA-256 38497a54bea0…871d · Hugging Face

Download file

Trechos de fonte

2 trechos

--- license: apache-2.0 language: - en pipeline_tag: image-to-image tags: - remote-sensing - earth-observation - vae - tokenizer --- # EO-VAE: Towards A Multi-sensor Tokenizer for Earth Observation EO-VAE is a multi-sensor variational autoencoder designed to serve as a foundational tokenizer for the Earth Observation (EO) domain. Unlike traditional approaches that require separate models for different sensors, EO-VAE utilizes a single model to encode and reconstruct flexible channel combinations through dynamic hypernetworks. ## Model Summary - **Model Name:** EO-VAE - **Paper:** [EO-VAE: Towards A Multi-sensor Tokenizer for Earth Observation Data](https://arxiv.org/abs/2602.12177) - **License:** Apache-2.0 - **Task:** Image-to-Image / Tokenization (Remote Sensing) ## Usage ```python import torch from eo_vae.models.new_autoencoder import EOFluxVAE model = EOFluxVAE.from_pretrained( repo_id="nilsleh/eo-vae", ckpt_filename="eo-vae.ckpt", config_filename="model_config.yaml", device="cpu", ) # Run reconstruction / latent extraction x = torch.randn(1, 3, 256, 256) # Example wavelengths for Sentinel-2 RGB wvs = torch.tensor([0.665, 0.56, 0.49], dtype=torch.float32) with torch.no_grad(): recon = model.reconstruct(x, wvs) # [B, 3, 256, 256] z = model.encode_spatial_normalized(x, wvs) # [B, 32, 32, 32] for 256x256 input ``` These are the wavelengths used across modalities: ```python WAVELENGTHS = { 'S2RGB': [0.665, 0.56, 0.49], 'S1RTC': [5.4, 5.6], 'S2L2A': [ 0.443, 0.490, 0.560, 0.665, 0.705, 0.740, 0.783, 0.842, 0.865, 1.610, 2.190, 0.945, ], 'S2L1C': [ 0.443, 0.490, 0.560, 0.665, 0.705, 0.740, 0.783, 0.842, 0.865, 0.945, 1.375, 1.610, 2.190, ], } ``` If you use this model in your work, please cite: [**EO-VAE: Towards A Multi-sensor Tokenizer for Earth Observation Data**](https://arxiv.org/abs/2602.12177) ```bibtex @article{eo-vae, title={EO-VAE: Towards A Multi-sensor Tokenizer for Earth Observation Data}, author={Lehmann, Nils and Wang, Yi and Xiong, Zhitong and Zhu, Xiaoxiang}, journal={arXiv preprint arXiv:2602.12177}, year={2026} } ```

Source context: 0 downloads · 1 likes · Pipeline image-to-image · Repo nilsleh/eo-vae