Main Content

Intensity-Based Automatic Image Registration

Intensity-based automatic image registration is an iterative process. It requires that you specify a pair of images, a metric, an optimizer, and a transformation type. The metric defines the image similarity metric for evaluating the accuracy of the registration. This image similarity metric takes two images and returns a scalar value that describes how similar the images are. The optimizer defines the methodology for minimizing or maximizing the similarity metric. The transformation type defines the type of 2-D transformation that aligns the misaligned image (called the moving image) with the reference image (called the fixed image).

The process begins with the transformation type you specify and an internally determined transformation matrix. Together, they determine the specific image transformation that is applied to the moving image with bilinear interpolation.

Next, the metric compares the transformed moving image to the fixed image and a metric value is computed.

Finally, the optimizer checks for a stop condition. A stop condition is anything that warrants the termination of the process. In most cases, the process stops when it reaches a point of diminishing returns or when it reaches the specified maximum number of iterations. If there is no stop condition, the optimizer adjusts the transformation matrix to begin the next iteration.

A flowchart for an optimizer to decide whether to return a registered image or repeat the transformation using an updated transformation matrix, based on a metric value.

Perform intensity-based image registration with the following steps:

  1. Read the images into the workspace with imread or dicomread.

  2. Create the optimizer and metric. See Create an Optimizer and Metric for Intensity-Based Image Registration.

  3. Register the images with imregister.

  4. View the results with imshowpair or save a copy of an image showing the results with imfuse.

Related Examples

More About