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

From NAMIC Wiki
Jump to: navigation, search
m (Text replacement - "http://www.slicer.org/slicerWiki/index.php/" to "https://www.slicer.org/wiki/")
 
(52 intermediate revisions by one other 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 Library Exampe #3: Diffusion Weighted Image Volume: align with structural reference MRI==
+
== <small>updated for '''v4.1'''</small> [[Image:Slicer4_RegLibLogo.png|150px]] <br>Slicer Registration Library Case #3: Diffusion Weighted Image Volume: align with structural reference MRI==
 
=== Input ===
 
=== Input ===
 
{| style="color:#bbbbbb; " cellpadding="10" cellspacing="0" border="0"
 
{| style="color:#bbbbbb; " cellpadding="10" cellspacing="0" border="0"
Line 11: Line 11:
 
|[[Image:RegLib_C03_DTIVol_axial.png|150px|lleft|this is the DTI tensor image, in the same orientation as the DTI Baseline]]
 
|[[Image:RegLib_C03_DTIVol_axial.png|150px|lleft|this is the DTI tensor image, in the same orientation as the DTI Baseline]]
 
|-
 
|-
|fixed image/target<br>T1 SPGR
+
|fixed image/target<br>T2
|
 
|moving image 1<br>T2
 
 
|
 
|
 
|moving image 2a<br>DTI baseline
 
|moving image 2a<br>DTI baseline
Line 19: Line 17:
 
|}
 
|}
  
=== Modules ===
+
===Objective / Background ===
*'''Slicer 3.6.1 recommended modules:  [http://www.slicer.org/slicerWiki/index.php/Modules:BRAINSFit BrainsFit]'''
+
Goal is to align the DTI image with the structural reference T2 scan that provides accuracte anatomical reference.  
 
 
  
===Objective / Background ===
+
=== Slicer 4.1 Modules Used ===
This is a typical example of DTI processing. Goal is to align the DTI image with a structural scan that provides accuracte anatomical reference. The DTI contains acquisition-related distortion and insufficient contrast to discern anatomical detail.
+
*[https://www.slicer.org/wiki/Documentation/4.1/Modules/BRAINSFit BrainsFit]
 +
*[https://www.slicer.org/wiki/Documentation/4.1/Modules/ResampleDTIVolume Resample DTI Volume]
 +
*[https://www.slicer.org/wiki/Documentation/4.1/Modules/DiffusionTensorEstimation Diffusion Tensor Estimation]
  
=== Keywords ===
+
=== Alternate Versions ===
MRI, brain, head, intra-subject, DTI, DWI
+
*this example covers the most basic form of directly registering a DTI + baseline to a T2. There is another (more advanced) version that show how to address additional issues of a strong initial rotation and strong voxel-anisotropy for the raw DWI image acquired.  [[Projects:RegistrationLibrary:RegLib_C03B|You will find the advanced version here]].
 +
*[[Projects:RegistrationLibrary:RegLib_C03_v3|for the Slicer 3.6.3 version of this case see here]]
  
 
===Download ===
 
===Download ===
[[Image:under-construction_icon.jpg|right|100px|this case is still under active development. Comments and priority requests welcome to the slicer-users mailing list]]
+
*Image Data:
*'''[[Media:RegLib_03_DTIExample_full.zip‎|download entire package <small> (Data,Presets, Solution, zip file 24 MB) </small>]]'''
+
**[[Media:RegLib_C03_Data.zip‎|'''RegLib_C03_Data''': main registration package: register DTI <small> (Data, Transforms, solutions, zip file 115 MB) </small>]]
*Presets
 
*Tutorial only
 
*Image Data only
 
 
 
[[Projects:RegistrationDocumentation:ParameterPresetsTutorial|Link to User Guide: How to Load/Save Registration Parameter Presets]]
 
  
===Input Data===
+
=== Procedure ===
*[[Image:Button_red_fixed_white.jpg|20px]]reference/fixed : T2w axial, 0.4mm resolution in plane, 3mm slices
+
This assumes you have the following: 1) a T2 reference image, 2) a DTI baseline image and  3) the DTI volume (both obtained from the  [https://www.slicer.org/wiki/Documentation/4.1/Modules/DiffusionTensorEstimation Diffusion Tensor Estimation module]).
*[[Image:Button_green_moving_white.jpg|20px]] moving: Baseline image of acquired DTI volume, corresponds to T2w MRI , 0.9375 x 0.9375 x 1.4 mm voxel size, oblique
+
*Image Data:
*[[Image:Button_blue_tag_white.jpg|20px]] tag: Tensor data of DTI volume, oblique, same orientation as Baseline image. The result Xform will be applied to this volume. The original DWI has 26 directions, the extracted DTI volume has 9 scalars, i.e. 256 x 256 x 36 x 9
+
*'''Overview''':
 
+
::#Using  [https://www.slicer.org/wiki/Documentation/4.1/Modules/BRAINSFit General Registraion (BRAINS)]''', register DTI_baseline to T2 (affine+nonrigid) w/o masking
=== Procedures ===
+
:#Resample the DTI with above transform with the  [https://www.slicer.org/wiki/Documentation/4.1/Modules/ResampleDTIVolume Resample DTI Volume] module
*'''Phase I: LOAD DATA'''
+
#open [https://www.slicer.org/wiki/Modules:BRAINSFit Registration : ''General Registration (BRAINS)''module  
#download example dataset
+
##''Input Images'': fixed = T2 , moving = DTI_base
#load into 3DSlicer 3.6.1 (Load Scene)
+
##''Output Settings'':  
#To convert the DWI into a DTI: use the ''Converters / DICOM to NRRD Converter'' module
+
###''Slicer BSpline Transform'' (create new transform, rename to: "Xf1_DTbase-T2_BSpline")
*'''Phase II: Register T2 to T1'''
+
###''Slicer Linear Transform'' none
#open Registration : ''BrainsFit'' module
+
###''Output Image Volume'' (create new volume, rename to: "DTIbaseline_Xf1"
##Registration Phases:
+
##''Registration Phases'': select/check ''Rigid'' , ''Rigid+Scale'', ''Affine'', ''BSpline''
##select/check ''Include Rigid registration phase''
+
##''Main Parameters'':  
##select/check ''Include Affine registration phase''
+
###increase ''Number Of Samples'' to 200,000
##select a new transform ''Output Transform''
+
###set  ''B-Spline Grid Size'' to 5,5,5
#Registration Parameters: increase ''Number Of Samples'' to 200,000
 
#Leave all other settings at default
 
#click apply; runtime ca. 1-2 min.
 
#Resample T2 into T1 space
 
##Open ''Resample Scalar/Vector/DWI Volume'' module (Filtering menu)
 
##Input Volume: T2, Reference Volume: T1
 
##Output Volume: create new volume, rename to "T2_Xf1"
 
##Interpolation Type: select ''ws'' (windowed sinc)
 
##Click Apply.
 
##Upon completion, go to ''Volumes'' module to adjust window & level
 
##Active Volume: select T2_Xf1
 
##Open Display tab and adjust window & level, e.g. 1300/700
 
*'''Phase III:REGISTER DTI TO T2_Xf1'''
 
#open Registration : ''BrainsFit'' module
 
##Registration Phases:  
 
##set T2_Xf1 as fixed and DTI_baseline as moving image
 
###select/check ''Include Rigid registration phase''
 
###select/check ''Include Affine registration phase''
 
###select/check ''Include BSpline registration phase''
 
###select ''Include Rigid registration phase''
 
###select ''Include Affine registration phase''
 
###select ''Include BSpline registration phase''
 
##Output Settings:  
 
###select a new transform "Slicer BSpline Transform", rename to "Xf2_DTI-T1_unmasked"
 
###select a new volume "Output Image Volume'', rename to "DT_base_Xf2"
 
##Registration Parameters: increase ''Number Of Samples'' to 200,000
 
##Registration Parameters: set  ''Number Of Grid Subdivisions'' to 5,5,3
 
 
##Leave all other settings at default
 
##Leave all other settings at default
##click: Apply; runtime < 1 min.
+
##click: ''Apply''; runtime < 1 min.
*'''Phase IV: Resample DTI_mask'''
+
#Resample DTI
**we use the above Xform to produce a mask for the T1.
+
#Open the [https://www.slicer.org/wiki/Documentation/4.1/Modules/ResampleDTIVolume Resample DTI Volume] module (found under: All Modules)
#Open ''Resample Scalar/Vector/DWI Volume'' module
 
##Input Volume: DTI_mask; Output volume: create new volume, rename to "DTI_mask_Xf2"
 
##Transform Node:  "Xf2_DTI-T1_unmasked"
 
##select/check:  ''output-to-input''
 
##Interpolation Type: select: '''nn'''
 
##click: Apply
 
*'''Phase V:REGISTER DTI TO T2_Xf1 with masking'''
 
#open Registration : ''BrainsFit'' module
 
##Registration Phases: as before: rigid, affine, BSpline
 
##set T2_Xf1 as fixed and DTI_baseline as moving image
 
##All parameters as in Phase III
 
##Output BSpline Transform: create new , rename to "Xf3_DTI-T1_masked"
 
##Output Volume: create new, rename to "DTI_base_Xf3"
 
##Control of Mask Processing
 
###select/check: ''ROI'' (rightmost box)
 
###Input Fixed Mask: select "DTI_mask_Xf2"
 
###Input Moving Mask: select "DTI_mask"
 
##click: Apply; runtime < 1 min.
 
*'''Phase VI: Resample DTI'''
 
#Load the combined transform (''Add Data'')
 
#Open the ''Resample DTI Volume'' module (found under: All Modules)
 
 
##Input Volume: select DTI
 
##Input Volume: select DTI
##Output Volume: select ''New DTI Volume'', rename to ''DTI_Xf2''
+
##Output Volume: select ''create new Diffusion Tensor Volume'',and rename it to ''DTI_Xf1''
##Reference Volume: select ''T1''
+
##Reference Volume: select ''T2''
##Transform Parameters: select transform "Xf2_DTI-T1''
+
##Transform Parameters: select transform node "Xf1_DTI-T2_BSpline", for  ''Deformation Field'': none ; '''check the ''displacement'' checkbox'''
##check box: ''output-to-input''
 
 
##Leave all other settings at defaults
 
##Leave all other settings at defaults
##Click Apply; runtime < 1 min.
+
##Click Apply; runtime ~ 2 min.
#Go to the ''Volumes'' module, select the newly produced ''DTI_Xf2'' volume
+
#set ''T2'' as background and new  ''DTI_Xf1'' volume as foreground
#under the ''Display'' tab, select ''Color Orientation'' from the ''Scalar Mode'' menu
+
#fade between back- and foreground to see DTI overlay onto the T2 image. Note that you can also fade via holding the OPTION+CMD keys (mac) + dragging left mouse.
#set ''T1'' as background and new  ''DTI_Xf2'' volume as foreground
 
#Set fade slider to see DTI overlay onto the SPGR image
 
  
for more details see the tutorial(s) under Downloads
+
=== Registration Results (click to enlarge) ===
 
 
=== 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_C03_AffineResult_AnimGif.gif|200px|left|after affine alignment]]  
+
|[[Image:RegLib_C03_baseline_unregistered.gif|400px|left]]
 +
|[[Image:RegLib_C03_baseline_registered.gif|400px|left]]
 +
|[[Image:RegLib_C03_DTI_registered.gif|400px|left]]  
 
|-
 
|-
|baseline to T2 after affine alignment
+
|baseline & T2 before registration
 +
|baseline to T2 after affine+nonrigid alignment
 +
|DTI and T2 before & after registration
 
|}
 
