Skip to content

Releases: InsightSoftwareConsortium/ITKElastix

ITKElastix 0.11.1

24 Feb 01:24
b540f5a
Compare
Choose a tag to compare
v0.11.1

Merge pull request #109 from InsightSoftwareConsortium/transformix-fu…

ITKElastix 0.11.0

23 Feb 03:57
69f3e09
Compare
Choose a tag to compare
Merge pull request #106 from InsightSoftwareConsortium/exampleNotebooks

DOC:Typo correction

ITKElastix 0.10.0

15 Jan 21:27
685f393
Compare
Choose a tag to compare
v0.10.0

ENH: Bump Python package version to 0.10.0

ITKElastix 0.9.0

22 Dec 01:40
a816d9a
Compare
Choose a tag to compare

ITKElastix

image
PyPI Version
binder
voila
License
Versioned software citation

Overview

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.

Installation

Install 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)

Documentation Updates

  • Add voila registration app badge (24069b1)
  • Fix Binder link -- "0" -> "01" (8ad7217)

Platform Fixes

  • Update CI for GitHub macOS runner 10.15 changes (98c54d4)

Bug Fixes

  • 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)

Acknowledgements

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

ITKElastix 0.8.0

18 Nov 21:01
v0.8.0
2f5987f
Compare
Choose a tag to compare

ITKElastix

image
PyPI Version
image
License
Versioned software citation

Overview

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.

Installation

Install 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.

Acknowledgements

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

ITKElastix 0.7.0

27 Oct 00:43
6a4dd1d
Compare
Choose a tag to compare

ITKElastix

image
PyPI Version
image
License
Versioned software citation

Overview

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.

Installation

Install 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.6.3 to v0.7.0

Enhancements

  • Bump Python package version to 0.7.0 (c731e04)
  • Build Python 3.9 packages (97d2729)
  • Support transformix_filter functional interface (34c9c28)
  • Switch to latest version of SuperElastix/elastix (using ITK 5.1.1) (2bdca95)
  • Add Treebeard example notebook CI test configuration (1e1d80c)
  • Update example notebooks for itk-elastix-0.6 (61718bd)
  • Update MyBinder requirements (7ba1dcc)

Documentation Updates

  • add a link to Kasper's GitHub profile (1784baf)

Platform Fixes

  • use ITK_ prefix in testing macros (aee748b)

Style Changes

  • Use ElastixRegistrationMethod+TransformixFilter from elastix repo (e241919)

Acknowledgements

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

ITKElastix 0.6.3

11 Aug 18:18
b51cda9
Compare
Choose a tag to compare
Merge pull request #53 from InsightSoftwareConsortium/itk-5.1.1

BUG: Build against itk-5.1.1

ITKElastix 0.6.2

17 Jun 02:06
bbaed2a
Compare
Choose a tag to compare
Merge pull request #47 from InsightSoftwareConsortium/post3

ENH: Bump Python builds for v5.1.0.post3

ITKElastix 0.6.0

15 May 22:05
v0.6.0
7c2bbf1
Compare
Choose a tag to compare

ITKElastix

image

PyPI Version

image

License

Versioned software citation

Overview

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.

Installation

Install cross-platform binary Python packages with:

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 = 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. Try out the experimental GPU packages on Paperspace Gradient.

Acknowledgements

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

Changes from v0.5.1 to v0.6.0

Enhancements

  • Add GitHub Actions configuration for OpenCL PyPI upload (ab995fe)
  • Add OpenCL wheel build support to GitHub Actions CI (72fe48b)
  • Add --output-on-failure flag to GitHub Actions ctest (81505f5)
  • Also build / run elastix tests (db8b576)
  • Add Build, test, package, GitHub Action (d4ff994)
  • Bump Python package version to 0.6.0 (95053e7)
  • Update OpenCL Linux Python package scripts for ITK 5.1.0 (43506ed)
  • CI builds against ITK 5.1.0 (61c83f4)
  • Update CI Virtual Machine images (46d0c3a)
  • CI builds against ITK 5.1 RC 3 (4bd5b2a)
  • CI builds against ITK 5.1 RC 2 (4b29f86)
  • Make TransformParameterObject an indexed output (fb42536)

Documentation Updates

  • Update Copyright assignment to NumFOCUS (e34ca88)
  • Add Masks notebook (043a7f0)
  • Add notebook links to the README (34616b2)
  • Link to elastix manual and elastix parameter file database (8987e97)
  • Use compare widget in notebooks (c3520b7)
  • Notebook content for serializing ParameterObject's (b44ffc0)
  • Require itkwidgets>=0.25.1 (af693a2)
  • Require itk-elastix>=0.5.1 on Binder (0e5a954)
  • Add registration parameters notebook (712b379)

Platform Fixes

  • Suppress itkHexahedronCell aggressive loop optimization warnings (2fd3533)
  • Do net run setup.py cleanup on Windows builds (92ae6f4)
  • GetOutput return type const-ness (b38d8db)
  • Address OpenCL TimeStampFormat ITK 5.1 typed enum compile error (facd9b5)
  • Elastix build error with GCC 4.8 (d0b6c25)
  • Update elastix commit for ITK 5.1.0 (c31d82d)
  • Update elastix commit for ITK 5.1 RC 3 (1e1daec)

Bug Fixes

  • Remove Azure Pipelines configuration (aafa365)
  • Only include module tests on Windows CI (420b67a)
  • Reduce Windows Python package build path (438bcd0)
  • Exclude elastix_run* tests from elastix in CI (51dedcc)
  • Reduce external project path for Windows Python builds (4df5028)
  • Set ELASTIX_BUILD_EXECUTABLE non-cache variable (88510af)
  • Set default parameter for FixedInternalImagePixelType (b2d6d8b)
  • Call elx (18d0680)
  • Define GetOutput() for Python wrapping (fd5530b)
  • Fix .GetClassName() for ParameterObject (56c65e7)
  • Update Python test for indexed transform output (4ecc909)
  • Require ipympl-0.4.1 in MyBinder build (944aa40)

ITKElastix 0.5.1

19 Jan 05:13
39e9fe3
Compare
Choose a tag to compare

Changes:

  • 39e9fe3 Merge pull request #28 from InsightSoftwareConsortium/wrap-parameter-map-file-name-vector
  • df4e240 BUG: Add wrapping for the parameter map filename vector type
  • 2b103fa Merge pull request #26 from InsightSoftwareConsortium/rm-jupyter-matplotlib
  • 8931df6 BUG: Workaround jupyter-matplotlib MyBinder versioning
  • f9c4548 Merge pull request #25 from InsightSoftwareConsortium/binder-versions
  • f26e70c DOC: Use specific matplotlib versions on Binder
  • 8c6ae2c Merge pull request #24 from InsightSoftwareConsortium/numpy-array-example
  • 41b025d DOC: Add NumPy array example
  • d32f96f Merge pull request #23 from InsightSoftwareConsortium/binder-badge
  • e52de25 DOC: Set expectation for Binder 3D registration time
See More
  • 0a7b109 DOC: Add MyBinder badge
  • f90d408 BUG: Specify Binder itk version
  • e329321 BUG: Update jupyterlab version in Binder
  • c987067 Merge pull request #22 from InsightSoftwareConsortium/zenodo-badge
  • 1ed202c DOC: Add Zenodo badge to the README
  • eb691d2 Merge pull request #21 from InsightSoftwareConsortium/hello-notebook
  • 56caa00 DOC: Add 0_HelloRegistrationWorld notebook
  • a62e406 ENH: Add configuration for MyBinder

This list of changes was auto generated.