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

From NAMIC Wiki
Jump to: navigation, search
(Created page with 'Back to ARRA main page <br> Back to Registration main page <br> [[Projects:RegistrationDocumentation:UseCaseInv…')
 
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 Library Exampe #19: Co-registration of two anatomic brain atlases for merging of structure labels ==
+
==Slicer Registration Library Exampe #19: Multi-contrast group analysis: intra- and inter-subject registration of multi-contrast MRI  ==
 
{| style="color:#bbbbbb; background-color:#333333;" cellpadding="10" cellspacing="0" border="0"
 
{| style="color:#bbbbbb; background-color:#333333;" cellpadding="10" cellspacing="0" border="0"
|[[Image:RegLib_C11_A1_gray.png|150px|lleft|this is the fixed reference image. All images are aligned into this space]]  
+
|[[Image:RegLib_C19_thumb_N2_T1.png|150px|this is the main reference image. All images are aligned into this space]]  
|[[Image:RegLib_C11_A1_label.png|150px|lleft|this is the fixed target, a label-map in the same space as the fixed reference. The registration target is derived from this image]]
+
|[[Image:RegLib_C19_thumb_N2_T2.png|150px|this is the 1st intra-subject moving target,   to be aligned with the main reference directly]]
 +
|[[Image:RegLib_C19_thumb_N2_MRA.png|150px|this is the 2nd intra-subject moving target,  to be aligned with the main reference directly]]
 
|[[Image:Arrow_left_gray.jpg|100px|lleft]]  
 
|[[Image:Arrow_left_gray.jpg|100px|lleft]]  
|[[Image:RegLib_C11_A0_gray.png|150px|lleft|this is the moving image, but the transform is calculated by matching surfaces derived from the labelmaps]]
+
|[[Image:RegLib_C19_thumb_N4_T1.png|150px|this is both the fixed target for the 2nd subject and the moving image for inter-subject registration]]
|[[Image:RegLib_C11_A0_label.png|150px|lleft|this is the moving image to which the calculated transform is applied.  The model surfaces used to calculate the transform are derived from the two labelmaps]]
+
|[[Image:RegLib_C19_thumb_N4_T2.png|150px|this is a moving image to be aligned indirectly to the main ref]]
 +
|[[Image:RegLib_C19_thumb_N4_MRA.png|150px|his is a moving image to be aligned indirectly to the main ref ]]
 
|align="left"|LEGEND<br><small><small>
 
|align="left"|LEGEND<br><small><small>
 
[[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_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_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.
 
 
</small></small>
 
</small></small>
 
|-
 
|-
|[[Image:Button_red_fixed.jpg|40px|lleft]]  Target Atlas T1
+
|[[Image:Button_red_fixed.jpg|40px|lleft]]  reference T1, subject 1
|[[Image:Button_red_fixed.jpg|40px|lleft]]  Target Atlas Labelmap
+
|[[Image:Button_green_moving.jpg|40px|lleft]]  moving T2, subject 1
 +
|[[Image:Button_green_moving.jpg|40px|lleft]]  moving MRA, subject 1
 
|
 
|
|[[Image:Button_blue_tag.jpg|40px|lleft]] Moving Atlas T1
+
|[[Image:Button_green_moving.jpg|40px|lleft]][[Image:Button_red_fixed.jpg|40px|lleft]] reference T1, subject 2
|[[Image:Button_green_moving.jpg|40px|lleft]] Moving Atlas Labelmap
+
|[[Image:Button_green_moving.jpg|40px|lleft]]  moving T2, subject 2
 +
|[[Image:Button_green_moving.jpg|40px|lleft]] moving MRA, subject 2
 
|-
 
|-
 +
|1mm isotropic<br> 256 x 256 x 256<br>PA
 
|1mm isotropic<br> 256 x 256 x 256<br>PA
 
|1mm isotropic<br> 256 x 256 x 256<br>PA
 
|1mm isotropic<br> 256 x 256 x 256<br>PA
 
|1mm isotropic<br> 256 x 256 x 256<br>PA
 
|
 
|
 +
|0.9375 x 0.9375 x 1.5mm isotropic<br> 256 x 256 x 159<br>PA
 
|0.9375 x 0.9375 x 1.5mm isotropic<br> 256 x 256 x 159<br>PA
 
|0.9375 x 0.9375 x 1.5mm isotropic<br> 256 x 256 x 159<br>PA
 
|0.9375 x 0.9375 x 1.5mm isotropic<br> 256 x 256 x 159<br>PA
 
|0.9375 x 0.9375 x 1.5mm isotropic<br> 256 x 256 x 159<br>PA
Line 34: Line 39:
  
 
=== Keywords ===
 
=== Keywords ===
MRI, brain, head, inter-subject, atlas to atlas, surface-based registration, thalamic nuclei
+
multi-stage registration, MRI, brain, head, multi-contrast,  inter-subject, group analysis, MRA, T2
  
 
===Input Data===
 
===Input Data===
Line 46: Line 51:
 
#Build label mask of thalamus for A0: '''Editor''' module
 
#Build label mask of thalamus for A0: '''Editor''' module
 
##Create Labelmap From”: ''A0_labels''
 
##Create Labelmap From”: ''A0_labels''
##Select Labelmap to Edit: select the newly created “A0_labels-label” and then select “Rename”. Rename the new volume to ''A0_thalamus''
 
##From the icon panel, select the “Threshold Icon”
 
##Threshold range: enter 500 and 526
 
#change ''A1_labels'': change label 10 to 49; '''Editor''' module
 
##Select Labelmap to Edit: ''Aa_labels''
 
##Label field: enter 49
 
##Change Island Icon; left click on area with left thalamus label 10
 
#Build label mask of thalamus for A1:  '''Editor''' module
 
##Create Labelmap From”: ''A1_labels''
 
##Select Labelmap to Edit: select the newly created “A1_labels-label” and then select “Rename”. Rename the new volume to ''A1_thalamus''
 
##From the icon panel, select the “Threshold Icon”
 
##Threshold range: enter 49 and 49
 
#Smooth A1 thalamus labelmap: '''Filtering / Denoising / Median Filter'''
 
##Neighborhood Size: (default) 1,1,1
 
##Input Volume: A1_thalamus
 
##Output Volume: A1_thalamus
 
#Build thalamus surface model of A0: '''Model Maker''' module
 
##Input Volume: ''A0_thalamus''
 
##Model Name: ''A0_ThalamusModel''
 
##Labels: 1
 
##Smooth: 50
 
##Decimate: 0.25
 
##Split Normals: no
 
##Point Normals: yes
 
##Save Intermediate Models: no
 
#Build thalamus surface model of A1 ('''Model Maker''' module as above, with ''A1_thalamus'' as input and ''A1_ThalamusModel'' as output.
 
#Co-register thalamus surfaces: '''Python Surface ICP Registration'''  module.  Settings:
 
##Landmark transform mode: Affine
 
##Mean Distance Mode: RMS
 
##Maximum Number of Iterations: 500
 
##Maximum Nmber of Landmarks: 200
 
##Start by matching centroids:  yes
 
##maximum mean distance:  0.01
 
##Initial Transform: none
 
##Input Surface: ''A0_ThalamusModel''
 
##Target Surface: ''A1_ThalamusModel''
 
##Output Surface: none
 
##Output Transform: ''Xform_A0Affine_ICP''
 
# Apply Registration Xform to labelmap: '''Resample Scalar/Vector/DWI Volume''' module. Settings:
 
##Input Volume : ''A0_labels''
 
##Reference Volume : ''A1_labels''
 
##Output Volume : “Create New Volume”, rename to “A0_labels_aff”
 
##Transform Node: ''Xform_A0Affine_ICP''
 
##Interpolation Type: “nn”
 
##Change datatype of new volume ''A0_labels_aff'' to labelmap ('''Volumes''' module)
 
# Apply Registration Xform to thalamus mask: '''Resample Scalar/Vector/DWI Volume''' module. Settings:
 
##Input Volume : ''A0_thalamus''
 
##Reference Volume : ''A1_labels''
 
##Output Volume : “Create New Volume”, rename to ''A0_thalamus_aff''
 
##Transform Node: ''Xform_A0Affine_ICP''
 
##Interpolation Type: “nn”
 
##Change datatype of new volume  ''A0_labels_aff'' to labelmap ('''Volumes''' module)
 
#Mask new labelmap with ''A0_thalamus_aff'': '''Mask Image''' module
 
##Input Volume : ''A0_labels_aff''
 
##Mask Volume : ''A0_thalamus_aff''
 
##Masked Volume: ''A0_labels aff''
 
##Mask new labelmap with A1_thalamus: '''Mask Image''' module
 
##Input Volume : ''A0_labels_aff''
 
##Mask Volume : ''A1_thalamus_aff''
 
##Masked Volume: New volume, rename to: ''A0_labels aff_clip''
 
#Typecast A1_labelmap: '''Cast Image''' module
 
##Input Volume: ''A1_label''
 
##Output Volume: ''A1_label''
 
##Output Type: “short”
 
#Merge Labelmaps:'''Image Label Combine''' module
 
##Input Label Map A: ''A0_label_aff_clip''
 
##Input Label Map B: ''A1_labels''
 
##Output Label Map: “Create New Volume”, rename to ''A1_labels_merged''
 
##First label overwrites second: yes
 
  
 
=== Registration Results===
 
=== Registration Results===
 
{| style="color:#bbbbbb; background-color:#333333;" cellpadding="10" cellspacing="0" border="0"
 
{| style="color:#bbbbbb; background-color:#333333;" cellpadding="10" cellspacing="0" border="0"
|[[Image:RegLib_C11_AnimGif2.gif|200px|left|unregistered]] [[Image:RegLib_C11_AnimGif1.gif|200px|left|after ICP Surface Registration + Clipping]]  
+
|[[Image:RegLib_C19_unreg.gif|200px|left|unregistered]] [[Image:RegLib_C19_reg.gif|200px|left|registered]]  
 
|}
 
|}
  

Revision as of 14:29, 2 July 2010

Home < Projects:RegistrationLibrary:RegLib C19

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

Slicer Registration Library Exampe #19: Multi-contrast group analysis: intra- and inter-subject registration of multi-contrast MRI

this is the main reference image. All images are aligned into this space this is the 1st intra-subject moving target, to be aligned with the main reference directly this is the 2nd intra-subject moving target, to be aligned with the main reference directly lleft this is both the fixed target for the 2nd subject and the moving image for inter-subject registration this is a moving image to be aligned indirectly to the main ref his is a moving image to be aligned indirectly to the main ref LEGEND

lleft this indicates the reference image that is fixed and does not move. All other images are aligned into this space and resolution
lleft this indicates the moving image that determines the registration transform.

lleft reference T1, subject 1 lleft moving T2, subject 1 lleft moving MRA, subject 1 lleftlleft reference T1, subject 2 lleft moving T2, subject 2 lleft moving MRA, subject 2
1mm isotropic
256 x 256 x 256
PA
1mm isotropic
256 x 256 x 256
PA
1mm isotropic
256 x 256 x 256
PA
0.9375 x 0.9375 x 1.5mm isotropic
256 x 256 x 159
PA
0.9375 x 0.9375 x 1.5mm isotropic
256 x 256 x 159
PA
0.9375 x 0.9375 x 1.5mm isotropic
256 x 256 x 159
PA


Objective / Background

This is an example of inter-subject registration via surface matching. The structures of interest are a small subset of the entire image, hence registration is not driven by image intensities but rather two model surfaces derived from the labelmaps.

Keywords

multi-stage registration, MRI, brain, head, multi-contrast, inter-subject, group analysis, MRA, T2

Input Data

  • Button red fixed white.jpgreference/fixed : T1w coronal, 1mm isotropic. Called A1_gray
  • Button red fixed white.jpgreference/fixed : labelmap , aligned with above. Called A1_label
  • Button blue tag white.jpg moving: T1w coronal, 0.9 inplane, 1.5mm coronal slices. Called A0_gray
  • Button green moving white.jpg moving: labelmap , aligned with above. Called A0_label

Methods

  1. Visualize & browse A0 data: determine label range of thalamic nuclei labels in A0_label: 500-526
  2. Visualize & browse A1 data: determine label range of thalamus lables in A1_label: 10 and 49
  3. Build label mask of thalamus for A0: Editor module
    1. Create Labelmap From”: A0_labels

Registration Results

unregistered
registered

Download

Link to User Guide: How to Load/Save Registration Parameter Presets

Discussion: Registration Challenges

  • Because the structures of interest are a very small subset of the image without distinct grayscale contrast
  • the two atlases represent different anatomies and hence some residual misalignment is inevitable
  • the two labelmaps have different resolutions and different smoothness of structure outlines. Some need filtering to remove spurious surface details that would distract the registration algorithm

Discussion: Key Strategies

  • Because the structures of interest are a very small subset of the image without distinct grayscale contrast, we co-register surfaces rather than intensity volumes


Acknowledgments

  • dataset provided by Ron Kikinis, M.D. and Florin Talos, M.D.