|}
  
 
+
=== Keywords ===
 
+
MRI, brain, head, intra-subject, DTI, DWI
<!--
 
**[[Media:RegPreset_RegUC-001.txt|download registration parameter presets file  <small> (MRML file, import as scene) </small>]]
 
**[[Media:RegLib_C01_Data_TumorGrowth.zip|download image dataset only  <small>(NRRD, 10.7 MB, filename: RegLib_C01_Data_TumorGrowth.zip) </small>]]
 
**[[Media:RegLib_Case_01_NRRD_TumorGrowth.zip|download image dataset only  <small>(NRRD, 10.7 MB, filename: RegLib_Case_01_NRRD_TumorGrowth.zip) </small> ]]
 
**[[Media:RegLib_C01_DataNIFTI_TumorGrowth.zip|download image dataset in NIFTI format <small>(NIFTI / nii, 10.7 MB, filename: RegLib_C01_DataNIFTI_TumorGrowth.zip) </small> ]]
 
**[[Media:RegXForm_RegUC-001.tfm.txt|result transform file <small>(ITK .tfm file, load into slicer and apply to the target volume)</small>]]
 
**Tutorials (step-by -step walk through):
 
***[[Media:RegLib_C01_VideoTutorial_TumorGrowth.mov|download/play video tutorial <small>(quicktime, 15.9 MB, filename: RegLib_C01_VideoTutorial_TumorGrowth.mov) </small>]]
 
