GeoCR: Learning a Generalist Cloud Removal Prior from Heterogeneous Observations

GeoCR is a generalist cloud removal model that unifies RGB-only and multispectral cloud removal from single- or multi-temporal cloudy observations, with optional SAR guidance, within a single network. Compact stems extend a frozen pretrained RGB autoencoder, and a single flow transformer jointly models clean RGB and non-RGB latents. One pretrained checkpoint is used directly (GeoCR (w/o FT)) or adapted with LoRA (GeoCR (LoRA)).

Files

Path Contents
transformer/ GeoCR (w/o FT): the Stage 2 flow transformer, 3.853B parameters, three safetensors shards and config.json
lora/<dataset>/ GeoCR (LoRA): adapter_model.safetensors (23.1M parameters, rank 16) and adapter_config.json, one per evaluation setting
stems/stems.safetensors Stage 1 stems: ten-band TOA, ten-band BOA, NIR and SAR
vae/ae.safetensors the frozen FLUX.2 autoencoder
baselines/<dataset>/<method>/ the ten comparison methods retrained on each dataset, one checkpoint per method and dataset (baselines/README.md)

LoRA adapters: sen12ms-cr, sen2-mtc-new, whus2-crv, t-cloud, cuhk-cr1, cuhk-cr2, sen12ms-cr-rgb, sen2-mtc-new-rgb, whus2-crv-rgb.

Usage

The model runs with the code of the GitHub repository; see its README for installation and data preparation.

git clone https://github.com/KAIST-VICLab/GeoCR.git && cd GeoCR
hf download JeonghyeokDo/GeoCR --exclude "baselines/*" --local-dir weights
# GeoCR (w/o FT)
python -m geocr.infer --dataset sen12ms-cr --weights weights --out outputs/sen12ms-cr/wo-ft
# GeoCR (LoRA)
python -m geocr.infer --dataset sen12ms-cr --weights weights --lora sen12ms-cr --out outputs/sen12ms-cr/lora
python -m geocr.eval --dataset sen12ms-cr --pred outputs/sen12ms-cr/lora --metrics fid,dists,kid,lpips,ssim,psnr

Inference integrates the learned flow from Gaussian noise with four Euler steps on a uniform time grid, without classifier-free guidance, with a fixed per-sample noise seed.

Results

GeoCR (w/o FT) / GeoCR (LoRA), from Tables 2, 3, 4 and 10 of the paper. FID and DISTS are computed on RGB views; PSNR uses the bands of each setting. The full tables with every comparison method are in MODEL_ZOO.md.

Setting --dataset FID↓ DISTS↓ PSNR↑
SEN12MS-CR, full-band sen12ms-cr 28.4 / 29.5 0.202 / 0.205 29.29 / 29.19
Sen2_MTC_New, full-band sen2-mtc-new 52.9 / 52.7 0.182 / 0.181 20.77 / 20.76
WHUS2-CRv, full-band whus2-crv 18.9 / 18.5 0.111 / 0.107 32.29 / 32.15
T-CLOUD t-cloud 36.5 / 36.3 0.126 / 0.125 27.15 / 27.23
CUHK-CR1 cuhk-cr1 80.4 / 81.5 0.125 / 0.125 23.88 / 23.83
CUHK-CR2 cuhk-cr2 93.6 / 94.7 0.153 / 0.152 23.21 / 23.11
SEN12MS-CR, RGB-only sen12ms-cr-rgb 43.9 / 52.1 0.244 / 0.263 22.15 / 24.59
Sen2_MTC_New, RGB-only sen2-mtc-new-rgb 79.1 / 78.4 0.252 / 0.265 25.41 / 25.07
WHUS2-CRv, RGB-only whus2-crv-rgb 21.6 / 20.7 0.137 / 0.138 27.16 / 25.35

Training data

GeoCR is pretrained on the training splits of ten cloud removal datasets comprising 883,331 cloud-free targets: AllClear, SEN12MS-CR, WHUS2-CRv, Sen2_MTC_Old, Sen2_MTC_New, T-CLOUD, RICE1, RICE2, CUHK-CR1 and CUHK-CR2. Each LoRA adapter is trained on the training split of its dataset. The datasets are not redistributed; download links, terms and split lists are in DATA.md.

Licence

This repository is mixed-licence.

Artefact Licence
transformer/, stems/, lora/ CC BY-NC 4.0
vae/ae.safetensors Apache-2.0, the FLUX.2 autoencoder of black-forest-labs/FLUX.2-klein-base-4B
baselines/ the terms of each method's upstream code (baselines/README.md, texts in baselines/licenses/)

The GeoCR transformer was initialised from FLUX.2 [klein] 4B Base (Apache-2.0); attributions are in the NOTICE file and the weights licence in LICENSE-WEIGHTS.md. GeoCR is not a FLUX product and is not endorsed by Black Forest Labs.

Citation

@article{do2026geocr,
  title={GeoCR: Learning a Generalist Cloud Removal Prior from Heterogeneous Observations},
  author={Do, Jeonghyeok and Kim, Munchurl},
  journal={arXiv preprint arXiv:2609.32510},
  year={2026}
}
Downloads last month

-

Downloads are not tracked for this model. How to track
Inference Providers NEW
This model isn't deployed by any Inference Provider. 🙋 Ask for provider support

Model tree for JeonghyeokDo/GeoCR

Finetuned
(53)
this model

Paper for JeonghyeokDo/GeoCR