/ Модель

Характеристики

Лицензия
MIT
Библиотека
transformers
Опубликована
8 июл 2026

MMEarth-transformers

ЭмбеддингиТекст → embedding

Преобразованный энкодер ConvNeXt V2 MMEarth извлекает геопространственные признаки из спутниковых и мультиспектральных изображений.

0скачиваний за 30 дней0лайковвеса обновлены8 июл 2026

Бенчмарки

Как модель справилась с задачами пользователей ailist и что о ней публикуют открытые лидерборды

Публичные оценки

Из открытых лидербордов. Сравнивайте результаты одного теста при одинаковых условиях — отсутствие оценки не значит, что модель хуже.

В подключённых источниках результатов для этой модели пока нет.

Что умеет модель

Описание составлено по карточке модели и метаданным Hugging Face

Это преобразованные в формат Hugging Face контрольные точки энкодера ConvNeXt V2, предварительно обученного авторами MMEarth методом Multi Pretext Masked Autoencoding (MP-MAE) на мультимодальном геопространственном наборе данных. Преобразование для Hugging Face выполнил BiliSakura; веса распространяются по лицензии MIT. Репозиторий содержит несколько вариантов контрольных точек размера atto и tiny с разными наборами предтекстовых задач, включая все модальности, только Sentinel-2, RGB/BGR, обучение на уровне изображения и пикселей.

Модель предназначена для извлечения признаков из спутниковых и других геопространственных изображений, в том числе мультиспектральных данных. Процессор сохраняет исходные размеры изображений по умолчанию; для корректной обработки следует передавать статистики нормализации по каналам. RGB-варианты обучены с порядком каналов BGR. Для загрузки поставляемого удалённого кода требуется включить trust_remote_code=True.

Сценарии применения

  • извлечение признаков из спутниковых снимков для последующей классификации
  • получение эмбеддингов мультиспектральных изображений Земли
  • подготовка геопространственных представлений для downstream-моделей
  • извлечение признаков из изображений Sentinel-2
  • анализ спутниковых изображений с разными предтекстовыми конфигурациями

Ограничения

Для нормализации требуются статистики mean и std по каналам; по умолчанию нормализация отключена. RGB-контрольные точки обучены в порядке каналов BGR, а загрузка пользовательского кода требует trust_remote_code=True.

Карточка модели

README от автора на Hugging Face, как он его опубликовал

Открыть на Hugging Face

MMEarth Transformers Models

Hugging Face–compatible checkpoints converted from the official MMEarth MP-MAE pretrained weights. Each subfolder is a standalone model repo layout (config.json, model.safetensors, preprocessor, and remote code) for geospatial feature extraction.

Model Description

These models are ConvNeXt V2 encoders pretrained with Multi Pretext Masked Autoencoding (MP-MAE) on the MMEarth multi-modal geospatial dataset. Checkpoints cover different pretext task configurations (all modalities, S2-only, RGB/BGR, image-level, pixel-level) and model sizes (atto, tiny).

All folders ship self-contained remote code (modeling_mmearth.py, processor, pipeline) and load with trust_remote_code=True.

Developed by: MMEarth Authors
Converted for Hugging Face by: BiliSakura
License (weights): MIT
Original paper: MMEarth: Exploring Multi-Modal Pretext Tasks For Geospatial Representation Learning (ECCV 2024)

Available checkpoints (10 models)

FolderInputSizeDatasetLossImagePatchCh
mmearth-convnextv2-atto-all-mod-1m-64-uncertainty-56x8all_modatto1M_64uncertainty56812
mmearth-convnextv2-atto-all-mod-1m-64-unweighted-56x8all_modatto1M_64unweighted56812
mmearth-convnextv2-atto-all-mod-1m-128-uncertainty-112x16all_modatto1M_128uncertainty1121612
mmearth-convnextv2-atto-all-mod-100k-128-uncertainty-112x16all_modatto100k_128uncertainty1121612
mmearth-convnextv2-tiny-all-mod-1m-64-uncertainty-56x8all_modtiny1M_64uncertainty56812
mmearth-convnextv2-atto-s2-1m-64-uncertainty-56x8S2atto1M_64uncertainty56812
mmearth-convnextv2-atto-rgb-1m-64-uncertainty-56x8rgb (BGR)atto1M_64uncertainty5683
mmearth-convnextv2-atto-rgb-1m-128-uncertainty-112x16rgb (BGR)atto1M_128uncertainty112163
mmearth-convnextv2-atto-img-mod-1m-64-uncertainty-56x8img_modatto1M_64uncertainty56812
mmearth-convnextv2-atto-pix-mod-1m-64-uncertainty-56x8pix_modatto1M_64uncertainty56812

