Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Appearance settings

UNIC-Lab/RadioDiff-Inverse

Open more actions menu
 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

4 Commits
4 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

RadioDiff-Inverse

📡 Welcome to the RadioDiff Family

Radio map construction via generative diffusion models — UNIC Lab, Xidian University


🔷 Base Backbone

RadioDiffThe foundational diffusion model for radio map construction.   📄 Paper  |  💻 Code  |  IEEE TCCN


🔬 Physics-Informed Extensions

RadioDiff-k²PINN-enhanced diffusion guided by the Helmholtz equation.   📄 Paper  |  💻 Code  |  IEEE JSAC

iRadioDiffIndoor radio map construction with physical information integration.   📄 Paper  |  💻 Code  |  IEEE ICC  Best Paper


⚡ Efficiency & Dynamics

RadioDiff-TurboEfficiency-enhanced RadioDiff for accelerated inference.   📄 Paper  |  INFOCOM Workshop

RadioDiff-FluxAdaptive reconstruction under dynamic environments and base station location changes.   📄 Paper  |  IEEE TCCN


🌐 Extended Scenarios

RadioDiff-3D3D radio map construction with the UrbanRadio3D dataset.   📄 Paper  |  💻 Code  |  IEEE TNSE

RadioDiff-FSFew-shot learning for radio map construction with limited measurements.   📄 Paper  |  💻 Code  |  IEEE IoTJ


📶 Sparse Measurement & Localization

RadioDiff-InverseSparse measurement-based radio map recovery for ISAC applications.   📄 Paper  |  💻 Code  |  IEEE TWC

RadioDiff-LocSparse measurement-based NLoS localization using diffusion models.   📄 Paper  |  arXiv


📚 For a comprehensive categorized overview of radio map research, visit Awesome-Radio-Map-Categorized.

Diffusion posterior sampling for radio-map style inpainting / inverse problems.

This repository applies the FPS-SMC diffusion posterior sampling pipeline to radio map reconstruction tasks, using building masks as conditioning signals and the RadioMapSeer dataset.


1. Environment

conda create -n radiodiff python=3.8 -y
conda activate radiodiff
pip install -r requirements.txt

A CUDA-compatible PyTorch build is strongly recommended. The code was tested with PyTorch 2.0.0+cu118.


2. Dataset: RadioMapSeer

This project uses the RadioMapSeer dataset for radio map reconstruction experiments.

After downloading, organize the data under data/ as follows:

data/
├── samples/           # radio map images (used as ground truth)
├── buildings_complete/# building footprint masks
├── antennas/          # antenna position maps
└── val_images/        # validation split images

See data/README.md for more details.


3. Pretrained Checkpoints

Download the pretrained score estimation models and place them in models/.

File Dataset Source
ffhq_10m.pt FFHQ Google Drive (from DPS2022)
imagenet256.pt ImageNet Google Drive (from DPS2022)
256x256_diffusion_uncond.pt ImageNet (alt.) OpenAI
models/
├── ffhq_10m.pt
└── imagenet256.pt      # or 256x256_diffusion_uncond.pt

See models/README.md for details.


4. Run Experiments

All scripts default to repository-relative output paths under results/. You can override the output directory by passing it as the first argument.

Random mask — with building-mask conditioning

./run_random_cond.sh
# or specify output directory:
./run_random_cond.sh results/my_run

Random mask — unconditional

./run_random_uncond.sh

Sensor-rectangle mask — with building-mask conditioning

./run_sensor_cond.sh

Sensor-rectangle mask — unconditional

./run_sensor_uncond.sh

Run directly with Python

python3 sample_condition.py \
    --task_config configs/inpainting_config_random_cond.yaml \
    --save_dir results/my_run \
    --gpu 0 \
    --num_images 10 \
    --mask_ratios 0.9 \
    --noise_levels 0.05

Interpolation baselines (no diffusion)

python3 sample_interpolation.py \
    --task_config configs/inpainting_config_random_cond.yaml \
    --save_dir results/interp \
    --gpu 0

5. Compute Metrics

Evaluate all experiments under results/:

python3 advanced_metric_calculator.py --base_dir results --gpu 0

Evaluate a single experiment directory:

python3 advanced_metric_calculator.py --exp_dir results/random_cond --gpu 0

Outputs per experiment: metrics.json, per_sample_metrics.json Summary outputs: all_result.json, summary_metrics_vMMDD_HHMM.json


6. Project Structure

.
├── sample_condition.py        # main conditional pipeline
├── sample_condition_uncond.py # main unconditional pipeline
├── sample_interpolation.py    # interpolation baselines (RBF, Linear, etc.)
├── advanced_metric_calculator.py
├── configs/                   # task / model / diffusion YAML configs
├── data/                      # datasets (git-ignored except README)
├── models/                    # checkpoints (git-ignored except README)
├── results/                   # experiment outputs (git-ignored except README)
├── guided_diffusion/          # diffusion model and sampler internals
├── util/                      # metrics, image utilities, logging
├── ImageNet/                  # ImageNet-specific entry scripts
├── scripts/                   # utility scripts
├── run_random_cond.sh
├── run_random_uncond.sh
├── run_sensor_cond.sh
└── run_sensor_uncond.sh

7. Experimental Components

The road-conditioned path is kept for reference but is not part of the default reproducible pipeline:

  • run_cond_road.sh is intentionally disabled
  • sample_road.py requires additional dataset wiring before use

Acknowledgements

This codebase builds on the diffusion posterior sampling / FPS-SMC framework. Pretrained checkpoints are from DPS2022. Radio map data is from the RadioMapSeer dataset.

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

Packages

Contributors

Languages

Morty Proxy This is a proxified and sanitized view of the page, visit original site.