***[[Media:RegLib_C01_PPTTutorial_TumorGrowth.ppt.zip‎|download power point tutorial <small>(zip file, 2.8 MB, filename: RegLib_C01_PPTTutorial_TumorGrowth.ppt.zip) </small>]]
 
***[[Media:RegInstr_RegUC-001.txt‎|download step-by step text instructions <small>(rtf text file) </small>]]
 
*'''[[Media:RegLib_C01_TumorGrowth_MultiresSolution_Dec09.zip‎|Multiresolution testresult package  <small> (Data,Xform, Solution, zip file 16.5 MB) </small>]]'''
 
*'''[http://www.insight-journal.org/midas/item/bitstream/2332 Download package from MIDAS server<small> (Data,Xform) </small>]'''
 
 
 
comment
 
-->
 
 
 
=== Discussion: Registration Challenges ===
 
*The DTI contains acquisition-related distortions (commonly EPI acquisitions) that can make automated registration difficult.
 
*the two images often have strong differences in  voxel sizes and voxel anisotropy. If the orientation of the highest resolution is not the same in both images, finding a good match can be difficult.
 
*there may be widespread and extensive pathology  (e.g stroke, tumor) that might affect the registration if its contrast is different in the baseline and structural reference scan
 
  
 
=== Discussion: Key Strategies ===
 
