Image Registration for Digital Subtraction Angiography
Erik Meijering, Karel Zuiderveld, Max Viergever
Introduction
In clinical practice, digital subtraction angiography (DSA) is a powerful technique for the visualization of blood vessels in the human body. With this technique, a sequence of X-ray projection images is taken to show the passage of a bolus of injected contrast material through one or more vessels of interest. The following images show, respectively, an image taken prior to injection (the mask image), and an image containing contrasted vessels (the live or contrast image):
![]() |
![]() |
| Mask image | Live image |
The background structures are largely removed by means of subtraction:
![]() |
| Original DSA image |
The resulting image is usually displayed using contrast enhancement:
![]() |
| Contrast-enhanced DSA image |
The subtraction technique is based on the assumption that during exposure, tissues do not change in position or density. As can be observed from the latter images, this is not always the case. In practice, patient motion frequently occurs, which causes the subtraction images to show artifacts that may hamper proper diagnosis.
In order to reduce these so called motion artifacts, the misalignment of the successive images in the sequence needs to be determined and corrected for; operations often referred to as registration and motion correction. In clinical practice, this is partially accomplished by pixel-shifting, a rather cumbersome manual technique, which allows for correction of translational motion only.
An example of the limitations of the manual pixel-shifting technique is given in the image below, from which it is clear that if patient motion is more complex (in this case a rotation of the patient's head), a correction in one part of the image may imply a deterioration of artifacts or even introduction of new artifacts in other parts (see yellow arrows):
| Motion correction by pixel-shifting |
This explains the need for an elastic registration method, if possible fully automatic. Although many studies have been carried out on this subject, they have not led to algorithms which are sufficiently fast so as to be acceptable for integration in a clinical setting. We have developed a new approach to registration of digital angiographic image sequences that is both effective, and computationally very efficient.
Registration Approach
In general, the registration of successive images in a sequence involves two operations: (i) computation of the correspondence between successive pixels; (ii) applying the correction based on this correspondence.
Since it is computationally too expensive to compute the correspondence explicitly for every pixel, we only consider a reduced set of so called control points. In our approach, the control points are selected in regions containing strong object edges, resulting in an irregular grid. This has three advantages over approaches that use regular grids of control points:
- Control points are chosen at those positions where artifacts can be expected to be largest,
- The reliability of subsequent displacement computations will be higher,
- The number of control points, and thus computation time, is reduced.
The following image shows the regions containing strong object edges in the original mask image (see above). Note that this image gives a very good indication of the regions containing motion artifacts in the subtraction image:

Using this information, the control points are selected by means of a two-parameter algorithm which constrains the minimum and maximum distance between the points (white dots):

The local displacements at the control points are computed by using a template matching approach: using windows in the mask image of about 50x50 pixels, the optimally corresponding window in the live image is searched using a hill-climbing optimization algorithm. In our algorithm we use the energy of the histogram of grey-value differences as a measure of similarity.

In order to correct for motion in the entire image, the computed local displacement vectors need to be interpolated so as to obtain a complete displacement vector field. In our algorithm we use the computationally cheapest approach to do this: linear interpolation. This requires a triangulation of the set of control points:

The nice thing about this approach is that it can be mapped very efficiently on modern graphics hardware (programmed using OpenGL), resulting in a real-time implementation of the final warp operation.
By repeating the above described technique of displacement computation, interpolation, and warping of the mask image according to the computed displacement vector field, entire sequences can be corrected at a rate of about one image per second, even on relatively low-cost graphics workstations such as Silicon Graphics' O2.
Example Results
Three examples of applying the described technique to cerebral and peripheral DSA are given below.
| Original DSA image | Corrected DSA image |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
Copyright © 1999 by Erik Meijering. All rights reserved. No part of this page may be reproduced or transmitted in any form or by any means, electronic or mechanical, including photocopy, recording, or any information storage and retrieval system, without permission in writing from the author.









