Image registration, also known as template matching, is the process of bringing into alignment pairs or groups of images. The basic form of image registration is rigid, or affine. It consists of rotating, translating, and scaling one of the images (i.e., applying transformations from the affine group) so that it looks like the other. We are interested in non-rigid registration, where the images can be deformed non-linearly. Non-rigid registration is most commonly used in medical imaging, where scans of different people (or the same person over time) can be analysed to identify or track disease.
While the results of image registration can look very impressive, the methods themselves are relatively simple. Given two images, all that is required to deform one into the other is:

- a pair or group of images
- a set of points that match on the two images. These can be picked by hand (landmarks) or automatically (control points)
- a way to deform the image and interpolate its appearance when the positions of these points are moved (often a spline of some kind)
- an objective function that tells you when the two images look more alike than they used to (often just sum-of-squares difference or mutual information)
- an optimiser that can move the position of the landmarks on one image in order to minimise the objective function

We are interested in diffeomorphic image deformations, so that the interpolation methods have to be smooth and invertible. We can do this by solving the Euler equations on the diffeomorphism group.
In fact, the idea of deforming images has been around for a long time. D'Arcy Wentworth Thompson showed examples of it in his book `On Growth and Form', and he credits Albrecht Durer.