Skip to content

Latest commit

 

History

History
137 lines (94 loc) · 5.26 KB

README.md

File metadata and controls

137 lines (94 loc) · 5.26 KB

Dynamic PET

Read the documentation at https://bilgelm.github.io/dynamicpet Tests Codecov

pre-commit Black

Dynamic PET is designed for voxelwise analysis of reconstructed dynamic positron emission tomography (PET) scans, and also supports regional analysis.

Dynamic PET provides a command line interface (CLI) for easy image processing and also a Python API with greater flexibility.

Methods implemented in the CLI include:

  • Denoising
    • HighlY constrained backPRojection method constraining the backprojections to Local Regions of interest (HYPR-LR)
  • Reference tissue-based modeling
    • Standardized Uptake Value Ratio (SUVR)
    • Logan Reference Tissue Model (LRTM)
    • Simplified Reference Tissue Model (SRTM)

Several implementations of estimating SRTM parameters are available:

Requirements

Dynamic PET requires Python 3.11+ and the following modules: numpy and scipy for vector and matrix operations, nibabel for neuroimaging data I/O and simple manipulations, and click for the CLI.

Installation

You can install Dynamic PET via pip after cloning the repository:

$ git clone https://github.com/bilgelm/dynamicpet.git
$ pip install -e dynamicpet

Usage

Please see the Usage for details on the CLI.

Example

CLI usage is illustrated below on a dynamic PET dataset available on OpenNeuro.

First, download the NRM2018 PET Grand Challenge Dataset. You will then need to create a binary mask that is in the same space as the PET image that defines the reference region. The full path to this binary mask will be referred to as REFMASK. Generally, the reference region is defined on a structural MRI and then mapped onto the PET via image registration and transformation.

After installing Dynamic PET as described above, execute:

$ kineticmodel PET --model SRTMZhou2003 --refmask <REFMASK> --outputdir <OUTPUTDIR> --fwhm 5

where

$ PET=<OPENNEURODATA>/ds001705-download/sub-000101/ses-baseline/pet/sub-000101_ses-baseline_pet.nii

Before running these commands, replace <OPENNEURODATA> with the path to the directory where you downloaded the data from OpenNeuro and <OUTPUTDIR> with path to the directory where you'd like to save the parametric images.

Warning

Aside from SUVR and SRTMZhou2003, the remaining kinetic model implementations are very time consuming and are not recommended for imaging data.

Future

Future plans for expanding the scope of Dynamic PET include:

  • more kinetic models and implementations
  • support for surface (i.e., vertex-wise) analysis
  • parallel processing

Contributing

Contributions are very welcome. To learn more, see the Contributor Guide.

License

Distributed under the terms of the MIT license, Dynamic PET is free and open source software.

Issues

If you encounter any problems, please file an issue along with a detailed description.

Credits

This project was generated from @cjolowicz's Hypermodern Python Cookiecutter template.