Difference between revisions of "Projects:RegistrationLibrary:RegLib C02"

From NAMIC Wiki
Jump to: navigation, search
 
(85 intermediate revisions by the same user not shown)
Line 3: Line 3:
 
[[Projects:RegistrationDocumentation:UseCaseInventory|Back to Registration Use-case Inventory]] <br>
 
[[Projects:RegistrationDocumentation:UseCaseInventory|Back to Registration Use-case Inventory]] <br>
  
==Slicer Registration Use Case Exampe: Intra-subject Brain MR FLAIR to MR T1==
+
= <small>updated for '''v4.1'''</small> [[Image:Slicer4_RegLibLogo.png|150px]] <br>Slicer Registration Library Case #02: Intra-subject Brain MR FLAIR to MR T1 =
{| style="color:#bbbbbb; background-color:#333333;" cellpadding="10" cellspacing="0" border="0"
+
=== Input ===
|[[Image:RegUC_thumb_T1_SPGR_sag.png|150px|lleft|this is the fixed reference image. All images are aligned into this space]]  
+
{| style="color:#bbbbbb; " cellpadding="10" cellspacing="0" border="0"
|[[Image:Arrow_left_gray.jpg|100px|lleft]]  
+
|[[Image:RLib02_SPGR.png|150px|lleft|this is the fixed reference image. All images are aligned into this space]]  
|[[Image:RegUC_thumb_FLAIR_sag.png|150px|lleft|this is the moving image. The transform is calculated by matching this to the reference image]]
+
|[[Image:RegArrow_Affine.png|100px|lleft]]  
|[[Image:RegUC_thumb_FLAIR_sag_labelmap.jpg|150px|lleft|this is a passive image to which the calculated transform is applied. It is a label-map in the same space as the moving FLAIR image]]
+
|[[Image:RLib02_FLAIR_150.png|150px|lleft|this is the moving image. The transform is calculated by matching this to the reference image]]
|align="left"|LEGEND<br>
 
[[Image:Button_red_fixed.jpg|20px|lleft]]  this indicates the reference image that is fixed and does not move. All other images are aligned into this space and resolution<br>
 
[[Image:Button_green_moving.jpg|20px|lleft]]  this indicates the moving image that determines the registration transform.  <br>
 
[[Image:Button_blue_tag.jpg|20px|lleft]] this indicates images that passively move into the reference space, i.e. they have the transform applied but do not contribute to the calculation of the transform.
 
 
|-
 
|-
|[[Image:Button_red_fixed.jpg|40px|lleft]]  T1 SPGR
+
|fixed image/target
 
|
 
|
|[[Image:Button_green_moving.jpg|40px|lleft]] T2 FLAIR
+
|moving image
|[[Image:Button_blue_tag.jpg|40px|lleft]] LABEL-MAP
 
 
|-
 
|-
|1mm isotropic<br> 256 x 256 x 146<br>RAS
+
|resampled labelmap<br>in reference space
|
+
|[[Image:ResampleArrow_Affine.png|100px|lleft]]
|1.2mm isotropic<br> 256 x 256 x 116<br>RAS
+
|[[Image:RLib02_FLAIR+LesionSeg_150.png|150px|lleft|this is a passive image to which the calculated transform is applied. It is a label-map in the same space as the moving FLAIR image]]
|1.2mm isotropic<br> 256 x 256 x 116<br>RAS
+
|-
 +
|result
 +
|resample
 +
|segmentation labelmap
 
|}
 
|}
 +
 +
=== Slicer 4.1 Modules ===
 +
