OmniRSI: Taming Latent Diffusion for Unified Multimodal Remote Sensing Image Generation
Organizations: Wuhan University & Zhongguancun Academy
Abstract
Multimodal remote sensing image generation emerges as a promising paradigm for recovering complete and complementary observations from heterogeneous and partially observed remote sensing data. However, existing methods predominantly depend on sensor-specific fine-tuning of natural image generation models, limiting unified multimodal generation capacity due to the absence of shared representations and robust conditioning mechanisms. To address these challenges, we propose OmniRSI, a unified multimodal remote sensing image generation model. Specifically, we develop a remote sensing-specific variational autoencoder that captures multimodal priors and promotes a locally smooth latent space for unified representation and robust reconstruction across diverse observed data. Building upon that, we fully adapt Stable Diffusion 3.5 with a ControlNet branch to support unified multimodal generation and translation conditioned on textual and visual cues. Besides, we devise a training-free cyclic latent alignment mechanism that iteratively enriches incomplete visual conditions with generated multimodal information, progressively improving guidance reliability while preserving observed measurements. We also construct RSI-MM, a large-scale dataset comprising 11.5M multi-resolution images with text annotations and partially paired data for training and evaluation. Extensive experiments verify that OmniRSI achieves superior performance in multimodal reconstruction, generation and translation.
Figures & tables
| Modality | |||||||||||
| Datasets | Source&Platform | RGB | MSI | SAR | PAN | Text | Text Num. | Spat. Res.(m) | Band. Configs. | Image Num. | Image Size |
| Git-10M | GoogleEarth&Public datasets | ✓ | – | – | – | ✓ | 10,452,649 | 0.5 128 | 3 | 10,452,649 | 256 256 |
| EuroSAT | Sentinel-2 | ✓ | ✓ | – | – | ❍ | 27,000 | 10/20/60 | 13 | 27,000 | 64 64 |
| OSCD | Sentinel-2 | ✓ | ✓ | – | – | ❍ | 48 | 10/20/60 | 13 | 48 | 241 1180 |
| M3M-CR | PlanetScope&Sentinel-1 | ✓ | ✓ | ✓ | – | ❍ | 63,000 | 3/10 | 5 | 63,000 | 300/90 |
| OpenEarthMap-SAR | UmbraSpace&NAIP&IGN&GSI | ✓ | – | ✓ | – | ❍ | 5,033 | 0.15-0.5 | 4 | 5,033 | 1024 1024 |
| Method | PAN | OPT | SAR | NIR | MSI | Average | Complexity | |||||||
| PSNR | SSIM | PSNR | SSIM | PSNR | SSIM | PSNR | SSIM | PSNR | SSIM | PSNR | SSIM | Params(M) | FLOPs(G) | |
| Any2any | 37.68 | 0.838 | 39.06 | 0.951 | 26.85 | 0.846 | 29.99 | 0.951 | 21.78 | 0.796 | 32.69 | 0.890 | 13.322 83.610 | 329.120 473.663 |
| Ours | 42.79 | 0.972 | 39.71 | 0.958 | 27.15 | 0.878 | 32.83 | 0.953 | 26.91 | 0.869 | 34.95 | 0.935 | 83.815 | 447.742 |
| Method | Step | NFE | PAN MSI | MSI PAN | SAR MSI | MSI SAR | Average | |||||||
| Solver | CLA | Text | PSNR | SSIM | PSNR | SSIM | PSNR | SSIM | PSNR | SSIM | PSNR | SSIM | ||
| Euler | ✕ | ✕ | 40 | 40 | 21.73 | 0.660 | 34.77 | 0.910 | 17.09 | 0.365 | 19.54 | 0.278 | 25.21 | 0.632 |
| Euler | ✓ | ✕ | 40 | 80 | 22.07 | 0.662 | 35.17 | 0.914 | 17.36 | 0.373 | 20.32 | 0.291 | 25.63 | 0.639 |
| Euler | ✕ | ✓ | 40 | 40 | 24.30 | 0.768 | 35.48 | 0.919 | 18.11 | 0.375 | 19.66 | 0.283 | 26.43 | 0.671 |
| Euler | ✓ | ✓ | 40 | 80 | 25.16 | 0.786 | 36.10 | 0.925 | 18.39 | 0.382 | 20.50 | 0.302 | 27.10 | 0.683 |
| Euler | ✕ | ✕ | 80 | 80 | 21.78 | 0.653 | 35.09 | 0.907 | 17.19 | 0.366 | 20.27 | 0.285 | 25.48 | 0.631 |
Appendix figures & tables10 assets
Supplementary material from the paper’s appendix.
Appendix
| Slot | Name | Wavelength Range (nm) | Slot Wavelength Center (nm) | Sentinel-2A/B | Landsat 8/9 | WorldView2/3 | Landsat 7 | GaoFen/GeoEye Series |
| 0 | PAN | Sensor-dependent | — | — | B8 | PAN | B8 | PAN |
| 1 | Coastal | 400–454 | 427 | B1 | B1 | Coastal | — | — |
| 2 | Blue | 450–526 | 488 | B2 | B2 | Blue | B1 | Blue |
| 3 | Green | 510–600 | 555 | B3 | B3 | Green | B2 | Green |
| 4 | Yellow | 585-–625 | 605 | — | — | Yellow | — | — |
| 5 | Red | 630–690 | 660 | B4 | B4 | Red | B3 | Red |
| Configuration | Value |
| SD3.5 Medium backbone | |
| MMDiT blocks | 24 |
| Latent input/output channels | 16 / 16 |
| Latent patch size | |
| Hidden dimension | 1,536 |
| Attention heads / head dimension | 24 / 64 |
| Valid Band | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 |
| Self-Rec PSNR | 32.66 | 33.45 | 34.61 | 35.61 | 35.86 | 37.95 | 38.95 | 38.97 | 39.02 | 41.44 | 43.01 | 43.95 | 45.58 |
| Self-Rec SSIM | 0.930 | 0.940 | 0.954 | 0.959 | 0.966 | 0.969 | 0.974 | 0.977 | 0.979 | 0.986 | 0.988 | 0.990 | 0.991 |
| Full-Rec PSNR | 29.75 | 32.59 | 33.42 | 33.45 | 33.58 | 36.04 | 36.82 | 37.03 | 37.20 | 41.15 | 42.68 | 43.78 | 45.58 |
| Full-Rec SSIM | 0.904 | 0.929 | 0.935 | 0.936 | 0.936 | 0.961 | 0.968 | 0.972 | 0.975 | 0.987 | 0.989 | 0.990 | 0.991 |
| Valid Band | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 |
| PSNR | 26.22 | 30.60 | 33.32 | 33.76 | 34.06 | 37.36 | 37.63 | 39.18 | 40.92 | 41.67 |
| SSIM | 0.671 | 0.929 | 0.937 | 0.946 | 0.951 | 0.965 | 0.967 | 0.971 | 0.974 | 0.975 |
| Resolution | 256 256 | 512 512 | ||||
| Method | Mem.(G) | Time(s) | FPS | Mem.(G) | Time(s) | FPS |
| VAE Reconstruction | ||||||
| Any2any(MSI) | 2.683 | 0.027 | 37.037 | 40.530 | 0.279 | 3.579 |
| RS-VAE(Ours) | 0.359 | 0.018 | 54.969 | 0.952 | 0.066 | 15.110 |
| Text-to-image Generation | ||||||
| CC-Diff | 7.961 | 2.974 | 0.336 | 9.832 | 5.805 | 0.172 |