Medical Imaging Interaction Toolkit  2023.04.00
Medical Imaging Interaction Toolkit
The Anisotropic Iterative Closest Point Registration Plugin
Icon of the A-ICP Registration Plugin


The Surfaceregistration plugin allows the user to compute a transformation between two surfaces and align them in 3D space. It performs the registration with the anisotropic iterative closest point algorithm (A-ICP) presented in L. Maier-Hein et al. "Convergent Iterative Closest-Point Algorithm to Accomodate Anisotropic and Inhomogenous Localization Error.", IEEE T Pattern Anal 34 (8), 1520-1532, 2012. With the plugin it's also possible to compute the target registration error (TRE) between the two aligned surfaces with a given set of target points. In order to register the surfaces they need to be initially aligned to be able to run the fine registration with the A-ICP algorithm.

Overview of the A-ICP Registration Plugin.


In order to run a registration at least two surfaces need to be loaded into the data manager. Once the surfaces are loaded, a moving and a fixed surface can be selected in the associated combo boxes of the plugin. When the Register Surfaces button is pressed the registration is started and the moving surface is transformed onto the fixed surface.

Select the surfaces to register.

Target Registration Error Calculation

To compute the target registration error, enable the calculation via the checkbox in the target registration view. Once the TRE computation is enabled the combo boxes are activated to select the according target point sets.

Usage of the TRE calculation view.

Registration Settings

The following additional settings are available in the plugin to configure the algorithm:

  • A trimmed version of the algorithm.
  • Set the threshold for the algorithm to converge.
  • Limit the iterations.
  • Set the search radius.
Additional registration settings.

Trimmed Registration

This option enables a trimmed version of the algorithm to register partial overlapping surfaces. Once the option is enabled the user can specify the overlapping part of the surface. Valid values for the overlapping part lie between 0 an 1. The trimmed version of the algorithm uses only a fixed percentage of all correspondences found during one iteration. Only the best correspondences will be used during the registration process.


The user can specify the threshold which is used as a termination constraint for the algorithm. When the the change of the fiducial registration error (FRE) between to registrations falls under the specified threshold the algorithm terminates. Larger values can speedup the registration process at the cost of a more accurate result.

Maximum Iterations

The maximum amount of iterations used by the algorithm can be specified by the user. Once the algorithm reaches the maximum amount of iterations it will stop the registration process.

Search Radius

The user can specify the search radius in mm used during the correspondence search in a kd tree. The default value is 30 mm. A small radius can speedup the algorithm but can in addition also lead in bad correspondences and therefore in an incorrect alignment of the surfaces.