PhantomKit

https://github.com/australian-imaging-service/phantomkit/actions/workflows/ci-cd.yml/badge.svg https://codecov.io/gh/australian-imaging-service/phantomkit/branch/main/graph/badge.svg?token=UIS0OGPST7 Supported Python versions Latest Version

PhantomKit is a Python toolkit for automated quality assurance (QA) of medical imaging scanners using physical phantoms. It provides pydra-based workflows that register phantom scans to a reference template, extract per-vial signal statistics across multiple contrast types, and generate publication-quality plots — supporting both MRI and PET phantom protocols.

Key features:

  • Template-based registration — iterative ANTs SyN registration with automatic orientation search across a rotation library

  • Vial metric extraction — per-vial mean, median, std, min and max across all contrast images, written to CSV

  • Plotting — scatter plots of vial intensity and parametric map plots (T1/IR, T2/TE) with mrview ROI overlays

  • Protocol support — extensible protocols sub-package for phantom- and project-specific workflow configurations

  • Parallel batch processing — pydra-native splitting and combining for multi-session datasets

Installation

PhantomKit can be installed for Python >=3.11 using pip:

$ python3 -m pip install phantomkit

License

PhantomKit is released under the Apache License 2.0.

Copyright 2026 Australian Imaging Service.