/torchio

Medical imaging toolkit for deep learning

Primary LanguagePythonApache License 2.0Apache-2.0

TorchIO logo

Tools like TorchIO are a symptom of the maturation of medical AI research using deep learning techniques.

Jack Clark, Policy Director at OpenAI (link).


Package PyPI downloads PyPI version Conda version
CI Tests status Documentation status Coverage status
Code Code quality Code quality Code maintainability pre-commit
Tutorials Google Colab
Community Slack Twitter Twitter YouTube

Progressive artifacts

Augmentation


Original Random blur
Original Random blur
Random flip Random noise
Random flip Random noise
Random affine transformation Random elastic transformation
Random affine transformation Random elastic transformation
Random bias field artifact Random motion artifact
Random bias field artifact Random motion artifact
Random spike artifact Random ghosting artifact
Random spike artifact Random ghosting artifact

Queue

(Queue for patch-based training)


TorchIO is a Python package containing a set of tools to efficiently read, preprocess, sample, augment, and write 3D medical images in deep learning applications written in PyTorch, including intensity and spatial transforms for data augmentation and preprocessing. Transforms include typical computer vision operations such as random affine transformations and also domain-specific ones such as simulation of intensity artifacts due to MRI magnetic field inhomogeneity or k-space motion artifacts.

This package has been greatly inspired by NiftyNet, which is not actively maintained anymore.

Credits

If you like this repository, please click on Star!

If you use this package for your research, please cite our paper:

F. Pérez-García, R. Sparks, and S. Ourselin. TorchIO: a Python library for efficient loading, preprocessing, augmentation and patch-based sampling of medical images in deep learning. Computer Methods and Programs in Biomedicine (June 2021), p. 106236. ISSN: 0169-2607.doi:10.1016/j.cmpb.2021.106236.

BibTeX entry:

@article{perez-garcia_torchio_2021,
    title = {TorchIO: a Python library for efficient loading, preprocessing, augmentation and patch-based sampling of medical images in deep learning},
    journal = {Computer Methods and Programs in Biomedicine},
    pages = {106236},
    year = {2021},
    issn = {0169-2607},
    doi = {https://doi.org/10.1016/j.cmpb.2021.106236},
    url = {https://www.sciencedirect.com/science/article/pii/S0169260721003102},
    author = {P{\'e}rez-Garc{\'i}a, Fernando and Sparks, Rachel and Ourselin, S{\'e}bastien},
}

This project is supported by the following institutions:

Getting started

See Getting started for installation instructions and a Hello, World! example.

Longer usage examples can be found in the tutorials.

All the documentation is hosted on Read the Docs.

Please open a new issue if you think something is missing.

Contributors

Thanks goes to all these people (emoji key):

Fernando Pérez-García
Fernando Pérez-García

💻 📖
valabregue
valabregue

🤔 👀 💻 💬 🐛
GFabien
GFabien

💻 👀 🤔
G.Reguig
G.Reguig

💻
Niels Schurink
Niels Schurink

💻
Ibrahim Hadzic
Ibrahim Hadzic

🐛
ReubenDo
ReubenDo

🤔
Julian Klug
Julian Klug

🤔
David Völgyes
David Völgyes

🤔 💻
Jean-Christophe Fillion-Robin
Jean-Christophe Fillion-Robin

📖
Suraj Pai
Suraj Pai

🤔
Ben Darwin
Ben Darwin

🤔
Oeslle Lucena
Oeslle Lucena

🐛
Soumick Chatterjee
Soumick Chatterjee

💻
neuronflow
neuronflow

📖
Jan Witowski
Jan Witowski

📖
Derk Mus
Derk Mus

📖 💻 🐛
Christian Herz
Christian Herz

🐛
Cory Efird
Cory Efird

💻 🐛
Esteban Vaca C.
Esteban Vaca C.

🐛
Ray Phan
Ray Phan

🐛
Akis Linardos
Akis Linardos

🐛 💻
Nina Montana-Brown
Nina Montana-Brown

📖 🚇
fabien-brulport
fabien-brulport

🐛
malteekj
malteekj

🐛
Andres Diaz-Pinto
Andres Diaz-Pinto

🐛
Sarthak Pati
Sarthak Pati

📦 📖
GabriellaKamlish
GabriellaKamlish

🐛
Tyler Spears
Tyler Spears

🐛
DaGuT
DaGuT

📖
Xiangyu Zhao
Xiangyu Zhao

🐛
siahuat0727
siahuat0727

📖 🐛
Svdvoort
Svdvoort

💻
Albans98
Albans98

💻
Matthew T. Warkentin
Matthew T. Warkentin

💻
glupol
glupol

🐛
ramonemiliani93
ramonemiliani93

📖 🐛 💻
Justus Schock
Justus Schock

💻 🐛 🤔 👀
Stefan Milorad Radonjić
Stefan Milorad Radonjić

🐛
Sajan Gohil
Sajan Gohil

🐛
Ikko Ashimine
Ikko Ashimine

📖
laynr
laynr

📖
Omar U. Espejel
Omar U. Espejel

🔊
James Butler
James Butler

🐛
res191
res191

🔍
nengwp
nengwp

🐛 📖
susanveraclarke
susanveraclarke

🎨
nepersica
nepersica

🐛
Sebastian Penhouet
Sebastian Penhouet

🤔
Bigsealion
Bigsealion

🐛
Dženan Zukić
Dženan Zukić

👀
vasl12
vasl12

🐛
François Rousseau
François Rousseau

🐛
snavalm
snavalm

💻
Jacob Reinhold
Jacob Reinhold

💻
Hsu
Hsu

🐛
snipdome
snipdome

🐛
SmallY
SmallY

🐛
guigautier
guigautier

🤔
AyedSamy
AyedSamy

🐛
J. Miguel Valverde
J. Miguel Valverde

🤔 💻 🐛
José Guilherme Almeida
José Guilherme Almeida

🤔
Asim Usman
Asim Usman

🐛
cbri92
cbri92

🐛
Markus J. Ankenbrand
Markus J. Ankenbrand

🐛
Ziv Yaniv
Ziv Yaniv

📖
Luca Lumetti
Luca Lumetti

💻 📖
chagelo
chagelo

🐛
mueller-franzes
mueller-franzes

💻 🐛
Abdelwahab Kawafi
Abdelwahab Kawafi

🐛
Arthur Masson
Arthur Masson

🐛 📖
양현식
양현식

💻
nicoloesch
nicoloesch

💻 🐛
Amund Vedal
Amund Vedal

📖
Alabamagan
Alabamagan

🐛
sbdoherty
sbdoherty

📖
Zhack47
Zhack47

🐛
Blake Dewey
Blake Dewey

📖
Doyeon Kim
Doyeon Kim

🐛
KonoMaxi
KonoMaxi

🐛
Laurent Chauvin
Laurent Chauvin

🐛
Christian Hinge
Christian Hinge

🐛
zzz123xyz
zzz123xyz

🐛

This project follows the all-contributors specification. Contributions of any kind welcome!