=== Discussion: Key Strategies ===
*the two images have identical contrast, hence we could consider "sharper" cost functions, such as NormCorr or MeanSqrd. But because of the strong distortions and lower resolution of the moving image, Mutual Information is recommended as the most robust metric.
+
*the strong EPI-based distortions of the DTI image make nonrigid registration necessary
*often anatomical labels are available from the reference scan. It would be less work to align the anatomical reference with the DTI, since that would circumvent having to resample the complex tensor data into a new orientation. However the strong distortions are better addressed by registering the other direction, i.e. move the DTI into the anatomical reference space.
+
*initial alignment & overlap is sufficient so that no "initialization" methods are necessary and registration can succeed without.
*because we seek to assess/quantify regional size change, we must use a rigid (6DOF) scheme, i.e. we must exclude scaling.
+
*contrast & initial pose are similar enough for registration to succeed without any masking. However the DTI estimation procedure '''does''' provide an optional mask that is usually very helpful in registering cases with more "distracting" image content.   [[Projects:RegistrationLibrary:RegLib_C03_2| For an example see the extended version of this case here.]]
*masking is likely necessary to obtain good results.
+
*the DTI in this example is isotropic and hence can be resampled directly. If the DTI contains strong anisotropy of ratios 1:3 or greater, reorienting the DTI can lead to strong artifacts (e.g. in axial direction appear as blue cast in the color orientation view). In that case it is necessary to resample the DWI in the original orientation to an isotropic size before reorienting. It may also be advisable to first reorient the DWI and perform the DTI estimation afterwards.
*in this example the initial alignment of the two scans is very poor. The strongly oblique orientation of the DTI makes an initial manual alignment step necessary.
 
