InsightSoftwareConsortium/ITKElastix: ITKElastix 0.9.0
Authors/Creators
- 1. @Kitware
- 2. @KitwareMedical
- 3. LKEB, Leiden University Medical Center
Description
Provides an ITK Python 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.
InstallationInstall cross-platform binary Python packages with pip:
pip install itk-elastix
Experimental GPU-accelerated packages can be installed on Linux with:
pip install itk-elastix-opencl
Usage
To register two images, 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.
Changes from v0.8.0 to v0.9.0 Enhancements- Set package version for 0.9.0 release (1892330)
- Add two rows to app (54bde04)
- Add voila to Binder requirements (d739b29)
- Add jupyter_config.json for Voila (dd26498)
- Use view instead of Viewer for viewer initialized in registration app (0eecfbc)
- Registration application file naming for consistency (6368120)
- adding a general web-registration example (22bd436)
- Update CI for GitHub macOS runner 10.15 changes (98c54d4)
- Move tornado_settings to .jupyter/jupyter_notebook_config.py (6585cf3)
- Change voila tornado settings specification (3d199ef)
- update path to config file in comment (70aebf2)
- Move tornado_settings to .jupyter/jupyter_notebook_config.py (b5617d0)
- Change voila tornado settings specification (ee34f9d)
- Reduce Binder JupyterLab build memory requirements (8229483)
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:
S. Klein, M. Staring, K. Murphy, M.A. Viergever, J.P.W. Pluim,
\"elastix: a toolbox for intensity based medical image registration,\" IEEE Transactions on Medical Imaging, vol. 29, no. 1, pp. 196 - 205, January 2010.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 Stefan Klein, \"SimpleElastix: A user-friendly, multi-lingual library for medical image registration\", International Workshop on Biomedical Image Registration (WBIR), Las Vegas, Nevada, USA, 2016
Files
InsightSoftwareConsortium/ITKElastix-v0.9.0.zip
Files
(14.7 MB)
| Name | Size | Download all |
|---|---|---|
|
md5:59b6d8357580bec147846c64b2f26775
|
14.7 MB | Preview Download |
Additional details
Related works
- Is supplement to
- https://github.com/InsightSoftwareConsortium/ITKElastix/tree/v0.9.0 (URL)