Collection of tools to derive metrics from physical phantoms used in QA of medical imaging instruments.
Project description
PhantomKit
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.
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
protocolssub-package for phantom- and project-specific workflow configurations - Parallel batch processing — pydra-native splitting and combining for multi-session datasets
Installation
python -m pip install phantomkit
Basic usage
from phantomkit.protocols.gsp_spirit import GspSpiritAnalysis
wf = GspSpiritAnalysis(
input_image="/data/session01/t1_mprage.nii.gz",
template_dir="/templates/gsp_spirit",
output_base_dir="/results",
rotation_library_file="/templates/gsp_spirit/rotations.txt",
)
outputs = wf(cache_root="/data/cache-root")
Or via the command line:
phantomkit run gsp-spirit /data/session01/t1_mprage.nii.gz \
--template-dir /templates/gsp_spirit \
--output-dir /results \
--rotation-lib /templates/gsp_spirit/rotations.txt
License
Copyright 2026 Australian Imaging Service. Released under the Apache License 2.0.
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file phantomkit-0.1.2.tar.gz.
File metadata
- Download URL: phantomkit-0.1.2.tar.gz
- Upload date:
- Size: 29.6 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
3a6b72eaf0a9214b45658f8f7feed4ad387cc18694472b4ff996cee3d0c4b3d4
|
|
| MD5 |
341f0716c751c5ff0c7f16af1f5ca9cf
|
|
| BLAKE2b-256 |
1e4bc21518a8cee4187062c938b382d9d45e9bf2061744b81f53006ffa95b4a2
|
File details
Details for the file phantomkit-0.1.2-py3-none-any.whl.
File metadata
- Download URL: phantomkit-0.1.2-py3-none-any.whl
- Upload date:
- Size: 43.0 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
42bb919b48d4f2bdd1768cc38f1fecf9832ac4c35321d9cee2fb366d50a3d0dc
|
|
| MD5 |
4f1828bf998857cb62f74175f6d9423e
|
|
| BLAKE2b-256 |
8f9ef3b3a81238999f6504991c11905cafb0cd126b09998d1920b006ab70a995
|