I’m very pleased to announce that we have just released version 5.3.0 of our image registration toolbox elastix, at https://github.com/SuperElastix/elastix/releases
Binaries of elastix executables are provided for Windows, MacOS (ARM) and Ubuntu. But of course, you can also build them yourself, using ITK >= 5.4.1.
A new ITKElastix Python package based on elastix 5.3.0 is intended to be released next week, hopefully.
elastix 5.3.0 includes the following improvements:
- Added a new metric component: IMPACT (Image Metric with Pretrained model-Agnostic Comparison for Transmodality registration), by Valentin Boussot et al.
- Reference: “IMPACT : A Generic Semantic Loss for Multimodal Image Registration”, Valentin Boussot et al, arXiv:2503.24121
- In order to use this metric, download LibTorch and enable CMake option
USE_ImpactMetric. More information: GitHub - vboussot/ImpactLoss: IMPACT Reg: A Generic Semantic Loss for Multimodal Image Registration
- Supported the TOML format for registration parameter files and transform parameter files
- As alternative to the “legacy” elastix specific text file format
- Supported fixed width notation for the elastix parameter
ResultImagePixelType- Supported parameter values: “int8”, “int16”, “int32”, “int64”, “uint8”, “uint16”, “uint32”, “uint64”, “float32”, “float64”
- Supported registering a 3D slice on a 3D volume
- The default pyramid (“FixedSmoothingImagePyramid”, “MovingSmoothingImagePyramid”) now accepts 3D images that have a thickness of 1 pixel
- Inspired by forum.image.sc topic Elastix questions related to 2D => 3D registration, started by Christian Tischer
- Improved transformix command-line option “-def” for VTK files
- When the input file is a binary VTK file, the output file is now also a binary VTK file (rather than an ASCII file)
- When the input file is a VTK file of 32-bit floating points, the output file is now also a VTK file of 32-bit floating points (rather than 64-bit floating points)
- Inspired by pull request ENH: Support for binary point file (.bin) reading and writing by ChristophKirst · Pull Request #943 · SuperElastix/elastix · GitHub
- Library enhancements:
- Added
SetFixedPointsandSetMovingPointsmember functions toElastixRegistrationMethod- Supported specifying the input points for “CorrespondingPointsEuclideanDistanceMetric”
- Made random number generation used by samplers deterministic, even when running registrations multithreaded
- Added
For all the details, please check https://github.com/SuperElastix/elastix/releases