/ Модель

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

Лицензия
Apache 2.0
Опубликована
12 авг 2026

SkySensePlusPlus-transformers

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

Набор чекпойнтов SkySense++ на базе SwinV2 и ViT-Large для извлечения признаков из спутниковых снимков и задач дистанционного зондирования Земли.

0скачиваний за 30 дней1лайквеса обновлены12 авг 2026

Бенчмарки

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

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

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

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

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

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

SkySense++ Transformers — набор преобразованных чекпойнтов модели SkySense++ в формате, совместимом с Hugging Face Transformers. Разработчик репозитория BiliSakura; веса преобразованы из официального выпуска SkySense++. В набор входят варианты для оптических снимков высокого разрешения на SwinV2 Huge и для данных Sentinel‑1 и Sentinel‑2 на ViT-Large; все используют MSL-бэкбоны для дистанционного зондирования Земли.

Модель предназначена для извлечения признаков из спутниковых изображений и использования этих признаков в задачах наблюдения Земли, включая few-shot и 1-shot сегментацию с полной release-моделью. Для загрузки чекпойнтов используется удалённый код Transformers с параметром trust_remote_code=True. Fusion neck является дополнительным компонентом, а few-shot выпуск объединяет подмодули в сквозную модель объёмом около 6,8 ГБ. Репозиторий распространяется по лицензии Apache-2.0.

В README не приведены оценки качества и подробные ограничения применимости. Для few-shot модели вход должен содержать вертикально объединённые prompt- и query-изображения; варианты чекпойнтов рассчитаны на разные типы спутниковых данных, поэтому их следует выбирать соответственно источнику снимков.

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

  • извлечение признаков из спутниковых изображений Sentinel-1
  • извлечение признаков из снимков Sentinel-2
  • извлечение признаков из оптических снимков высокого разрешения
  • few-shot сегментация объектов на спутниковых снимках
  • one-shot сегментация по примеру на изображении

Ограничения

Для few-shot модели prompt и query должны подаваться вертикально объединёнными, где prompt расположен сверху, а query — снизу. Репозиторий использует удалённый код Transformers, который требуется включить при загрузке.

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

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

Открыть на Hugging Face

SkySense++ Transformers

HuggingFace-compatible checkpoints for SkySense++ zero-shot MSL backbones, converted from the official release weights.

Checkpoints

DirectoryModalityArchitectureSource
skysensepp-swinv2-msl-hrHigh-res opticalSwinV2 Huge + MSLskysensepp_release_hr.pth
skysensepp-vit-msl-s2Sentinel-2ViT-Large + MSLskysensepp_release_s2.pth
skysensepp-vit-msl-s1Sentinel-1ViT-Large + MSLskysensepp_release_s1.pth
skysensepp-fusion-neckMulti-modal fusion (optional)TransformerEncoderfusion.* from skysensepp_release.ckpt
skysensepp-fewshot-releaseFull 1-shot segmentationHR + S2 + S1 + fusion + VAE + UPerHeadskysensepp_release.ckpt

Each subdirectory is a self-contained HuggingFace model repo with remote code (trust_remote_code=True).

The fusion neck is an optional component — backbone checkpoints do not include or require it by default.

The few-shot release bundles all submodules into one end-to-end model (~6.8 GB).

Usage

from transformers import pipeline
import torch

MODEL = "/path/to/SkySensePlusPlus-transformers/skysensepp-swinv2-msl-hr"

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

hr_img = torch.randn(1, 3, 512, 512)
annotation = torch.zeros(1, 512, 512, dtype=torch.long)  # semantic class indices

features = pipe(hr_img, annotation=annotation)
print(features["last_hidden_state"].shape)  # (1, 2816, 16, 16)

Sentinel-2 / Sentinel-1 backbones use the same pipeline pattern:

s2_pipe = pipeline(
    task="image-feature-extraction",
    model="/path/to/skysensepp-vit-msl-s2",
    trust_remote_code=True,
    device="cpu",
)

s2_img = torch.randn(1, 10, 16, 16)
s2_anno = torch.zeros(1, 16, 16, dtype=torch.long)
features = s2_pipe(s2_img, annotation=s2_anno)
print(features["last_hidden_state"].shape)

SkySense++ MSL models require both imagery and a semantic annotation map. Use class index 0 for background/unlabeled regions during zero-shot feature extraction.

Optional fusion neck

fusion_pipe = pipeline(
    task="skysensepp-fusion",
    model="/path/to/skysensepp-fusion-neck",
    trust_remote_code=True,
    device="cpu",
)

# Concatenated HR + S2 + S1 stage-3 tokens per spatial location
hidden_states = torch.randn(256, 3, 2816)
fused = fusion_pipe(hidden_states)

print(fused["pooler_output"].shape)  # (256, 1024)

Few-shot / 1-shot segmentation

The full release model expects vertically stacked prompt+query inputs (prompt on top, query on bottom):

from transformers import pipeline
import torch

MODEL = "/path/to/SkySensePlusPlus-transformers/skysensepp-fewshot-release"

pipe = pipeline(
    task="skysensepp-fewshot",
    model=MODEL,
    trust_remote_code=True,
    device=0,  # GPU recommended (~24 GB); CPU OOMs at 1024×512 HR
)

# Stacked HR (3, 1024, 512), S2/S1 with seq=2, RGB targets (ImageNet-normalized)
hr = torch.randn(1, 3, 1024, 512)
s2 = torch.randn(1, 10, 2, 32, 32)
s1 = torch.randn(1, 2, 2, 32, 32)
targets = torch.randn(1, 3, 1024, 512)  # use real RGB annotation maps in practice
anno_mask = torch.zeros(1, 8, 4, dtype=torch.long)
anno_mask[:, 4:, :] = 1  # mask query (bottom) half

result = pipe(hr, s2_img=s2, s1_img=s1, targets=targets, anno_mask=anno_mask)
print(result["logits"].shape)  # (1, 65, 512, 512) — query region only

Conversion

Source project: /home/czy/local/projects/SkySensePlusPlus-transformers

conda activate rsgen
python scripts/convert_checkpoint_to_hf.py \
  --input-path /path/to/skysensepp_release_hr.pth \
  --modality hr \
  --output-dir /path/to/skysensepp-swinv2-msl-hr \
  --clean-output

# Full few-shot release (~6.8 GB)
python scripts/convert_checkpoint_to_hf.py \
  --input-path /path/to/skysensepp_release.ckpt \
  --modality fewshot \
  --output-dir /path/to/skysensepp-fewshot-release \
  --clean-output

Notes

  • HR conversion skips Swin relative-position buffers (relative_position_index, relative_coords_table). These are deterministically recomputed at init from window geometry — not randomly initialized. Learned CPB weights (cpb_mlp, logit_scale) are loaded.
  • The few-shot model uses the same 62 skipped HR buffers; all 1522 learned tensors load with 0 unexpected keys.

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

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

GPU в ailist

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

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

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

Ревизия весов
8d93654

0 моделей