Skip to content

LuigiSigillo/MWT-Diff

Repository files navigation

If you like our project, please give us a star ⭐ on GitHub for latest update.

arXiv Elsevier Pattern Recognition Letters visitors GitHub Issues or Pull Requests GitHub Issues or Pull Requests


Luigi Sigillo, Renato Giamba, and Danilo Comminiello

ISPAMM Lab, Sapienza University of Rome

📰 News

  • [2026.01.08] Accepted at Pattern Recognition Letters
  • [2025.02.10] Accepted at ICLR 2025 Workshop on Machine Learning for Remote Sensing (ML4RS)

😮 Highlights

💡 Metadata, Wavelet, and Time-Aware Conditioning

MWT-Diff introduces a metadata-, wavelet-, and time-aware encoder that captures auxiliary attributes, multi-scale frequency cues, and temporal relationships to steer diffusion-based reconstruction for satellite image SR.

🔥 High-Fidelity Satellite Super-Resolution

By conditioning hierarchical diffusion dynamics with MWT-Encoder embeddings, the model restores fine-grained textures, boundaries, and spectral details that are critical for remote sensing analysis.

👀 Robust Across Datasets

Experiments show favorable performance over recent SR approaches on multiple satellite datasets, with improvements in perceptual quality metrics such as FID and LPIPS.

🚀 Main Results

For more evaluation, please refer to our paper for details.

How to run experiments 💻

Building Environment

conda create --name=mwt-diff python=3.9
conda activate mwt-diff
pip install -r requirements.txt

Train

To launch the training of the model, update the config paths and output directory as needed:

python main.py --base configs/sentinel/v2-finetune_text_T_512.yaml -t --gpus 1 --logdir logs/mwt_diff

Generate

Request access to the pretrained models from here.

To launch generation:

python scripts/sr_val_ddpm_text_T_vqganfin_old_sentinel.py \
	--init-img path/to/low_res_images \
	--outdir outputs/mwt_diff_samples \
	--config configs/sentinel/v2-finetune_text_T_512.yaml \
	--ckpt weights/stablesr_000117.ckpt \
	--vqgan_ckpt weights/vqgan_cfw_00011.ckpt \
	--ddpm_steps 200 \
	--colorfix_type adain

Evaluation

Request access to the pretrained models from here.

To run evaluation:

python -c "from basicsr.metrics.lpips_2dirs import compute_lpips_distance; compute_lpips_distance('outputs/mwt_diff_samples', 'path/to/ground_truth', output_file='lpips.txt', use_gpu=True)"

Cite

Please cite our work if you found it useful:

@article{SIGILLO2026102,
title = {Metadata, wavelet, and time aware diffusion models for satellite image super resolution},
journal = {Pattern Recognition Letters},
volume = {202},
pages = {102-107},
year = {2026},
issn = {0167-8655},
doi = {https://doi.org/10.1016/j.patrec.2026.01.031},
url = {https://www.sciencedirect.com/science/article/pii/S0167865526000589},
author = {Luigi Sigillo and Renato Giamba and Danilo Comminiello},
keywords = {Image super resolution, Diffusion models, Wavelet, Satellite image super resolution},
}

Star History

Star History Chart

Acknowledgement

This project is based on StableSR. Thanks for their awesome work.

About

Official Repository of Metadata, Wavelet, and Time Aware Diffusion Models for Satellite Image Super Resolution [2026 Pattern Recognition Letters]

Resources

Stars

Watchers

Forks

Releases

Packages

Contributors

Languages