Radiance MAE Base v1

Radiance is an open-weight ViT-Base Masked Autoencoder (MAE) foundation model for Sentinel-1 SAR imagery from Stratus Labs. Pretrained self-supervised on the SSL4EO-S12 Sentinel-1 GRD split for 100 epochs, then intended to be fine-tuned for downstream Earth-observation tasks (flood mapping, crop type, deforestation, urban change, etc.).

Radiance is the SAR sibling to Nocturne (Stratus Labs' bioacoustic classifier). Same lab, same open license, different modality.

Model

Architecture ViT-B/16 MAE encoder + 8-block ร— 512-dim decoder
Input Sentinel-1 GRD, 2 channels (VV + VH), 224 ร— 224 patches
Patch size 16
Encoder embed dim 768
Encoder depth 12
Encoder heads 12
Decoder embed dim 512
Decoder depth 8
Mask ratio 0.75
Params ~110 M (encoder ~86 M)

Training

  • Dataset: SSL4EO-S12 Sentinel-1 GRD split (globally sampled SAR patches, dB-normalised with S1_MEAN = [-12.577, -20.265], S1_STD = [5.176, 5.870])
  • Epochs: 100
  • Batch size: 64
  • Optimiser: AdamW, lr = 1.5e-4, wd = 0.05, cosine schedule
  • Precision: bf16 autocast
  • Hardware: 1ร— NVIDIA GB10 (DGX Spark) โ€” ~15 days wall-clock

Final training loss decreased monotonically across all 100 epochs. The epoch_099.pt checkpoint published here is the final-epoch weights.

Usage

import torch
from radiance.model import RadianceMAE  # from the training repo; also included in this repo as model.py

ckpt = torch.load("epoch_099.pt", map_location="cpu")
model = RadianceMAE(img_size=224, patch_size=16, in_chans=2)
model.load_state_dict(ckpt["model"])
model.eval()

# Encode a 2-channel SAR patch (VV, VH) shape [B, 2, 224, 224]
with torch.no_grad():
    latent, _, _ = model.forward_encoder(sar_patch, mask_ratio=0.0)  # no masking at inference
    # `latent` is [B, N_patches+1, 768] โ€” use the CLS token or pool the patch tokens

Files

File Purpose
epoch_099.pt Final pretrain weights (1.34 GB, PyTorch state dict)
config.yaml Exact training config used
model.py RadianceMAE architecture (drop into your project or import)

Intended use

Pretrained backbone for downstream SAR tasks. The v1 release is the foundation model only โ€” fine-tunes for specific tasks (flood mapping via SEN1Floods11, crop-type segmentation, etc.) will be published as sibling stratus-labs/radiance-*-v1 repos as they land.

Off-the-shelf, you can use Radiance as a feature extractor for any 2-channel SAR patch task by freezing the encoder and training a task head on top.

Limitations

  • Input is Sentinel-1 GRD dB-scaled specifically โ€” other SAR products (SLC, IW, Sentinel-2 optical) are out-of-distribution.
  • 224ร—224 patch size is fixed for the released weights; other sizes would need re-pretrain.
  • No radiometric calibration correction beyond the SSL4EO-S12 dB normalisation.
  • No benchmarks yet against other SAR foundation models โ€” first fine-tune will provide the head-to-head.

Citation

If you use Radiance in research or a product, please cite:

@misc{stratus-labs-radiance-mae-base-v1,
  title = {Radiance MAE Base v1: an open Sentinel-1 SAR foundation model},
  author = {Stratus Labs},
  year = {2026},
  publisher = {HuggingFace},
  howpublished = {\url{https://huggingface.co/stratus-labs/radiance-mae-base-v1}},
}

License

CC-BY-4.0. Weights, code, and model card are free to use with attribution. SSL4EO-S12 dataset used for pretraining carries its own license โ€” see wangyi111/SSL4EO-S12.

About Stratus Labs

Stratus Labs ships open-weight foundation models for the natural world. First release: Nocturne (non-bird bioacoustic classifier). Second: Radiance (SAR foundation model, this repo).

Downloads last month
-
Inference Providers NEW
This model isn't deployed by any Inference Provider. ๐Ÿ™‹ Ask for provider support

Model tree for stratus-labs/radiance-mae-base-v1

Finetunes
1 model