SimCBCT Generator β Synthetic CT, Pelvis
A 3D regression model that generates synthetic CT (sCT) images from Cone-Beam CT (CBCT) scans of the PELVIS region. Part of the SimCBCTGenerator framework, which was used to generate the training data for this model (aligned input/output pairs by simulating CBCT data).
The model is trained with an nnUNet regression pipeline (nnUNetTrainerRegression_mae_deep, 3D full-resolution).
Intended Use
Convert acquired CBCT images to synthetic CT for pelvis anatomy. Typical applications include adaptive radiotherapy, where sCT is needed for dose recalculation or replanning directly from CBCT without a new planning CT acquisition. It was extensively tested for Elekta machines but initial inspection also results in good performance for Varian datasets!
Model Files
| File | Description |
|---|---|
checkpoints/model.pt |
TorchScript compiled model (~390 MB) |
checkpoints/metadata.json |
Patch size, normalization stats, inference config |
sct_generator.py |
Self-contained inference class β no nnUNet install required |
The model.pt is a TorchScript module exported with torch.jit.save() and must be loaded with torch.jit.load().
Requirements
torch
scipy
numpy
Quick Start
import numpy as np
from sct_generator import StandaloneRegressionInference
# Load model (pass the directory containing model.pt and metadata.json)
model = StandaloneRegressionInference(
model_path="checkpoints/",
device="cuda" # or "cpu"
)
# cbct_volume: 3D numpy array of HU values, shape (D, H, W)
cbct_volume = np.load("your_cbct_volume.npy")
# Run inference β returns sCT volume in HU, same spatial shape as input
sct_output = model.predict(cbct_volume)
predict() handles internally:
- Z-score normalization of the CBCT input
- Sliding-window tiled inference with Gaussian patch blending
- Denormalization of the sCT output back to HU values with the precomputed statistics
Training Details
| Field | Value |
|---|---|
| Trainer | nnUNetTrainerRegression_mae_deep |
| Configuration | 3d_fullres |
| Fold | all |
| Loss | MAE |
| Input | Physics-based simulated CBCT |
| Output | CT |
| Anatomy | Pelvis |
Citation
If you use this model or the SimCBCTGenerator framework, please cite:
@article{zimmermann2026simcbct,
title = {Eliminating Registration Bias in Synthetic CT Generation:
A Physics-Based Simulation Framework},
author = {Zimmermann, Lukas and Rauter, Michael and Schmid, Maximilian
and Georg, Dietmar and Kn\"{a}usl, Barbara},
journal = {arXiv preprint arXiv:2602.02130},
year = {2026}
}
Framework repository: github.com/openvoxelmed/simcbctgenerator