{"id":26086738,"url":"https://github.com/insightsoftwareconsortium/itkelastix","last_synced_at":"2026-03-16T02:52:26.243Z","repository":{"id":37493485,"uuid":"207451937","full_name":"InsightSoftwareConsortium/ITKElastix","owner":"InsightSoftwareConsortium","description":"An ITK Python interface to elastix, a toolbox for rigid and nonrigid registration of images","archived":false,"fork":false,"pushed_at":"2025-04-17T10:32:17.000Z","size":132207,"stargazers_count":235,"open_issues_count":77,"forks_count":26,"subscribers_count":22,"default_branch":"main","last_synced_at":"2025-05-08T12:36:33.528Z","etag":null,"topics":["itk","itk-module"],"latest_commit_sha":null,"homepage":"","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/InsightSoftwareConsortium.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null}},"created_at":"2019-09-10T02:54:40.000Z","updated_at":"2025-05-05T11:48:28.000Z","dependencies_parsed_at":"2024-04-22T03:24:40.835Z","dependency_job_id":"37bc40b6-c654-4c18-a798-072328604d01","html_url":"https://github.com/InsightSoftwareConsortium/ITKElastix","commit_stats":{"total_commits":403,"total_committers":9,"mean_commits":44.77777777777778,"dds":0.3076923076923077,"last_synced_commit":"3af580bdb1a648e34078fecc4477723f1da76935"},"previous_names":[],"tags_count":37,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/InsightSoftwareConsortium%2FITKElastix","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/InsightSoftwareConsortium%2FITKElastix/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/InsightSoftwareConsortium%2FITKElastix/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/InsightSoftwareConsortium%2FITKElastix/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/InsightSoftwareConsortium","download_url":"https://codeload.github.com/InsightSoftwareConsortium/ITKElastix/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":254328384,"owners_count":22052632,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["itk","itk-module"],"created_at":"2025-03-09T07:18:12.342Z","updated_at":"2026-03-16T02:52:26.230Z","avatar_url":"https://github.com/InsightSoftwareConsortium.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"ITKElastix\n==========\n\n[![WebAssembly](https://github.com/InsightSoftwareConsortium/ITKElastix/actions/workflows/wasm.yml/badge.svg)](https://github.com/InsightSoftwareConsortium/ITKElastix/actions/workflows/wasm.yml)\n![image](https://github.com/InsightSoftwareConsortium/ITKElastix/workflows/Build/badge.svg)\n[![PyPI Version](https://img.shields.io/pypi/v/itk-elastix.svg)](https://pypi.python.org/pypi/itk-elastix)\n[![binder](https://mybinder.org/badge_logo.svg)](https://mybinder.org/v2/gh/InsightSoftwareConsortium/ITKElastix/main?urlpath=lab/tree/examples%2FITK_Example01_SimpleRegistration.ipynb)\n[![voila](https://img.shields.io/badge/launch-3d%20registration%20app-E66581.svg?logo=data:image/png;base64,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)](https://mybinder.org/v2/gh/InsightSoftwareConsortium/ITKElastix/main?urlpath=%2Fvoila%2Frender%2Fexamples%2FITK_Registration_App.ipynb)\n[![License](https://img.shields.io/badge/License-Apache%202.0-blue.svg)](https://github.com/InsightSoftwareConsortium/ITKElastix/blob/main/LICENSE)\n[![Versioned software citation](https://zenodo.org/badge/207451937.svg)](https://zenodo.org/badge/latestdoi/207451937)\n[![CZI's Essential Open Source Software for Science](https://img.shields.io/badge/funded%20by-EOSS-FF414B)](https://czi.co/EOSS)\n\nOverview\n--------\n\nProvides an [ITK](https://www.itk.org) Python, JavaScript, and WebAssembly interface to [elastix](https://elastix.dev/), a toolbox for rigid and nonrigid registration of images.\n\nelastix is open source software, based on the well-known [Insight Toolkit (ITK)](https://discourse.itk.org). 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.\n\n[👨‍💻 **Live JavaScript API Demo** ✨](https://itk-wasm-elastix-app-js.on.fleek.co/ ':include :type=iframe width=100% height=800px')\n\nInstallation\n------------\n\nInstall cross-platform native binary Python packages with [pip](https://pypi.org/project/pip/):\n\n```sh\npip install itk-elastix\n```\n\n*Experimental* WebAssembly Python packages can be installed across platforms with:\n\n```sh\npip install itkwasm-elastix\n```\n\n\u003e **Note**\nThe API for the WebAssembly and native binary packages are slightly different. For the WebAssembly interface, see [the package's Sphinx documentation](https://py.docs.elastix.wasm.itk.eth.limo/). For the interface to the native binaries, see the *examples/* directory in this repository.\n\nJavaScript / TypesScript packages cas be installed with\n\n```sh\nnpm install @itk-wasm/elastix\n```\n\n\nUsage\n-----\n\nTo register two images with the native Python binaries, traditionally called the fixed image and the moving image:\n\n    import itk\n\n    fixed_image = itk.imread('path/to/fixed_image.mha')\n    moving_image = itk.imread('path/to/moving_image.mha')\n\n    registered_image, params = itk.elastix_registration_method(fixed_image, moving_image)\n\nInteractive examples and tutorial material can be found in the [examples](https://github.com/InsightSoftwareConsortium/ITKElastix/tree/main/examples) directory. Run the examples in free cloud compute containers [on MyBinder](https://mybinder.org/v2/gh/InsightSoftwareConsortium/ITKElastix/main?urlpath=lab/tree/examples%2FITK_Example01_SimpleRegistration.ipynb) or clone the repository and run the notebooks locally in [Jupyter Notebook or Jupyter Lab](https://jupyter.org/). Try out the *experimental* GPU packages [on Paperspace Gradient](https://www.paperspace.com/temmx3m64/notebook/prdfn7bsz).\n\nITKElastix can be used with both the [procedural](https://docs.python.org/3/howto/functional.html) and the [object oriented method](https://docs.python.org/3/howto/functional.html), 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.\n\nTo find parameters that work well with specific datasets, see the [elastix Model Zoo](https://lkeb.ml/modelzoo/).\n\nFor a graphical user interface in a desktop application, see the [napari plugin](https://github.com/SuperElastix/elastix_napari).\n\nAdditional [documentation is available for the WebAssembly JavaScript bindings](https://js.docs.elastix.wasm.itk.eth.limo/) and [WebAssembly Python bindings](https://py.docs.elastix.wasm.itk.eth.limo/).\n\n\nAcknowledgements\n----------------\n\nITKElastix was developed in part with support from:\n\n- [NIH NIMH BRAIN Initiative](https://braininitiative.nih.gov/) under award 1RF1MH126732.\n- The [Essential Open Source Software for Science (EOSS)](https://czi.co/EOSS) program, Cycles 4 and 6, at [Chan Zuckerberg Initiative](https://chanzuckerberg.com/) under the awards [Open Source Image Registration: The elastix Toolbox](https://chanzuckerberg.com/eoss/proposals/open-source-image-registration-the-elastix-toolbox/).\n\nThe lead developers of elastix are [Stefan Klein](https://github.com/stefanklein) and [Marius Staring](https://github.com/mstaring).\n\nThis software was initially developed at the Image Sciences Institute, under supervision of Josien P.W. Pluim. Today, [many](https://github.com/SuperElastix/elastix/graphs/contributors) have\ncontributed to elastix.\n\nIf you use this software anywhere we would appreciate if you cite the following articles:\n\n-   K. Ntatsis, N. Dekker, V. Valk, T. Birdsong, D. Zukić, S. Klein, M Staring, M McCormick,\n    [\\\"itk-elastix: Medical image registration in Python\\\"](https://conference.scipy.org/proceedings/scipy2023/konstantinos_ntatsis.html),\n    Proceedings of the 22nd Python in Science Conference,\n    pp. 101 - 105, 2023, https://doi.org/10.25080/gerudo-f2bc6f59-00d.\n\n-   D.P. Shamonin, E.E. Bron, B.P.F. Lelieveldt, M. Smits, S. Klein\n    and M. Staring, \\\"Fast Parallel Image Registration on CPU and GPU\n    for Diagnostic Classification of Alzheimer's Disease\\\", Frontiers in\n    Neuroinformatics, vol. 7, no. 50, pp. 1-15, January 2014.\n\nThis ITK module is based on [SimpleElastix](https://simpleelastix.github.io/), created by [Kasper Marstal](https://github.com/kaspermarstal). For more information, see:\n\n-   Kasper Marstal, Floris Berendsen, Marius Staring and Stefan Klein,\n    \\\"SimpleElastix: A user-friendly, multi-lingual library for medical\n    image registration\\\", International Workshop on Biomedical Image\n    Registration (WBIR), Las Vegas, Nevada, USA, 2016\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Finsightsoftwareconsortium%2Fitkelastix","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Finsightsoftwareconsortium%2Fitkelastix","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Finsightsoftwareconsortium%2Fitkelastix/lists"}