Projects:RegistrationLibrary:RegLib C31

From NAMIC Wiki
Revision as of 18:07, 10 July 2017 by Grundlett (talk | contribs) (Text replacement - "http://www.slicer.org/slicerWiki/index.php/" to "https://www.slicer.org/wiki/")
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to: navigation, search
Home < Projects:RegistrationLibrary:RegLib C31

Back to ARRA main page
Back to Registration main page
Back to Registration Use-case Inventory

v3.6.1 Slicer3-6Announcement-v1.png Slicer Registration Library Case 31: TBI

Input

RegLib C31 Thumb1.png lleft RegLib C31 Thumb2.png RegLib C31 Thumb3.png RegLib C31 Thumb4.png lleft RegLib C31 Thumb5.png
exam 1: T1 exam 1: FLAIR exam 1: GRE exam 1: PD exam 1: DWI
lleft
RegLib C31 Thumb6.png lleft RegLib C31 Thumb7.png RegLib C31 Thumb8.png RegLib C31 Thumb9.png RegArrow Affine.png RegLib C31 Thumb10.png
exam 2: T1 exam 2: FLAIR exam 2: GRE exam 2: PD exam 2: DWI

Modules

Download

Modules

Objective / Background

We seek to align two exams (acute baseline and follow-up) as well as all series within exams into a common space for direct evaluation of regional change.

Input Data

  • inter-exam
    • reference/fixed : T1_e1 baseline exam of acute TBI , 512 x 512 x 160 ; 0.5 x 0.5 x 1 mm voxel size, axial acquisition, RAS orientation.
    • moving:T1_e2 follow-up exam of acute TBI , 512 x 512 x 160 ; 0.5 x 0.5 x 1 mm voxel size, axial acquisition, RAS orientation.
  • intra-exam

Registration Challenges

  • we have multiple nested transforms: each exam is co-registered within itself, and then the exams are aligned to eachother
  • strong pathology (hemorrhage?) present at different amounts in the two exams

Key Strategies

  • we first register the scans within each exam to the T1
  • second we register the follow-up T1 scan to the baseline T1
  • we then nest the first alignment within the second

Procedure Overview

  • Scene1_NotApplied: contains all the nested registration transforms, but no resampling has been performed. In the slice view all images will show as registered. To apply the actual resampling in that position, first select/highlight each image volume in the MRML tree (left click) and then select Harden Transforms from the Data module (right click).
    • MRML tree hierarchy. The T1_e1 image is the main reference. T1_e2 is the intermediate reference for exam 2
  • Scene2_Unregistered: as scene 1, but all images have been moved outside the transforms, i.e. in original position.
    • MRML tree hierarchy with images moved outside the transforms, i.e. in original position.

Procedure

  • Load & Center
  1. Load T1 MPRAGE datasets via Load Volume...
  2. volumes are note well centered, i.e. their physical origin defined in the image header differs; we therefore first center both images:
    1. Go to Volumes module, open Info tab
    2. From Active Volume menu, select each image in turn, then click the Center Image button
    3. note how Image origin changes for T1_e1 from 121,-97,-97 to 128,-128,-80 and for T1_e2 from 129,-106,-66 to 128,-128,-80
    4. now that both images have same center their initial misalignment can be seen by placing T1_e1 in the background and T1_e in the foreground and using the toggle-switch
  • Align Exam 2 to Exam 1: T1 1st pass: unmasked
  1. Open Registration / BRAINSFit module
    1. Fixed Image: T1_e1, moving image: T1_e2
    2. Registration Phases: select "Initialize with CenterOfHeadAlign", Include Rigid, "IncludeScaleVersor3D" and Include Affine
    3. Output Settings: under SlicerLinear Transform, select "Create New Linear Transform, then select Rename" and rename it to Xf1_e2-e1_Affine
    4. Registration Parameters: increase the Number of Samples field to 200,000
    5. Leave all other settings at defaults & Click: Apply. Registration should complete within ~ 30 seconds
    6. Go back to the Data module: you should see the T1_e2 image moved under the newly created transform
    7. Select "T1_e1" as background and T2_e2 as new foreground, toggle to see alignment
    8. due to the strong deformations an affine alignment alone does not achieve a perfect match. We can extend the DOF to non-rigid BSpline transforms, but must be aware that doing so might remove differences of interest:
  • Align Exam 2: 2nd pass: nonrigid
  1. Open Registration / BRAINSFit module
    1. Fixed Image: T1_e1, moving image: T1_e2
    2. From "Initialize with previously generated transform" & select the above affine Xf1_e2-e1_Affine
    3. Registration Phases: select only Include BSpline.
    4. Output Settings: under SlicerBSpline Transform, select "Create New BSpline Transform, then select Rename" and rename it to Xf2_e2-e1_BSpl
  • Align Within Exams:
  1. Select Load Volume... and open the GRE, FLAIR and DWI images, respectively
  2. Open Registration / BRAINSFit module
  3. Select the presets Xf3... to Xf9... or use settings below:
    1. Registration phases: select Initialize with Center of Head Align, include rigid, include ScaleVersor3D and include Affine
    2. increase Number of Samples in Registration Parameters to 200,000
    3. Leave all other settings at defaults & Click: Apply. Registration should complete within 1 minute.
    4. choose a reference fixed image most similar in contrast to the moving image:
      1. for GRE,PD and FLAIR: use T1 as fixed directly
      2. for DWI: use PD as intermediate target, then nest the transforms: note that when registration finishes it places the moving image inside the newly created transform and the result becomes visible immediately. For the DWI-PD registration you must first drag the entire construct of the new transform and the DWI image inside it into the transform that holds the PD, otherwise you will not see the actual alignment.
  • Fix Axis orientation:
  1. the PD dual echo and DWI images have flipped y-axis orientation, i.e. AP is read as PA. to fix this
    1. write the volume back out as NHDR format under a different name
    2. open the '.nhdr' file with a text editor and place a minus sign in front of the number of the second triplet indicating the y-axis in the space directions field:
 space directions: (0.47,0,0) (0,0.47,0) (0,0,3)
becomes
space directions: (0.47,0,0) (0,-0.47,0) (0,0,3)
    1. then save & close; and reopen in Slicer. Orientation should now be correct. Note that loading the images with the 'ignore file orientation box checked (Add Volume dialog) will produce the correct y-axis but a flipped x-axis.

Resampling

  • use the Resample Scalar/Vector/DWI module (under Filtering) for all resampling
  • the T1_e2 exam has 1 (affine or affine+BSpline) transform applied, all other images from the second exam have 2 transforms, first an affine to the original position of T1_e2 and then to T1_e1.
  • if the e2-e1 transform is an affine also, we can combine all transforms beforehand (via the Harden Transforms option in the Data module)
  • if the e2-e1 transform contains a BSpline, then we must resample twice, or venture into editing the transform file manually with a text editor. Resampling twice introduces some additional blurring from interpolation, but for most (qualitative) analyses the amount is negligible.

Registration Results

Exam 1 co-registered unregistered exam 1 & 2
Exam 2 co-registered Exam 2 aligned to Exam 1 (affine only)
Exam 2 aligned to Exam 1 Exam 2 aligned to Exam 1 (affine+BSpline)
Exam 2 aligned to Exam 1 BSpline deformation only of Exam 2


Within Exam:

Exam 1 PD aligned to T1 Exam 1 PD aligned to T1
Exam 1 GRE aligned to T1 Exam 1 GRE aligned to T1
Exam 1 DWI aligned to T1 Exam 1 DWI aligned to T1