*these two images are not too far apart initially, so we reduce the default of expected translational misalignment
 
*because speed is not that critical, we increase the sampling rate from the default 2% to 15%.
 
*we also expect larger differences in scale & distortion than with regular structural scane: so we significantly  (2x-3x) increase the expected values for scale and skew from the defaults.
 
*a good affine alignment is important before proceeding to non-rigid alignment to further correct for distortions.
 
  
 
=== Acknowledgments ===
 
=== Acknowledgments ===

Latest revision as of 17:29, 10 July 2017

Home < Projects:RegistrationLibrary:RegLib C03

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 #3: Diffusion Weighted Image Volume: align with structural reference MRI

Input

this is the fixed T2 reference image. All images are aligned into this space lleft this is the DTI Baseline scan, to be registered with the T2 this is the DTI tensor image, in the same orientation as the DTI Baseline
fixed image/target
T2
moving image 2a
DTI baseline
moving image 2b
DTI tensor

Objective / Background

Goal is to align the DTI image with the structural reference T2 scan that provides accuracte anatomical reference.

Slicer 4.1 Modules Used

Alternate Versions

Download

Procedure

This assumes you have the following: 1) a T2 reference image, 2) a DTI baseline image and 3) the DTI volume (both obtained from the Diffusion Tensor Estimation module).

  • Image Data:
  • Overview:
  1. Using General Registraion (BRAINS), register DTI_baseline to T2 (affine+nonrigid) w/o masking
  1. Resample the DTI with above transform with the Resample DTI Volume module
  1. open Registration : General Registration (BRAINS) module
    1. Input Images: fixed = T2 , moving = DTI_base
    2. Output Settings:
      1. Slicer BSpline Transform (create new transform, rename to: "Xf1_DTbase-T2_BSpline")
      2. Slicer Linear Transform none
      3. Output Image Volume (create new volume, rename to: "DTIbaseline_Xf1"
    3. Registration Phases: select/check Rigid , Rigid+Scale, Affine, BSpline
    4. Main Parameters:
      1. increase Number Of Samples to 200,000
      2. set B-Spline Grid Size to 5,5,5
    5. Leave all other settings at default
    6. click: Apply; runtime < 1 min.
  2. Resample DTI
  3. Open the Resample DTI Volume module (found under: All Modules)
    1. Input Volume: select DTI
    2. Output Volume: select create new Diffusion Tensor Volume,and rename it to DTI_Xf1
    3. Reference Volume: select T2
    4. Transform Parameters: select transform node "Xf1_DTI-T2_BSpline", for Deformation Field: none ; check the displacement checkbox
    5. Leave all other settings at defaults
    6. Click Apply; runtime ~ 2 min.
  4. set T2 as background and new DTI_Xf1 volume as foreground
  5. fade between back- and foreground to see DTI overlay onto the T2 image. Note that you can also fade via holding the OPTION+CMD keys (mac) + dragging left mouse.

Registration Results (click to enlarge)

RegLib C03 baseline unregistered.gif
RegLib C03 baseline registered.gif
RegLib C03 DTI registered.gif
baseline & T2 before registration baseline to T2 after affine+nonrigid alignment DTI and T2 before & after registration

Keywords

MRI, brain, head, intra-subject, DTI, DWI

Discussion: Key Strategies

  • the strong EPI-based distortions of the DTI image make nonrigid registration necessary
  • initial alignment & overlap is sufficient so that no "initialization" methods are necessary and registration can succeed without.
  • contrast & initial pose are similar enough for registration to succeed without any masking. However the DTI estimation procedure does provide an optional mask that is usually very helpful in registering cases with more "distracting" image content. For an example see the extended version of this case here.
  • the DTI in this example is isotropic and hence can be resampled directly. If the DTI contains strong anisotropy of ratios 1:3 or greater, reorienting the DTI can lead to strong artifacts (e.g. in axial direction appear as blue cast in the color orientation view). In that case it is necessary to resample the DWI in the original orientation to an isotropic size before reorienting. It may also be advisable to first reorient the DWI and perform the DTI estimation afterwards.

Acknowledgments