*[http://wiki.slicer.org/slicerWiki/index.php/Documentation/4.1/Modules/BRAINSFit General Registration (BRAINS)]
 +
*[http://wiki.slicer.org/slicerWiki/index.php/Documentation/4.1/Modules/BRAINSResample Resample Image (BRAINS)]
 +
 
===Objective / Background ===
 
===Objective / Background ===
This scenario occurs in many forms whenever we wish to align all the series from a single MRI exam/session into a common space. Alignment is necessary because the subject likely has moved in between series.  
+
This scenario occurs in many forms whenever we wish to align all the series from a single MRI exam/session into a common space. Alignment is necessary because the subject likely has moved in between series. As additional files we have a labelmap for the moving image we need to move along .
 +
 
 
=== Keywords ===
 
=== Keywords ===
 
MRI, brain, head, intra-subject, FLAIR, T1, defacing, masking, labelmap, segmentation
 
MRI, brain, head, intra-subject, FLAIR, T1, defacing, masking, labelmap, segmentation
 +
 +
=== Download ===
 +
*Data:
 +
**[[Media:RegLib_C02_Data.zip‎|'''Registration Library Case 02: MSBrain intra-subject multi-contrast''' <small> (Data, Presets & Solution Xforms, zip file 19 MB) </small>]]
 +
*ScreenCast Movies:
 +
**[[Media:RegLib_C02_Registration.mov|registration via BRAINS<small> (quicktime movie 12 MB </small>]]
 +
**[[Media:RegLib_C02_Resample.mov|resampling the labelmap with the computed affine transform<small> (quicktime movie 12 MB </small>]]
  
 
===Input Data===
 
===Input Data===
*[[Image:Button_red_fixed_white.jpg|20px]]reference/fixed : T1 SPGR , 1x1x1 mm voxel size, sagittal, RAS orientation.
+
*reference/fixed : T1 SPGR , 1x1x1 mm voxel size, 256 x 256 x 146, sagittal,  
*[[Image:Button_green_moving_white.jpg|20px]] moving: T2 FLAIR 1.2x1.2x1.2 mm voxel size, sagittal, RAS orientation.
+
*moving: T2 FLAIR 1.2x1.2x1.2 mm voxel size, sagittal
*[[Image:Button_blue_tag_white.jpg|20px]]tag: segmentation labelmap obtained from FLAIR.
+
*tag: segmentation labelmap obtained from above FLAIR, to be resampled with result transform
*Content preview: Have a quick look before downloading:  Does your data look like this?  [[Media:Lighbox_SPGR.jpg|SPGR Lighbox]] , [[Media:Lighbox_FLAIR.jpg|FLAIR Lighbox]]
 
*download dataset to load into slicer (~17 MB zip archive)
 
  
 
===Registration Challenges===
 
===Registration Challenges===
*the amount of misalignment to be small. Subject did not leave the scanner in between the two acquisitions, but we have some head movement.  
+
*the amount of misalignment is small. Subject did not leave the scanner in between the two acquisitions, but we have some head movement.  
 
*we know the underlying structure/anatomy did not change, but the two distinct acquisition types may contain different amounts of distortion
 
*we know the underlying structure/anatomy did not change, but the two distinct acquisition types may contain different amounts of distortion
 
*the T1 high-resolution had a "defacing" applied, i.e. part of the image containing facial features was removed to ensure anonymity. The FLAIR is lower resolution and contrast and did not need this. The sharp edges and missing information in part of the image may cause problems.
 
*the T1 high-resolution had a "defacing" applied, i.e. part of the image containing facial features was removed to ensure anonymity. The FLAIR is lower resolution and contrast and did not need this. The sharp edges and missing information in part of the image may cause problems.
*we have a skull stripping label map of the fixed image (T1) that we can use to mask out the non-brain part of the image and prevent it from actively participating in the registration.
 
 
*we have one or more label-maps attached to the moving image that we also want to align.
 
*we have one or more label-maps attached to the moving image that we also want to align.
 
*the different series have different dimensions, voxel size and field of view. Hence the choice of which image to choose as the reference becomes important. The additional image data present in one image but not the other may distract the algorithm and require masking.
 
*the different series have different dimensions, voxel size and field of view. Hence the choice of which image to choose as the reference becomes important. The additional image data present in one image but not the other may distract the algorithm and require masking.
Line 47: Line 55:
  
 
===Key Strategies===
 
===Key Strategies===
*the SPGR is the anatomical reference. It is also higher resolution. Unless there are overriding reasons, always use the highest resolution image as your fixed/reference.
+
*we use an affine transform with 12 DOF (rather than a rigid one) to address distortion differences between the two protocols
*the defacing of the SPGR image introduces sharp edges that can be detrimental. Best to mask that area. If you have the mask available, use it. But in this case since we already have a skull-stripping mask as part of the labelmap, that is even better. We will load the labelmap and use it as mask in finding the registration
+
*we choose the SPGR as the anatomical reference. Unless there are overriding reasons, always use the highest resolution image as your fixed/reference, to avoid loosing data through the registration.
*because the two images are still reasonably similar in contrast, we can choose an intensity ratio as cost function, which is less stable but if successful provides a more precise alignment than mutual information.
 
  
===Procedures===
+
=== Procedures ===
*[[Media:RegPreset_RegUC-001.txt|download registration parameter presets file (load into slicer and run the registration)]]
+
*'''Phase I: register FLAIR to T1'''
*download/view guided video tutorial
+
#open the [http://wiki.slicer.org/slicerWiki/index.php/Documentation/4.1/Modules/BRAINSFit General Registration (BRAINS) module]
*download power point tutorial
+
##''Fixed Image Volume'': T1
*[[Media:RegInstr_RegUC-001.txt‎|download step-by step text instructions (text only)]]
+
##''Moving Image Volume'': FLAIR
 +
##Output Settings:
 +
###''Slicer BSpline Transform": none
 +
###''Slicer Linear Transform'': create new transform, rename to "Xf1_Affine"
 +
###''Output Image Volume'': create new volume,  rename to "FLAIR_Xf1"
 +
##''Registration Phases'': check boxes for ''Rigid'' and ''Affine''
 +
##''Main Parameters'':
 +
###''Number Of Samples'': 200,000
 +
##Leave all other settings at default
 +
##click: Apply; runtime < 10 sec (MacPro QuadCore 2.4GHz)
 +
*'''Phase II: Resample labelmap'''
 +
#go to [http://wiki.slicer.org/slicerWiki/index.php/Documentation/4.1/Modules/BRAINSResample ''Resample Image (BRAINS)'' module] (in the Registration menu)
 +
##''Image To Warp'': LesionSeg
 +
##''Reference Image'': T1
 +
##''Output Image'': create new & rename: LesionSeg_Xf1
 +
##''Pixel Type'': uchar or binary
 +
##''Warp By Transform'':  Xf1_Affine created in Phase I above
 +
##''Interpolation Mode'': '''Nearest Neighbor'''
 +
##''Apply''
 +
#go to [http://wiki.slicer.org/slicerWiki/index.php/Documentation/4.1/Modules/Volumes ''Volumes''] module
 +
##''Active Volume'': LesionSeg_Xf1
 +
##click/open the ''Volume Information'' tab
 +
##check the ''LabelMap'' checkbox.
 +
*more details in the ScreenCast movies in the download section above.
  
 
=== Registration Results===
 
=== Registration Results===
*[[Media:RegXForm_RegUC-001.tfm.txt|result transform file (load into slicer and apply to the target volume)]]
+
[[Image:RegLib_C02_Unreg_AnimGif.gif|500px|Unregistered Data + segmentation labelmap]] unregistered <br>
*result screenshots (compare with your results)
+
[[Image:RegLib_C02_registered.gif|500px|Robust Multiresolution Registration Result: FLAIR + segmentation aligned with SPGR]] : registered w. Multiresolution affine <br>
*result evaluations (metrics)
+
<br>

Latest revision as of 13:36, 11 June 2012

Home < Projects:RegistrationLibrary:RegLib C02

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

updated for v4.1 Slicer4 RegLibLogo.png
Slicer Registration Library Case #02: Intra-subject Brain MR FLAIR to MR T1

Input

this is the fixed reference image. All images are aligned into this space lleft this is the moving image. The transform is calculated by matching this to the reference image
fixed image/target moving image
resampled labelmap
in reference space
lleft this is a passive image to which the calculated transform is applied. It is a label-map in the same space as the moving FLAIR image
result resample segmentation labelmap

Slicer 4.1 Modules

Objective / Background

This scenario occurs in many forms whenever we wish to align all the series from a single MRI exam/session into a common space. Alignment is necessary because the subject likely has moved in between series. As additional files we have a labelmap for the moving image we need to move along .

Keywords

MRI, brain, head, intra-subject, FLAIR, T1, defacing, masking, labelmap, segmentation

Download

Input Data

  • reference/fixed : T1 SPGR , 1x1x1 mm voxel size, 256 x 256 x 146, sagittal,
  • moving: T2 FLAIR 1.2x1.2x1.2 mm voxel size, sagittal
  • tag: segmentation labelmap obtained from above FLAIR, to be resampled with result transform

Registration Challenges

  • the amount of misalignment is small. Subject did not leave the scanner in between the two acquisitions, but we have some head movement.
  • we know the underlying structure/anatomy did not change, but the two distinct acquisition types may contain different amounts of distortion
  • the T1 high-resolution had a "defacing" applied, i.e. part of the image containing facial features was removed to ensure anonymity. The FLAIR is lower resolution and contrast and did not need this. The sharp edges and missing information in part of the image may cause problems.
  • we have one or more label-maps attached to the moving image that we also want to align.
  • the different series have different dimensions, voxel size and field of view. Hence the choice of which image to choose as the reference becomes important. The additional image data present in one image but not the other may distract the algorithm and require masking.
  • hi-resolution datasets may have defacing applied to one or both sets, and the defacing-masks may not be available
  • the different series have different contrast. The T1 contains good contrast between white (WM) and gray matter (GM) , and pathology appears as hypointense. The FLAIR on the other hand shows barely any WM/GM contrast and the pathology appears very dominantly as hyperintense.

Key Strategies

  • we use an affine transform with 12 DOF (rather than a rigid one) to address distortion differences between the two protocols
  • we choose the SPGR as the anatomical reference. Unless there are overriding reasons, always use the highest resolution image as your fixed/reference, to avoid loosing data through the registration.

Procedures

  • Phase I: register FLAIR to T1
  1. open the General Registration (BRAINS) module
    1. Fixed Image Volume: T1
    2. Moving Image Volume: FLAIR
    3. Output Settings:
      1. Slicer BSpline Transform": none
      2. Slicer Linear Transform: create new transform, rename to "Xf1_Affine"
      3. Output Image Volume: create new volume, rename to "FLAIR_Xf1"
    4. Registration Phases: check boxes for Rigid and Affine
    5. Main Parameters:
      1. Number Of Samples: 200,000
    6. Leave all other settings at default
    7. click: Apply; runtime < 10 sec (MacPro QuadCore 2.4GHz)
  • Phase II: Resample labelmap
  1. go to Resample Image (BRAINS) module (in the Registration menu)
    1. Image To Warp: LesionSeg
    2. Reference Image: T1
    3. Output Image: create new & rename: LesionSeg_Xf1
    4. Pixel Type: uchar or binary
    5. Warp By Transform: Xf1_Affine created in Phase I above
    6. Interpolation Mode: Nearest Neighbor
    7. Apply
  2. go to Volumes module
    1. Active Volume: LesionSeg_Xf1
    2. click/open the Volume Information tab
    3. check the LabelMap checkbox.
  • more details in the ScreenCast movies in the download section above.

Registration Results

Unregistered Data + segmentation labelmap unregistered
Robust Multiresolution Registration Result: FLAIR + segmentation aligned with SPGR : registered w. Multiresolution affine