RadioTrace: Transmitter-Aware Diffusion for Radio Map Estimation without Deployment-Time Fine-Tuning
August 9, 2026 ยท View on GitHub

This repository provides code for RadioTrace, a noval radio map estimation framework that reconstructs RSS radio maps from sparse measurements without deployment-time fine-tuning by integrating a pre-trained diffusion prior with transmitter location estimation inside the denoising loop. An optional propagation-guided K-means initialization improves robustness under restricted-area sampling.
Related Publications: ๐ Conference Paper | ย ย โขย ย ๐ Journal Extended Version |
Results

Quick Start
0) Prepare the environment
conda create -y -n radiotrace python=3.13 -c conda-forge
conda activate radiotrace
pip install -r requirements.txt
1) Download and place the dataset (RadioMapSeer)
- Download RadioMapSeer.
- Unzip it into the repository root directory.
2) Download the pretrained diffusion model (Google Drive)
Download the pretrained checkpoint from Google Drive and place it anywhere you prefer (recommended: ./).
Note: The pretrained model is trained as a generic diffusion prior and does not need to see diverse sampling patterns during training. Sampling patterns are handled at inference via RadioTrace.
3) Run RadioTrace inference / testing
python sample_radiotrace.py \
--data_dir path/to/dataset/ \
--model_path path/to/model/file \
--type restrict_wo_BS \
--rate 0.01 \
--cluster_init
Optional: Train the diffusion model yourself
If you do not use a provided pretrained checkpoint, you can train the conditional diffusion model with:
python train_cond_ddpm.py
Command-Line Arguments (inference)
-
--data_dir
Path to the dataset root directory (RadioMapSeer). -
--model_path
Path to the pretrained diffusion checkpoint file (.pt / .pth). -
--type
Sampling / evaluation mode. Example used in the paper:restrict_wo_BS(restricted-area sampling without base-station region coverage). -
--rate
Sampling rate (e.g., 0.01 means 1% measurements are observed). -
--cluster_init
Enables propagation-guided K-means initialization for Tx coordinates to reduce poor local minima and improve robustness.
To list all options:
python sample_radiotrace.py -h
Citation
@ARTICLE{yang2026radiotrace,
author={Yang, Liu and Li, Qiang and Cao, Zhuo and Xiong, Weijie and Sun, Guomin and Lin, Jingran},
journal={IEEE Transactions on Wireless Communications},
title={RadioTrace: Transmitter-Aware Diffusion for Radio Map Estimation Without Deployment-Time Fine-Tuning},
year={2026},
volume={25},
number={},
pages={21105-21118},
doi={10.1109/TWC.2026.3716965}
}
@inproceedings{yang2025radiotrace,
title={Radiotrace: Bridging Diffusion Priors and RSS Measurements for Accurate Radio Map Estimation},
author={Yang, Liu and Li, Qiang and Cao, Zhuo and Lin, Jingran},
booktitle={2025 IEEE 35th International Workshop on Machine Learning for Signal Processing (MLSP)},
pages={1--6},
year={2025},
organization={IEEE}
}
Acknowledgements
This implementation builds upon and is inspired by the RadioDiff repository: