Projects > MRI Motion Correction

During the summer of 2012 I did research with the Brown University Advanced Baby Imaging Lab. Using novel MRI scanning sequences, the lab investigates how a child’s brain develops and myelinates. A proper understanding of how the brain develops during childhood may also reveal a connection between irregular brain development and neurodevelopmental disorders, such as autism.

Understandably, the work relied heavily on magnetic resonance (MR) images acquired from kids, from newborns to 9 year olds. Acquiring accurate MR images of these kids, especially the smaller ones, is much harder than scanning an adult though. Little kids have a harder time keeping still in the scanner and their movements results in motion artifacts that blurs our images. Even slight head movements produced by breathing can ruin an MR image.

This is the problem my research is hoping to fix. We are using two MRI-compatible infrared cameras and open source stereo vision algorithms (OpenCV) to track the head movements of subjects. In this technique a checkerboard pattern is attached to the patient’s forehead during the scan. The two cameras are mounted on the MR head coil and down on the patient’s head during the scan. The tracking information acquired by the cameras is used to correct the MR images after they are acquired. Here’s a rough outline of how our retrospective motion correction works:

  • A custom gelatin phantom is used to find an estimate of the transformation matrix between camera coordinates and MR coordinates
  • A checkerboard pattern is attached to the subject’s forehead before the scan
  • The subject is scanned as usual
  • The tracking data from the stereo cameras is recorded
  • The tracking data is transformed from camera coordinates to MR coordinates using the transformation matrix found in the first step
  • Lines of k-space acquired during the MRI are rotated and shifted according to tracking data. These lines are no longer uniformly sample on a Cartesian grid
  • K-space lines are re-gridded onto a Cartesian grid
  • Search function iteratively optimizes the image quality by subtly changing the initial estimate of the transformation matrix

The hardest parts of retrospective motion correction included

  • Experimenting with various search techniques (Nelder-Mead, line search, stochastic search)
  • Measuring image quality without reference images (Example image quality metrics include entropy, gradient, edge strength, autocorrelation)
  • Gridding non-uniformly sampled data onto a 3D Cartesian grid (we used a Kaiser-Bessel kernel and Voronoi compensation)
  • Transforming camera coordinates into MR coordinates

Carl Olsson

Engineer, musician, and lifelong learner. Loves building things