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

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…')
 
 
(21 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 #13: Liver Tumor Cryoablation #2 ==
+
== <small>updated for '''v4.1'''</small> [[Image:Slicer4_RegLibLogo.png|150px]] <br> Slicer Registration Library Case #13: Liver Tumor Cryoablation 2 ==
  
{| style="color:#bbbbbb; background-color:#333333;" cellpadding="10" cellspacing="0" border="0"
+
=== Input ===
 +
{| style="color:#bbbbbb; " cellpadding="10" cellspacing="0" border="0"
 
|[[Image:RegLib_C13_LiverTumor2_CTpost.png|200px|lleft|this is the fixed reference image. All images are aligned into this space]]  
 
|[[Image:RegLib_C13_LiverTumor2_CTpost.png|200px|lleft|this is the fixed reference image. All images are aligned into this space]]  
|[[Image:Arrow_left_gray.jpg|100px|lleft]]  
+
|[[Image:RegArrow_NonRigid.png|100px|lleft]]  
 
|[[Image:RegLib_C13_LiverTumor2_CTbegin.png|200px|lleft|this is the moving image. The transform is calculated by matching this to the reference image]]
 
|[[Image:RegLib_C13_LiverTumor2_CTbegin.png|200px|lleft|this is the moving image. The transform is calculated by matching this to the reference image]]
 
|[[Image:RegLib_C13_LiverTumor2_MRIpre_T1.png|200px|lleft|this is the moving image. The transform is calculated by matching this to the reference image]]
 
|[[Image:RegLib_C13_LiverTumor2_MRIpre_T1.png|200px|lleft|this is the moving image. The transform is calculated by matching this to the reference image]]
 
|[[Image:RegLib_C13_LiverTumor2_MRIpre_T2.png|200px|lleft|this is the moving image. The transform is calculated by matching this to the reference image]]
 
|[[Image:RegLib_C13_LiverTumor2_MRIpre_T2.png|200px|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_red_fixed.jpg|40px|lleft]]  axial
+
|fixed image/target: CT post
 
|
 
|
|[[Image:Button_green_moving.jpg|40px|lleft]] T1 SPGR
+
|moving image 1: CT intra
|-
+
|moving image 2: MRI T1 pre
|0.44 x 0.44 x 5 mm<br> 784 x 784 x 30<br>RAS
+
|moving image 3: MRI T2 pre
|
 
|0.68 x 0.68 x 1.5 mm<br> 515 x 515 x 93<br>RAS
 
 
|}
 
|}
 +
 
===Objective / Background ===
 
===Objective / Background ===
We seek to align the pre-operative CT&MRI with the post-operative CT.  
+
We seek to align/fuse pre-operative MRI with intra- and post-operative CT.
  
 
=== Keywords ===
 
=== Keywords ===
Line 30: Line 27:
  
 
===Input Data===
 
===Input Data===
*[[Image:Button_red_fixed_white.jpg|20px]]reference/fixed : T1 SPGR , 0.9375 x 0.9375 x 1.4 mm voxel size, axial, RAS orientation.
+
*CT post reference/fixed : 0.57 x 0.57 x 5 , 512 x 512 x 37 voxels
*[[Image:Button_green_moving_white.jpg|20px]] moving: T1 SPGR , 0.9375 x 0.9375 x 1.2 mm voxel size, sagittal, RAS orientation.
+
*CT pre: 0.57 x 0.57 x 5 mm, 512 x 512 x 33 voxels
 +
*MRI T1 pre: 1.56 x 1.56 x 2.5 mm, 256 x 256 x 88
 +
*MRI T2 pre: 1.56 x 1.56 x 6  mm, 256 x 256 x 36
 +
 
  
=== Methods ===
 
#
 
=== Registration Results===
 
[
 
 
===Download ===
 
===Download ===
*'''[[Media:RegLib_C12_LiverTumorAblation1_Data.zip|download input image data  <small> (Input Data, NRRD images,  zip file xx MB) </small>]]'''
+
*'''[[Media:RegLib_C13_Data.zip|download input image data  <small> (Input Data, NRRD images,  zip file 114 MB) </small>]]'''
*'''[[Media:RegLib_C12_LiverTumorAblation1_ParameterPresets.mrml|download registration parameter presets file  <small> (.mrml  file 20 kB) </small>]]'''
 
*'''[[Media:RegLib_C12_LiverTumorAblation1_Tutorial.ppt|download guided tutorial  <small> (PowerPoint,  xx MB) </small>]]'''
 
*'''[[Media:RegLib_C12_LiverTumorAblation1_Set.zip| download full tutorial set  <small> (Input Data, presets, results, tutorial,  zip file xx MB) </small>]]'''
 
 
 
[[Projects:RegistrationDocumentation:ParameterPresetsTutorial|Link to User Guide: How to Load/Save Registration Parameter Presets]]
 
  
 
<!--
 
<!--
 
comment
 
comment
 
-->
 
-->
 +
=== Procedure ===
 +
*'''Phase I:  register CTpre - CTpost'''
 +
#this registration is fairly straightforward, since FOV, contrast and initial orientation of the two scans are very similar. We perform a linear + nonrigid registration without any masking
 +
#open the [http://wiki.slicer.org/slicerWiki/index.php/Documentation/4.1/Modules/BRAINSFit General Registration (BRAINS) module]
 +
##''Fixed Image Volume'': CTpost
 +
##''Moving Image Volume'': CTpre
 +
##Output Settings:
 +
###''Slicer BSpline Transform": create new transform, rename to "Xf1_Ctpre-CTpost_BSpline"
 +
###''Slicer Linear Transform'': none
 +
###''Output Image Volume'': create new volume,  rename to "CTpre_Xf1"
 +
##''Registration Phases'': check boxes for ''Rigid'' , ''Rigid+Scale'' ,  ''Affine'' and "BSpline"
 +
##''Main Parameters'':
 +
###''B-Spline Grid Size'': 7,7,3
 +
##Leave all other settings at default
 +
##click: Apply; runtime ~ 1 min (MacPro QuadCore 2.4GHz)
 +
*'''Phase II:  Create Masks'''
 +
#for the MR-CT registration we have a big difference in the FOV as well as contrast and amount of anisotropy. We need to mask the liver as region of interest to stabilize the registration; otherwise the clipped FOV will cause the moving image to distort. To skip this step you may load the masks provided with the example data.
 +
#open the [http://wiki.slicer.org/slicerWiki/index.php/Documentation/4.1/Modules/Editor Editor module]
 +
#select  "CTpost" as the master volume , a new CTpost_label volume will be created.
 +
#select the ''Brush'' tool and manually cover the liver and adjacent areas in all axial slices. This need not be accurate, the goal is to exclude the contralateral side where the FOV is clipped.
 +
#repeat and create a similar mask for the MRI-T2.
 +
#save results thus far
 +
*'''Phase III: Affine Registration MR-CT'''
 +
:this phase runs a linear registration first to better track progress. We then use this registration as input for the nonrigid registration in phase IV below. You may combine the two and include a BSpline registration phaser right away.
 +
#open the [http://wiki.slicer.org/slicerWiki/index.php/Documentation/4.1/Modules/BRAINSFit General Registration (BRAINS) module]
 +
##''Fixed Image Volume'': CTpost
 +
##''Moving Image Volume'': MRI_T2
 +
##Output Settings:
 +
###''Slicer BSpline Transform": none
 +
###''Slicer Linear Transform'': create new transform, rename to "Xf2_T2-CTpost_Affine"
 +
###''Output Image Volume'': create new volume,  rename to "MRI-T2_Xf2" (we use this for validation only)
 +
##''Initialization'': select the ''useCenterOfROIAlign''
 +
##''Registration Phases'': check boxes for ''Rigid'', "Rigid+Scale", "Affine"
 +
##''Main Parameters'':
 +
##''Mask Option'': select ''ROI'' button
 +
###''ROI Masking input fixed'': select  "CTpost_label"  created in phase II above
 +
###''ROI Masking input moving'':  select  "MRI-T2-label.nrrd" created in phase II above
 +
##Leave all other settings at default
 +
##click: Apply
 +
#you should get a registration similar to the one shown in the results section below.
 +
*'''Phase IV: Nonrigid Registration MR-CT'''
 +
#open the [http://wiki.slicer.org/slicerWiki/index.php/Documentation/4.1/Modules/BRAINSFit General Registration (BRAINS) module]
 +
##''Fixed Image Volume'': CTpost
 +
##''Moving Image Volume'': MRI_T2
 +
##Output Settings:
 +
###''Slicer BSpline Transform": create new transform, rename to  "Xf3_T2-CTpost_BSpline"
 +
###''Slicer Linear Transform'': none
 +
###''Output Image Volume'': create new volume,  rename to  "MRI-T2_Xf3"
 +
##''Initialization'':
 +
###''Initialization Transform'': select "Xf2_T2-CTpost_Affine" created in phase III above.
 +
##''Registration Phases'': check boxes for ''BSpline'' only
 +
##''Main Parameters'':
 +
###''Number Of Samples'': 200,000
 +
###''B-Spline Grid Size'': 5,5,3
 +
##''Mask Option'': select ''ROI'' button
 +
###''ROI Masking input fixed'': select  "CTpost_label"  created in phase II above
 +
###''ROI Masking input moving'':  select  "MRI-T2-label.nrrd" created in phase II above
 +
##Leave all other settings at default
 +
##click: Apply
 +
#We now repeat the registration for the T1 MRI, while reusing masks and settings:
 +
##''Fixed Image Volume'': CTpost
 +
##''Moving Image Volume'': MRI_T1
 +
##Output Settings:
 +
###''Slicer BSpline Transform": create new transform, rename to  "Xf4_T1-CTpost_BSpline"
 +
###''Slicer Linear Transform'': none
 +
###''Output Image Volume'': create new volume,  rename to  "MRI-T1_Xf4"
 +
##''Initialization'':
 +
###''Initialization Transform'': select "Xf2_T2-CTpost_Affine" created in phase III above.
 +
##''Registration Phases'': check boxes for ''BSpline'' only
 +
##''Main Parameters'':
 +
###''Number Of Samples'': 200,000
 +
###''B-Spline Grid Size'': 5,5,3
 +
##''Mask Option'': select ''ROI'' button
 +
###''ROI Masking input fixed'': select  "CTpost_label"  created in phase II above
 +
###''ROI Masking input moving'':  select  "MRI-T2-label.nrrd" created in phase II above
 +
##Leave all other settings at default
 +
##click: Apply
  
 
=== Discussion: Registration Challenges ===
 
=== Discussion: Registration Challenges ===
Line 55: Line 123:
 
*we have strongly anisotropic voxel sizes with much less through-plane resolution
 
*we have strongly anisotropic voxel sizes with much less through-plane resolution
  
=== Discussion: Key Strategies ===
+
=== Registration Results===
*
+
{| style="color:#bbbbbb; " cellpadding="10" cellspacing="0" border="0"
 +
|[[Image:RegLib_C13_CT_unregistered.gif|300px|left|unregistered CT]]
 +
|unregistered CT
 +
|-
 +
|[[Image:RegLib_C13_MRCT_unregistered.gif|300px|left|unregistered MR-CT]]
 +
|unregistered MR-CT
 +
|-
 +
|[[Image:RegLib_C13_CT_Affine.gif|300px|left|affine registered CT]]
 +
|affine registered CT
 +
|-
 +
|[[Image:RegLib_C13_MRT2-CT_Affine.gif|300px|left|affine registered MRI & CT]]
 +
|affine registered MRI & CT
 +
|-
 +
|[[Image:RegLib_C13_MRT2-CT_BSpline.gif|300px|left|nonrigid registration of MR-T2 to CTpost]]
 +
|nonrigid registration of MR-T2 to CTpost
 +
|-
 +
|[[Image:RegLib_C13_MRT1-CT_BSpline.gif|300px|left|nonrigid registration of MR-T1 to CTpost]]
 +
|nonrigid registration of MR-T1 to CTpost
 +
|-
 +
|[[Image:RegLib_C13_ColorOverlay.gif|300px|left|Color overlay registered MRI onto CT in the tumor area , illustrating the fusion: MRI soft tissue contrast shows substructures tour detail invisible on the CT]]
 +
|Color overlay registered MRI onto CT in the tumor area , illustrating the fusion: MRI soft tissue contrast shows substructures tour detail invisible on the CT
 +
|}
 +
 
 +
=== Acknowledgments ===
 +
Thanks to Dr.Stuart Silverman and Dr. Nobuhiko Hata for sharing this case.

Latest revision as of 22:09, 10 May 2012

Home < Projects:RegistrationLibrary:RegLib C13

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 #13: Liver Tumor Cryoablation 2

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 this is the moving image. The transform is calculated by matching this to the reference image this is the moving image. The transform is calculated by matching this to the reference image
fixed image/target: CT post moving image 1: CT intra moving image 2: MRI T1 pre moving image 3: MRI T2 pre

Objective / Background

We seek to align/fuse pre-operative MRI with intra- and post-operative CT.

Keywords

MRI, CT, IGT, intra-operative, liver, cryoablation, change detection, non-rigid registration

Input Data

  • CT post reference/fixed : 0.57 x 0.57 x 5 , 512 x 512 x 37 voxels
  • CT pre: 0.57 x 0.57 x 5 mm, 512 x 512 x 33 voxels
  • MRI T1 pre: 1.56 x 1.56 x 2.5 mm, 256 x 256 x 88
  • MRI T2 pre: 1.56 x 1.56 x 6 mm, 256 x 256 x 36


Download

Procedure

  • Phase I: register CTpre - CTpost
  1. this registration is fairly straightforward, since FOV, contrast and initial orientation of the two scans are very similar. We perform a linear + nonrigid registration without any masking
  2. open the General Registration (BRAINS) module
    1. Fixed Image Volume: CTpost
    2. Moving Image Volume: CTpre
    3. Output Settings:
      1. Slicer BSpline Transform": create new transform, rename to "Xf1_Ctpre-CTpost_BSpline"
      2. Slicer Linear Transform: none
      3. Output Image Volume: create new volume, rename to "CTpre_Xf1"
    4. Registration Phases: check boxes for Rigid , Rigid+Scale , Affine and "BSpline"
    5. Main Parameters:
      1. B-Spline Grid Size: 7,7,3
    6. Leave all other settings at default
    7. click: Apply; runtime ~ 1 min (MacPro QuadCore 2.4GHz)
  • Phase II: Create Masks
  1. for the MR-CT registration we have a big difference in the FOV as well as contrast and amount of anisotropy. We need to mask the liver as region of interest to stabilize the registration; otherwise the clipped FOV will cause the moving image to distort. To skip this step you may load the masks provided with the example data.
  2. open the Editor module
  3. select "CTpost" as the master volume , a new CTpost_label volume will be created.
  4. select the Brush tool and manually cover the liver and adjacent areas in all axial slices. This need not be accurate, the goal is to exclude the contralateral side where the FOV is clipped.
  5. repeat and create a similar mask for the MRI-T2.
  6. save results thus far
  • Phase III: Affine Registration MR-CT
this phase runs a linear registration first to better track progress. We then use this registration as input for the nonrigid registration in phase IV below. You may combine the two and include a BSpline registration phaser right away.
  1. open the General Registration (BRAINS) module
    1. Fixed Image Volume: CTpost
    2. Moving Image Volume: MRI_T2
    3. Output Settings:
      1. Slicer BSpline Transform": none
      2. Slicer Linear Transform: create new transform, rename to "Xf2_T2-CTpost_Affine"
      3. Output Image Volume: create new volume, rename to "MRI-T2_Xf2" (we use this for validation only)
    4. Initialization: select the useCenterOfROIAlign
    5. Registration Phases: check boxes for Rigid, "Rigid+Scale", "Affine"
    6. Main Parameters:
    7. Mask Option: select ROI button
      1. ROI Masking input fixed: select "CTpost_label" created in phase II above
      2. ROI Masking input moving: select "MRI-T2-label.nrrd" created in phase II above
    8. Leave all other settings at default
    9. click: Apply
  2. you should get a registration similar to the one shown in the results section below.
  • Phase IV: Nonrigid Registration MR-CT
  1. open the General Registration (BRAINS) module
    1. Fixed Image Volume: CTpost
    2. Moving Image Volume: MRI_T2
    3. Output Settings:
      1. Slicer BSpline Transform": create new transform, rename to "Xf3_T2-CTpost_BSpline"
      2. Slicer Linear Transform: none
      3. Output Image Volume: create new volume, rename to "MRI-T2_Xf3"
    4. Initialization:
      1. Initialization Transform: select "Xf2_T2-CTpost_Affine" created in phase III above.
    5. Registration Phases: check boxes for BSpline only
    6. Main Parameters:
      1. Number Of Samples: 200,000
      2. B-Spline Grid Size: 5,5,3
    7. Mask Option: select ROI button
      1. ROI Masking input fixed: select "CTpost_label" created in phase II above
      2. ROI Masking input moving: select "MRI-T2-label.nrrd" created in phase II above
    8. Leave all other settings at default
    9. click: Apply
  2. We now repeat the registration for the T1 MRI, while reusing masks and settings:
    1. Fixed Image Volume: CTpost
    2. Moving Image Volume: MRI_T1
    3. Output Settings:
      1. Slicer BSpline Transform": create new transform, rename to "Xf4_T1-CTpost_BSpline"
      2. Slicer Linear Transform: none
      3. Output Image Volume: create new volume, rename to "MRI-T1_Xf4"
    4. Initialization:
      1. Initialization Transform: select "Xf2_T2-CTpost_Affine" created in phase III above.
    5. Registration Phases: check boxes for BSpline only
    6. Main Parameters:
      1. Number Of Samples: 200,000
      2. B-Spline Grid Size: 5,5,3
    7. Mask Option: select ROI button
      1. ROI Masking input fixed: select "CTpost_label" created in phase II above
      2. ROI Masking input moving: select "MRI-T2-label.nrrd" created in phase II above
    8. Leave all other settings at default
    9. click: Apply

Discussion: Registration Challenges

  • large differences in FOV
  • strong differences in image contrast between MRI & CT
  • contrast enhancement and pathology and treatment changes cause additional differences in image content
  • we have strongly anisotropic voxel sizes with much less through-plane resolution

Registration Results

unregistered CT
unregistered CT
unregistered MR-CT
unregistered MR-CT
affine registered CT
affine registered CT
affine registered MRI & CT
affine registered MRI & CT
nonrigid registration of MR-T2 to CTpost
nonrigid registration of MR-T2 to CTpost
nonrigid registration of MR-T1 to CTpost
nonrigid registration of MR-T1 to CTpost
Color overlay registered MRI onto CT in the tumor area , illustrating the fusion: MRI soft tissue contrast shows substructures tour detail invisible on the CT
Color overlay registered MRI onto CT in the tumor area , illustrating the fusion: MRI soft tissue contrast shows substructures tour detail invisible on the CT

Acknowledgments

Thanks to Dr.Stuart Silverman and Dr. Nobuhiko Hata for sharing this case.