Skip to content
← All projects
In progressMay 2026 — present

Low-Dose PET Reconstruction with Diffusion Models

Reconstructing a full-dose medical scan from a twentieth of the radiation.

PyTorchHuggingFace DiffusersAccelerateNumPyNiBabelCUDA

The problem

A PET scan trades image quality for radiation. Lower the injected dose and you cut the patient’s exposure, the time they spend inside the scanner and the energy the machine burns — but you get back a noisy, barely diagnostic image. The question I took on for my master’s thesis was whether a generative model could recover the full-dose image from the low-dose one, and how far the dose could realistically be pushed down.

The answer I worked with was 1/20 of the standard dose: roughly a 95% reduction in radiation, scan time and energy.

What I built

Two diffusion paradigms, deliberately set against each other:

  • A supervised conditional UNet. The low-dose scan is fed in as a conditioning channel and the model learns the denoising trajectory towards its full-dose counterpart, sampled with DDIM.
  • An unconditional full-dose prior with measurement guidance. The model learns what a full-dose scan looks like with no knowledge of the input, and the low-dose measurement steers sampling at inference time through Diffusion Posterior Sampling (DPS).

Both were benchmarked against two discriminative baselines — a regression UNet ablation and a RED-CNN — so the comparison was not just “diffusion works” but “diffusion works better than the cheap thing, and by how much”.

The dataset was 371 paired NIfTI volumes (full dose against dose reduced to 1/20), processed slice by slice over axial cross-sections. The training and evaluation pipeline was built end to end on HuggingFace Diffusers, Accelerate and Datasets, with mixed precision, gradient accumulation, EMA and a lot of VRAM-aware bookkeeping to make the thing fit on cloud NVIDIA GPUs.

What came out of it

Evaluated on a held-out set with PSNR, SSIM, NRMSE and intensity-preservation metrics, the diffusion methods reconstruct anatomically faithful full-dose images and clearly beat the raw low-dose input. The supervised diffusion model takes the image-quality metrics — but only by a narrow margin, and the regression UNet matches or beats it on intensity preservation at a fraction of the compute.

That is the honest finding, and the more interesting one: in a clinical setting the question is not which model wins the leaderboard but what you are paying, in compute and in latency, for the last few tenths of a decibel.

The thesis was graded 9.8/10, supervised by Ignacio Villanueva Díez and Joaquín López Herraiz.

Where it is going

This is the one project on here that did not stop at the defence. The research question was more interesting than the deadline allowed for, and my tutor gave me continued access to compute to keep training diffusion models on it. Development is ongoing.