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 brings the misaligned image (called the moving image) into alignment with the reference image (called the fixed image).
The process begins with the transform 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 has reached a point of diminishing returns or it has reached the specified maximum number of iterations. If there is no stop condition, the optimizer adjusts the transformation matrix to begin the next iteration.
Perform intensity-based image registration with the following steps:
Read the images into the workspace with imread.
Create the optimizer and metric with imregconfig.
Register the images with imregister.
The example, Registering Multimodal MRI Images, demonstrates this workflow in detail.