Legacy .pth filename mapping is in conversion_manifest.json.

Usage

Processors default to do_resize: false. Inputs keep native height and width. Apply per-band MMEarth normalization when you have dataset statistics (image_mean / image_std).

from transformers import pipeline
import numpy as np

MODEL = "/path/to/MMEarth-transformers/mmearth-convnextv2-atto-rgb-1m-64-uncertainty-56x8"

pipe = pipeline(
    task="mmearth-feature-extraction",
    model=MODEL,
    trust_remote_code=True,
)

# RGB/BGR: 3 bands at native size (56×56 for this checkpoint)
image = np.random.rand(56, 56, 3).astype(np.float32) * 1000
features = pipe(image, pool=True, return_tensors=True)
print(features.shape)  # torch.Size([1, 320])

12-band Sentinel-2 (all_mod / S2 checkpoints):

MODEL = "/path/to/MMEarth-transformers/mmearth-convnextv2-atto-all-mod-1m-64-uncertainty-56x8"
pipe = pipeline(task="mmearth-feature-extraction", model=MODEL, trust_remote_code=True)

image = np.random.rand(56, 56, 12).astype(np.float32) * 1000
features = pipe(image, pool=True, return_tensors=True)
print(features.shape)  # torch.Size([1, 320])

Dense spatial token map:

tokens = pipe(image, pool=False, return_tensors=True)
print(tokens.shape)  # [1, num_patches, hidden_size]

To resize to the pretraining reference size:

features = pipe(image, pool=True, return_tensors=True, image_processor_kwargs={"do_resize": True})

Load components directly:

from transformers import AutoModel, AutoImageProcessor

model = AutoModel.from_pretrained(MODEL, trust_remote_code=True)
processor = AutoImageProcessor.from_pretrained(MODEL, trust_remote_code=True)

Custom pipeline

Each checkpoint registers a custom pipeline in config.json:

"custom_pipelines": {
  "mmearth-feature-extraction": {
    "impl": "pipeline_mmearth.MMEarthImageFeatureExtractionPipeline",
    "pt": ["AutoModel"]
  }
}

This follows the HuggingFace custom pipeline pattern: remote code ships with the model folder, and trust_remote_code=True loads MMEarthImageFeatureExtractionPipeline, which extends the standard ImageFeatureExtractionPipeline with numpy array and file path support.

The built-in image-feature-extraction task also works:

pipe = pipeline(task="image-feature-extraction", model=MODEL, trust_remote_code=True)

Normalization

MMEarth pretraining normalizes each band with dataset-specific mean/std from data_*_band_stats.json. The converted preprocessor defaults to do_normalize: false because band statistics are not embedded in the legacy checkpoints. Provide your own image_mean / image_std when preprocessing:

features = pipe(
    image,
    pool=True,
    return_tensors=True,
    image_processor_kwargs={
        "do_normalize": True,
        "image_mean": [...],  # one value per channel
        "image_std": [...],
    },
)

RGB checkpoints were trained with BGR channel order (bands B4, B3, B2). The processor swaps RGB→BGR when channel_order="bgr".

Dependencies

  • transformers, torch, timm, safetensors
  • opencv-python (multispectral resize with more than 4 channels when do_resize=True)

Citation

@inproceedings{nedungadi2024mmearth,
  title={MMEarth: Exploring multi-modal pretext tasks for geospatial representation learning},
  author={Nedungadi, Vishal and Kariryaa, Ankit and Oehmcke, Stefan and Belongie, Serge and Igel, Christian and Lang, Nico},
  booktitle={European Conference on Computer Vision},
  pages={164--182},
  year={2024},
  organization={Springer}
}

Как запустить

На своей GPU в ailist. Цена — по текущим предложениям провайдеров

GPU в ailist

Универсальный рантайм · transformers

Нельзя запустить

В репозитории нет config.json: не понять архитектуру модели.

Ревизия весов
539f49e

0 моделей