Provides an ITK Python interface to elastix, a toolbox for rigid and nonrigid registration of images
Project description
ITKElastix
Overview
Provides an ITK Python, JavaScript, and WebAssembly interface to elastix, a toolbox for rigid and nonrigid registration of images.
elastix is open source software, based on the well-known Insight Toolkit (ITK). The software consists of a collection of algorithms that are commonly used to solve (medical) image registration problems. The modular design of elastix allows the user to quickly configure, test, and compare different registration methods for a specific application.
👨💻 Live JavaScript API Demo ✨
Installation
Install cross-platform native binary Python packages with pip:
pip install itk-elastix
Experimental WebAssembly Python packages can be installed across platforms with:
pip install itkwasm-elastix
Note The API for the WebAssembly and native binary packages are slightly different. For the WebAssembly interface, see the package's Sphinx documentation. For the interface to the native binaries, see the examples/ directory in this repository.
JavaScript / TypesScript packages cas be installed with
npm install @itk-wasm/elastix
Usage
To register two images with the native Python binaries, traditionally called the fixed image and the moving image:
import itk
fixed_image = itk.imread('path/to/fixed_image.mha')
moving_image = itk.imread('path/to/moving_image.mha')
registered_image, params = itk.elastix_registration_method(fixed_image, moving_image)
Interactive examples and tutorial material can be found in the examples directory. Run the examples in free cloud compute containers on MyBinder or clone the repository and run the notebooks locally in Jupyter Notebook or Jupyter Lab. Try out the experimental GPU packages on Paperspace Gradient.
ITKElastix can be used with both the procedural and the object oriented method, as shown in the example notebooks. The procedural method is shorter, less explicit and currently slightly less functional than the object oriented method, however the execution time and output do not differ apart from possible differences due to the stochastic nature of the Elastix algorithm.
To find parameters that work well with specific datasets, see the elastix Model Zoo.
For a graphical user interface in a desktop application, see the napari plugin.
Additional documentation is available for the WebAssembly JavaScript bindings and WebAssembly Python bindings.
Acknowledgements
ITKElastix was developed in part with support from:
- NIH NIMH BRAIN Initiative under award 1RF1MH126732.
- Chan Zuckerberg Initiative (CZI) Essential Open Source Software for Science award for Open Source Image Registration: The elastix Toolbox.
The lead developers of elastix are Stefan Klein and Marius Staring.
This software was initially developed at the Image Sciences Institute, under supervision of Josien P.W. Pluim. Today, many have contributed to elastix.
If you use this software anywhere we would appreciate if you cite the following articles:
-
K. Ntatsis, N. Dekker, V. Valk, T. Birdsong, D. Zukić, S. Klein, M Staring, M McCormick, "itk-elastix: Medical image registration in Python", Proceedings of the 22nd Python in Science Conference, pp. 101 - 105, 2023, https://doi.org/10.25080/gerudo-f2bc6f59-00d.
-
D.P. Shamonin, E.E. Bron, B.P.F. Lelieveldt, M. Smits, S. Klein and M. Staring, "Fast Parallel Image Registration on CPU and GPU for Diagnostic Classification of Alzheimer's Disease", Frontiers in Neuroinformatics, vol. 7, no. 50, pp. 1-15, January 2014.
This ITK module is based on SimpleElastix, created by Kasper Marstal. For more information, see:
- Kasper Marstal, Floris Berendsen, Marius Staring and Stefajkn Klein, "SimpleElastix: A user-friendly, multi-lingual library for medical image registration", International Workshop on Biomedical Image Registration (WBIR), Las Vegas, Nevada, USA, 2016
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distributions
Built Distributions
File details
Details for the file itk_elastix-0.21.0-cp311-abi3-win_amd64.whl
.
File metadata
- Download URL: itk_elastix-0.21.0-cp311-abi3-win_amd64.whl
- Upload date:
- Size: 7.9 MB
- Tags: CPython 3.11+, Windows x86-64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/5.1.1 CPython/3.9.19
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | de902ce386c0e18bfba318b328bd3d3ff7ad1bdbbb643d3edf51930b65b89df0 |
|
MD5 | 497ef99e14c8b611155e03915c44a134 |
|
BLAKE2b-256 | ec9a7685b01712e1dcc2a383db9f371423309fb85afc20e8b859b84843f9fb72 |
File details
Details for the file itk_elastix-0.21.0-cp311-abi3-manylinux_2_28_x86_64.whl
.
File metadata
- Download URL: itk_elastix-0.21.0-cp311-abi3-manylinux_2_28_x86_64.whl
- Upload date:
- Size: 21.4 MB
- Tags: CPython 3.11+, manylinux: glibc 2.28+ x86-64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/5.1.1 CPython/3.9.19
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 5a7c0b4a0028dbd3a4e6b9dd0e3341e74a311323b1de3e8132293f7883fc6161 |
|
MD5 | 10c850bd93fe8ab4336e13a1fa6a4739 |
|
BLAKE2b-256 | aed31fe0bf2c960e0d1c482fe4145976f345d4c5f25cd24cab5d6bde6103fbdb |
File details
Details for the file itk_elastix-0.21.0-cp311-abi3-manylinux_2_17_x86_64.whl
.
File metadata
- Download URL: itk_elastix-0.21.0-cp311-abi3-manylinux_2_17_x86_64.whl
- Upload date:
- Size: 19.6 MB
- Tags: CPython 3.11+, manylinux: glibc 2.17+ x86-64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/5.1.1 CPython/3.9.19
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 29cb2a5d2fb7481156eca24408f5be95c939123a184c620f4d0eecfa67ac5aa9 |
|
MD5 | df7f11649c85ab79c1bce86de85c9821 |
|
BLAKE2b-256 | 628dce12d994e6dd7a70c70141ac82d8563ef669d241f737e37c54d9a7daff78 |
File details
Details for the file itk_elastix-0.21.0-cp311-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
.
File metadata
- Download URL: itk_elastix-0.21.0-cp311-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
- Upload date:
- Size: 21.2 MB
- Tags: CPython 3.11+, manylinux: glibc 2.17+ x86-64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/5.1.1 CPython/3.9.19
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 24ffbb1696dc0b63212006baa0f3ad2d15498335b5fa66feac1ea34fa081e017 |
|
MD5 | 283b2b8f539cb63b47c8c4c671aa139d |
|
BLAKE2b-256 | 356a09a262306f438788fce8d3206e55b2ca93cf77ee7761ce17fa6434533882 |
File details
Details for the file itk_elastix-0.21.0-cp311-abi3-macosx_11_0_arm64.whl
.
File metadata
- Download URL: itk_elastix-0.21.0-cp311-abi3-macosx_11_0_arm64.whl
- Upload date:
- Size: 13.2 MB
- Tags: CPython 3.11+, macOS 11.0+ ARM64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/5.1.1 CPython/3.9.19
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 17ba6869a11c0bcdb28b80075a09ec1c4221ec57a5672d541af720571c967e27 |
|
MD5 | 58bff2231bd4630fa3905fe20ec88dd6 |
|
BLAKE2b-256 | 7f5870a9db63ea8e0270c429fd4263330f2c087d2ad90f7ad1be7a58b131042d |
File details
Details for the file itk_elastix-0.21.0-cp311-abi3-macosx_10_9_x86_64.whl
.
File metadata
- Download URL: itk_elastix-0.21.0-cp311-abi3-macosx_10_9_x86_64.whl
- Upload date:
- Size: 15.7 MB
- Tags: CPython 3.11+, macOS 10.9+ x86-64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/5.1.1 CPython/3.9.19
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 4d49df502af3f2234ca4ee2fa449f1b45ae8c15bfd34318ca956f9e612037163 |
|
MD5 | b0b6eb8a75aabc97b4329063a050b772 |
|
BLAKE2b-256 | e5f7dc3420e4402d60e0e63790a2bbd74a660a56677bff3854bbba2640d3fb97 |
File details
Details for the file itk_elastix-0.21.0-cp310-cp310-win_amd64.whl
.
File metadata
- Download URL: itk_elastix-0.21.0-cp310-cp310-win_amd64.whl
- Upload date:
- Size: 7.9 MB
- Tags: CPython 3.10, Windows x86-64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/5.1.1 CPython/3.9.19
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | f47574656196b02f9760cd183f0dcf4686b5afb33782a03212b0e7efa5921e27 |
|
MD5 | 69baed11b49d328644972392dcdd4f7a |
|
BLAKE2b-256 | 82f35cac76ff3c876ba837311fd1502bb0b702ccdf1de00661c9cb57c525c075 |
File details
Details for the file itk_elastix-0.21.0-cp310-cp310-manylinux_2_28_x86_64.whl
.
File metadata
- Download URL: itk_elastix-0.21.0-cp310-cp310-manylinux_2_28_x86_64.whl
- Upload date:
- Size: 21.4 MB
- Tags: CPython 3.10, manylinux: glibc 2.28+ x86-64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/5.1.1 CPython/3.9.19
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | e441268525162766a7caf6f7a0364fc966eff26ca3ed7fcb91d074f727ab58b1 |
|
MD5 | a875dcf543e9fd4bd27ab37fb4af3a40 |
|
BLAKE2b-256 | 8d09e8f6e46f3957d4b6db2befad30f4cf6ca2e21c652681a19de123d3466238 |
File details
Details for the file itk_elastix-0.21.0-cp310-cp310-manylinux_2_17_x86_64.whl
.
File metadata
- Download URL: itk_elastix-0.21.0-cp310-cp310-manylinux_2_17_x86_64.whl
- Upload date:
- Size: 19.6 MB
- Tags: CPython 3.10, manylinux: glibc 2.17+ x86-64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/5.1.1 CPython/3.9.19
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 8fec2862da4a4db8e0107fcb47c8b7d42469000ff3fec13b1cd7397f4e8ded0d |
|
MD5 | 71e5a81e75b278e90d3aaf88204fbff5 |
|
BLAKE2b-256 | 2a98c628db2bc1d25c6f00c059233dc538892ba81f22462cd363fd1f32b4da89 |
File details
Details for the file itk_elastix-0.21.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
.
File metadata
- Download URL: itk_elastix-0.21.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
- Upload date:
- Size: 21.2 MB
- Tags: CPython 3.10, manylinux: glibc 2.17+ x86-64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/5.1.1 CPython/3.9.19
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | e26e2aac81252c8ec921479fc9ca100cc84839c5f08f5fbdaba5b89b96f36b67 |
|
MD5 | 81f66e1d88457b7d21fb3ea70fd94dff |
|
BLAKE2b-256 | 7432a964894e45e8e6ebc697a461ec9fc08e36db52ee182f54656a5c56ab67e0 |
File details
Details for the file itk_elastix-0.21.0-cp310-cp310-macosx_11_0_arm64.whl
.
File metadata
- Download URL: itk_elastix-0.21.0-cp310-cp310-macosx_11_0_arm64.whl
- Upload date:
- Size: 13.2 MB
- Tags: CPython 3.10, macOS 11.0+ ARM64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/5.1.1 CPython/3.9.19
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 71b8eae46a052bd71695106ade182849ed8a4d849fa20481719f77db1f00923a |
|
MD5 | 70192e529a17a709ad22e2f416a1e152 |
|
BLAKE2b-256 | 7f690011346557e0594329c59f5dc549caff45803d890b22bb7f05b7815b407c |
File details
Details for the file itk_elastix-0.21.0-cp310-cp310-macosx_10_9_x86_64.whl
.
File metadata
- Download URL: itk_elastix-0.21.0-cp310-cp310-macosx_10_9_x86_64.whl
- Upload date:
- Size: 15.7 MB
- Tags: CPython 3.10, macOS 10.9+ x86-64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/5.1.1 CPython/3.9.19
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 4666850b80cf8741e1d7228f96c3a8ad7cb84779c0563e8b585ce0cec2e954b3 |
|
MD5 | 579f597fb2734b1c6e488a583770ebcc |
|
BLAKE2b-256 | b1e56acab29aa79e3b146e5de560901a08c748f61bb6c36ab896cff4923bc220 |
File details
Details for the file itk_elastix-0.21.0-cp39-cp39-win_amd64.whl
.
File metadata
- Download URL: itk_elastix-0.21.0-cp39-cp39-win_amd64.whl
- Upload date:
- Size: 7.9 MB
- Tags: CPython 3.9, Windows x86-64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/5.1.1 CPython/3.9.19
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | c15f5317a42e4c9c8854b8551096bc70a63a971fab30ac3cad9ce219fdb1c87a |
|
MD5 | 3fe3f2be1b416721aaca33f4bcb4618a |
|
BLAKE2b-256 | e830d725f908e164272583287ab2345e854786832923f01fec4817200b78b8ed |
File details
Details for the file itk_elastix-0.21.0-cp39-cp39-manylinux_2_28_x86_64.whl
.
File metadata
- Download URL: itk_elastix-0.21.0-cp39-cp39-manylinux_2_28_x86_64.whl
- Upload date:
- Size: 21.3 MB
- Tags: CPython 3.9, manylinux: glibc 2.28+ x86-64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/5.1.1 CPython/3.9.19
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 2f9b3417147bb78303e3d1eefccdde7fa553e90f75b3ef1b56e8df103d491e30 |
|
MD5 | f4e2c2e12fb844cb524fd1f65efdd161 |
|
BLAKE2b-256 | 48590a1e6d9c46c3f1b464ed9c7c79c9c9e97c8285f2b1ef2885d9d26f0653f0 |
File details
Details for the file itk_elastix-0.21.0-cp39-cp39-manylinux_2_17_x86_64.whl
.
File metadata
- Download URL: itk_elastix-0.21.0-cp39-cp39-manylinux_2_17_x86_64.whl
- Upload date:
- Size: 19.6 MB
- Tags: CPython 3.9, manylinux: glibc 2.17+ x86-64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/5.1.1 CPython/3.9.19
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | ff5446c6c803f7173d5eb22b2dea5f66025197898ea494b5b116a23e47f36de3 |
|
MD5 | 80fd9329b5a0a285087a9e6147dd01ca |
|
BLAKE2b-256 | bdb82f733d98346398bf419108d3d3a240aad2fa91544d48f17fda833fd66cc9 |
File details
Details for the file itk_elastix-0.21.0-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
.
File metadata
- Download URL: itk_elastix-0.21.0-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
- Upload date:
- Size: 21.2 MB
- Tags: CPython 3.9, manylinux: glibc 2.17+ x86-64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/5.1.1 CPython/3.9.19
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | b8dc46b7b285003bc6c0b3eff0799c2e8ee751affef583fa0a6b06e8330a6d9e |
|
MD5 | acf21017937f804fe85d34495808f162 |
|
BLAKE2b-256 | 24c900dd9fe6ee0772dfb2663770e9e937d8473fe53abd694883973e75a7b802 |
File details
Details for the file itk_elastix-0.21.0-cp39-cp39-macosx_11_0_arm64.whl
.
File metadata
- Download URL: itk_elastix-0.21.0-cp39-cp39-macosx_11_0_arm64.whl
- Upload date:
- Size: 13.2 MB
- Tags: CPython 3.9, macOS 11.0+ ARM64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/5.1.1 CPython/3.9.19
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 716fc97f9002d97059425f422ebc82a15116385d899d8f961858f9125153c1a9 |
|
MD5 | e6a8329b9d30bdc87d9858ddb935fcb2 |
|
BLAKE2b-256 | 593e02a7277422e9aab449a8525ff09f63de763db52b5d2da9df5f91117e2ac2 |
File details
Details for the file itk_elastix-0.21.0-cp39-cp39-macosx_10_9_x86_64.whl
.
File metadata
- Download URL: itk_elastix-0.21.0-cp39-cp39-macosx_10_9_x86_64.whl
- Upload date:
- Size: 15.7 MB
- Tags: CPython 3.9, macOS 10.9+ x86-64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/5.1.1 CPython/3.9.19
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | fb51eb4d3ee49388ddfcda5ca03bd6b88f76cd4d0213df0ae8d1e8b643719af6 |
|
MD5 | 0df2888ba40f81cbfe63339011d13cb9 |
|
BLAKE2b-256 | 1c4153708438c71da0d216a9147e48643e89f57465855e08d2aacc96b0891ee9 |
File details
Details for the file itk_elastix-0.21.0-cp38-cp38-win_amd64.whl
.
File metadata
- Download URL: itk_elastix-0.21.0-cp38-cp38-win_amd64.whl
- Upload date:
- Size: 7.9 MB
- Tags: CPython 3.8, Windows x86-64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/5.1.1 CPython/3.9.19
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 13c18fe25a4404da8e59c9890a2223032c0c96f5aa494ea7219da0dfd9e1b95e |
|
MD5 | d6e2d355414a384ff69cba2d28a62ec5 |
|
BLAKE2b-256 | 2525b384a132ef73fb5ed08bc959d46b04f7e64fe1d82c3a547319d8a60b706b |
File details
Details for the file itk_elastix-0.21.0-cp38-cp38-manylinux_2_28_x86_64.whl
.
File metadata
- Download URL: itk_elastix-0.21.0-cp38-cp38-manylinux_2_28_x86_64.whl
- Upload date:
- Size: 21.3 MB
- Tags: CPython 3.8, manylinux: glibc 2.28+ x86-64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/5.1.1 CPython/3.9.19
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | af8e47aa9a09d3a99d9e6ca0b9ac95f695e5d2829dc2e271114f6758e1d3b62d |
|
MD5 | 9ef64b7e5ccb065a17dd8469511bbf48 |
|
BLAKE2b-256 | 63eb63c05e15c548937726250975fdc7e280e176f0e109059c740cf838cabfc7 |
File details
Details for the file itk_elastix-0.21.0-cp38-cp38-manylinux_2_17_x86_64.whl
.
File metadata
- Download URL: itk_elastix-0.21.0-cp38-cp38-manylinux_2_17_x86_64.whl
- Upload date:
- Size: 19.6 MB
- Tags: CPython 3.8, manylinux: glibc 2.17+ x86-64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/5.1.1 CPython/3.9.19
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | efd6e78a6a365aad6cb756c63b62519bd37b62668250fc6445ba0bdd5f7a644a |
|
MD5 | bbdd406689159de3f6f8fd05a721e0d0 |
|
BLAKE2b-256 | fc4a258a242ef4866c5c11947eecb78c93bf3a581716c697ef066f0090e1c3e5 |
File details
Details for the file itk_elastix-0.21.0-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
.
File metadata
- Download URL: itk_elastix-0.21.0-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
- Upload date:
- Size: 21.2 MB
- Tags: CPython 3.8, manylinux: glibc 2.17+ x86-64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/5.1.1 CPython/3.9.19
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 6f2efe8313ef44ec4ccb6bf6b51088eadd10ea3d7a4db78cc4d1fea5bc88e875 |
|
MD5 | efb4e5e43db5db96aceaca32c6766ff6 |
|
BLAKE2b-256 | 9ab41a097424de71aeedf815a364ec967a7978d58a24a6f75dbd9816999836f6 |
File details
Details for the file itk_elastix-0.21.0-cp38-cp38-macosx_10_9_x86_64.whl
.
File metadata
- Download URL: itk_elastix-0.21.0-cp38-cp38-macosx_10_9_x86_64.whl
- Upload date:
- Size: 15.7 MB
- Tags: CPython 3.8, macOS 10.9+ x86-64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/5.1.1 CPython/3.9.19
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 12dbcc237ae67f9af0b0552b5b499ccbc320d5523448aa35af6790533611aeb4 |
|
MD5 | 7e221d56edc71a0f883fb23aedb7971b |
|
BLAKE2b-256 | 44ec02d1ec9ff4145af8e72a21872d93dec43fed3759c3b9356949780ccb1db9 |