pymia is an open-source Python (py) package for deep learning-based medical image analysis (mia). The package addresses two main parts of deep learning pipelines: data handling and evaluation. The package itself is independent of the deep learning framework used but can easily be integrated into TensorFlow and PyTorch pipelines. Therefore, pymia is highly flexible, allows for fast prototyping, and reduces the burden of implementing data handling and evaluation.
Main Features¶
The main features of pymia are data handling (pymia.data
package) and evaluation (pymia.evaluation
package).
The intended use of pymia in the deep learning environment is depicted in Fig. 1.
The data package is used to extract data (images, labels, demography, etc.) from a dataset in the desired format (2-D, 3-D; full- or patch-wise) for feeding to a neural network.
The output of the neural network is then assembled back to the original format before extraction, if necessary.
The evaluation package provides both evaluation routines as well as metrics to assess predictions against references.
Evaluation can be used both for stand-alone result calculation and reporting, and for monitoring of the training progress.
Further, pymia provides some basic image filtering and manipulation functionality (pymia.filtering
package).
We recommend following our examples.
Getting Started¶
If you are new to pymia, here are a few guides to get you up to speed right away.
Installation helps you installing pymia.
Examples give you an overview of pymia’s intended use. Jupyter notebooks and Python scripts are available at GitHub.
Do you want to contribute? See Contribution.
Citation¶
If you use pymia for your research, please acknowledge it accordingly by citing our paper:
BibTeX entry:
@article{Jungo2021a,
author = {Jungo, Alain and Scheidegger, Olivier and Reyes, Mauricio and Balsiger, Fabian},
doi = {10.1016/j.cmpb.2020.105796},
issn = {01692607},
journal = {Computer Methods and Programs in Biomedicine},
pages = {105796},
title = {{pymia: A Python package for data handling and evaluation in deep learning-based medical image analysis}},
volume = {198},
year = {2021},
}
- Data (
pymia.data
package)- Subpackages
- Assembler (
pymia.data.assembler
module) - Augmentation (
pymia.data.augmentation
module) - Conversion (
pymia.data.conversion
module) - Definition (
pymia.data.definition
module) - Index expression (
pymia.data.indexexpression
module) - Subject file (
pymia.data.subjectfile
module) - Transformation (
pymia.data.transformation
module)
- Evaluation (
pymia.evaluation
package) - Filtering (
pymia.filtering
package)