Monte Carlo based reconstruction for dynamic acquisitions in SPECT

Aiming for absolute perfusion in myocardial dynamic studies

Introduction

The main theory behind reconstruction methods are the inverse problems, which can be described as how one can calculate the casual factors from a set of observed samples. This methodology of going backwards or in inverse path from the measured quantities to the original distribution of some phenomena, called reconstruction.

The main focus here is on Single-photon emission computed tomography (SPECT), where the data and the reconstruction methods, so do the optimization techniques are aimed to exploit the Poisson nature of the gamma photon detection in these systems. For a mathematically more elaborate discussion, please take a look at spect data modelling.

The main problem during SPECT reconstruction is that there are many new methodologies developed since the filtered back projection in terms of acquisition and multi modality based enhancements. One of the well known addition is the attenuation correction, which is computed based on the $\mu$ map of the low-dose CT during the acuqisition to help correct the attenuated gamma-photons to be “recalculated”. To have a flexible optimization method in incorporating the attenuation correction and forward and back projection formulas, iterative reconstruction methods have been developed named as MLEM, further enhancement have been done by named OSEM.

The main problem however, with this MLEM-based approach is the forward and back projection methods, which have to be developed in a physically accurate manner. The best way is to utilize monte carlo simulation to simulate the gamma photon traversal inside the body and the collimator as well and the oftankonyv.


Task

Develop a CUDA based monte carlo projector with the utilization of pytorch.


Background materials

To understand the different parts of this complex approach one needs to master the following materials

  1. The book on photon transport with a focus on variance reduction techniques, these are mostly for the transport simulation
  2. Convex optimization by Boyd is must have for the optimization part of the algorithm
  3. CUDA programming by nvidia, a good reference will give you an idea about the hardware and the language constructs to program GPUs (in this time only by using CUDA)
  4. C++ build systems, especially CMake, there a few good videos on the topic

Contact

szaqaei@inf.elte.hu, kari.bela@semmelweis.hu