Abstract
P1413
Introduction: We developed a novel open-source software, PyTomography, for tomographic image reconstruction using the python package PyTorch. The software is capable of traditional reconstruction techniques, such as MLEM and OSEM, but also establishes a framework for integrating deep-learning based architectures with traditional reconstruction algorithms. There are two major advantages our software provides over other freely available reconstruction software. Firstly, the software is capable of GPU-accelerated processing and thus runs significantly faster than traditional CPU based open-source alternatives. Secondly, being developed in python, PyTomography is straightforward to learn and use. The software will be made publicly available on the Python Package Index, and a complete tutorial series will be uploaded to YouTube.
Methods: PyTomography is developed in python and uses an object-oriented framework for the design of all relevant components. Forward/back projections, attenuation correction, and point-spread-function (PSF) modeling operators are implemented using PyTorch functions and classes, such as convolutional layers and fully connected layers. Although these are often used as components of a neural network, they are used here purely to perform GPU accelerated operations; i.e. no deep-learning is used. The software is designed for optimal extendibility and reusability of existing components. Operators are all implemented independently and can be configured in a modular fashion.
A desirable consequence of implementation in PyTorch is that GPU-based capabilities permit traditional reconstruction algorithms to run significantly faster than in other available open-source libraries. As initial proof-of-concept assessment, we investigated application of the OSEM algorithm (5 iterations, 2 subsets) for SPECT reconstruction on tomographic data involving 120 projections of a cylindrical uniform phantom (matrix size of 128x128). We compared our reconstructions relative those by the popular Software for Tomographic Image Reconstruction (STIR) library in terms of reconstruction times. All data analyses were performed on a computer containing an Intel Xeon E5-2686 v4 processor and a NVIDIA Tesla V100 GPU.
Additionally, to perform extensive validation of our software, noise-bias curves of radionuclide concentrations in various organs of an extended-cardiac torso (XCAT) phantom were compared with corresponding outputs from STIR. The data represented a 177Lu-PSMA-617 SPECT/CT at 24h post-injection of 1700MBq. SPECT acquisition using a Siemens Symbia scanner was simulated with the SIMIND Monte Carlo program; data consisted of 120 projections (matrix size 128x384) each scanned for 15 seconds. Reconstruction was performed using OSEM with 4 iterations and 8 subsets; attenuation and 1D PSF corrections were used.
Results: The reconstruction times for the cylindrical phantom for the cases of no correction, attenuation correction, attenuation + 1D-PSF correction, and attenuation + 2D-PSF correction were 53.9s, 104.9s, 146.5s, and 362,0s in STIR, and 2.1s, 2.9s, 4.3s, and 4.3s in our proposed software (Figure 1). The reconstruction times for the XCAT phantom were 32.7s and 2606.7s for PyTomography and STIR respectively, indicative of a 79.7x increase in reconstruction speed. The noise bias curves for each reconstruction software were nearly identical for all organs (Figure 3). Very small discrepancies (Figure 2), found primarily in regions of small volume or of lower radionuclide concentration, are primarily due to differences in the convolutional kernel size used by each software during PSF modeling.
Conclusions: We developed a novel software package for tomographic reconstruction. While our software yields consistent predictions with other open-source reconstruction software, it is shown here to perform SPECT reconstructions up to 79.7x faster due to the utilization of graphical processing unit resources.