Whole-brain Alignment


Jump to: navigation, search

This page describes using a whole-brain anatomy collected at the same time as a functional data session to produce a quality alignment from Inplane to Volume space in mrVista.

[edit] When to use this code

This code is intended for use under the following circumstances:

  • You have a functional data set you would like to analyze in mrVista
  • You have a high-quality reference volume which is the target of the alignment.
  • You have a whole-brain anatomical scan collected during the same time as the functionals.
  • You don't have, or don't want to use, T1-weighted inplane anatomies which are co-registered to the functionals.
  • The subject did not move between the time when the functionals and the whole-brain anatomy were collected.
  • Is it useful for surface coil acquisitions?

[edit] What the code computes

Here are the details of what the code calculates: The final output is an updated 4x4 affine transform matrix (see background on the alignment process), which is saved in the mrSESSION.alignment field. This transform matrix maps from inplane coordinates to volume coordinates. That is, if you have a set of coordinates in the inplane view, InplaneCoords, and want to find out where they are in your volume view, VolumeCooords, you would calculate:

VolumeCoords = mrSESSION.alignment * InplaneCoords

However, there are two factors which can make computing this alignment difficult.

First, you may lack an inplane anatomy. If this is the case, the only option available up until this point was to use the mean functional image, and align that to the volume. This is very tricky, because (a) the T2*-weighted images have very different characteristics from T1-weighted anatomies; (b) The functional images are often at lower resolution than T1 images; (c) there are often imaging artifacts and signal dropoff in many of these images.

Second, the functional prescription used for many data sets does not cover the whole brain. This can throw off many automated alignment algorithms, such as SPM's mutual-information based algorithm.

To get around these problems, this solution decomposes the transform into two steps:

  1. We compute an alignment between the inplanes and the "local", within-session whole-brian anatomy using header information in those files;
  2. We compute an alignment between the whole-brain local anatomy, and the high-quality (also whole-brain) reference anatomy, using the mutual information algorithm.

The final alignment is then the product of these two independent transformations:

VolumeCoords = wholeBrainToVolumeAnat * InplaneToWholeBrain * InplaneCoords

[edit] How to use this code

The main function name is rxWholeBrainAlignment. It is designed to work with the mrRx alignment tool. To use it, you will first need to make sure you have a mrVista session set up, and a target volume anatomy available.

  • Initialize the mrVista session, using the mean functional image as the inplane anatomy. (See the Initialization page for more details on how to do this.)
  • Select the volume anatomy. Recommended method: create a soft link from the functional session to the volume anatomy directory, named "3DAnatomy", in the functinoal session directory.
  • Make sure you have the within-session whole-brain anatomy handy. From here on, this anatomy will be called the "whole-brain anatomy", to distinuish it from the "volume anatomy". (I recognize that both anatomies cover the whole volume of the brain, but I'm trying to use a shorthand consistent with its use in the code.) The initial version of the code will only recognize header structures in DICOM files, so the anatomy will need to be in that format. But let us know, and it shouldn't be too hard to support other file formats, as long as the format contains the necessary header information.

Now you can invoke the code:

  • Type rxAlign while in the functional session directory.
  • Select the menu option Alignment | Whole Brain Alignment....
  • You will be prompted to select the whole brain anatomy. If your anatomy is a directory of DICOM files, select one of the files in that directory.
Personal tools