Difference between revisions of "Documentation:Nightly:Registration:RegistrationLibrary:RegLib C12"

From Slicer Wiki
Jump to: navigation, search
(Created page with '== Slicer Registration Library Case #12: Liver Tumor Cryoablation == === Input === {| style="color:#bbbbbb; " cellpadding="10" cellspacing="0" border="0" |[[Image:RegLib_C12_Th…')
 
m (Text replacement - "\[http:\/\/www\.slicer\.org\/slicerWiki\/index\.php\/([^ ]+) ([^]]+)]" to "$2")
 
(15 intermediate revisions by one other user not shown)
Line 1: Line 1:
== Slicer Registration Library Case #12:  Liver Tumor Cryoablation ==
+
[[Documentation/Nightly/Registration/RegistrationLibrary|Back to Registration Library]] <br>
  
=== Input ===
+
= Slicer Registration Library Case #12:  Liver Tumor Cryoablation =
 +
 
 +
== Input ==
 
{| style="color:#bbbbbb; " cellpadding="10" cellspacing="0" border="0"
 
{| style="color:#bbbbbb; " cellpadding="10" cellspacing="0" border="0"
 
|[[Image:RegLib_C12_Thumb1.png|150px|lleft|this is a pre-op CT + contrast reference image. All images are aligned into this space]]  
 
|[[Image:RegLib_C12_Thumb1.png|150px|lleft|this is a pre-op CT + contrast reference image. All images are aligned into this space]]  
Line 12: Line 14:
 
|}
 
|}
  
=== Slicer4 Modules used ===
+
== Description ==
* [http://wiki.slicer.org/slicerWiki/index.php/Documentation/4.1/Modules/BRAINSFit General Registration (BRAINS) module]
+
We have a pre-operative MRI and an intra-operative CT. We wish to align the MRI to the CT to aid in guiding the surgical intervention. Tumor visibility is much better on the MRI, hence a properly registered MRI can help locate the tumor during the intervention. <br>
 +
'''Approach''': we seek a non-rigid registration of the MRI to the CT. Because contrast and image content are very different, we must first build masks to guide the registration process onto the structures of interest. We then obtain the registration in 2 steps: we first compute an affine registration to test stability and feasibility of our masks. Once successful we use this registration as starting point for a BSpline non-rigid transform.
  
===Download ===
+
'''[[Documentation:Nightly:Registration:RegistrationLibrary:RegLib_C12a|Click here for alternate version, demonstrating the use of nested transforms (isolating nonrigid portion)]]'''
*[[Media:RegLib_C12_Data.zip|'''download input image data'''  <small> (Input Data, Masks, Solution Transforms, Resampled results (NRRD images,  zip file 65 MB) </small>]]
 
  
===Objective / Background ===
+
== Modules used ==
 +
* [[Documentation/Nightly/Modules/BRAINSFit|''General Registration (BRAINS)'' module]]
 +
 
 +
== Download (from NAMIC MIDAS) ==
 +
<small>''Why 2 sets of files?  The "input data" mrb includes only the unregistered data to try the method yourself from start to finish. The full dataset includes intermediate files and results (transforms, resampled images etc.). If you use the full dataset we recommend to choose different names for the images/results you create yourself to distinguish the old data from the new one you generated yourself. ''</small>
 +
*[http://slicer.kitware.com/midas3/download/?items=103749 '''RegLib_12.mrb''': input data only, use this to run the tutorial from the start <small>(Slicer mrb file. 35 MB). </small>]
 +
*[http://slicer.kitware.com/midas3/download/?items=103748 '''RegLib_C12_full.mrb''': includes raw data + all solutions and intermediate files, use to browse/verify <small>(Slicer mrb file. 68 MB). </small>]
 +
 
 +
== Video Screencasts ==
 +
#[[Media:RegLib_C12.mov|Movie/'''screencast showing registration Case #12''']]
 +
 
 +
==Objective / Background ==
 
We seek to align a pre-operative MRI with a contrast enhanced CT for surgical guidance.
 
We seek to align a pre-operative MRI with a contrast enhanced CT for surgical guidance.
  
=== Keywords ===
+
== Keywords ==
 
MRI, CT, IGT, intra-operative, liver, cryoablation, change detection, non-rigid registration
 
MRI, CT, IGT, intra-operative, liver, cryoablation, change detection, non-rigid registration
  
===Input Data===
+
==Input Data==
 
*reference/fixed :  pr-op CT, 0.95 x 0.95 x 5 mm voxel size
 
*reference/fixed :  pr-op CT, 0.95 x 0.95 x 5 mm voxel size
*moving:  intra-op MRI, 0.78 x 0.78 x 2.5 mm  axial,  
+
*moving:  intra-op MRI, 0.78 x 0.78 x 2.5 mm  axial,
  
=== Discussion: Registration Challenges ===
+
== Procedures ==
*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
 
 
 
=== Notes / Overall Strategy ===
 
*masking is required to focus the registration algorithm on the structure of interest
 
*Overall strategy:
 
:#obtain (manual) a coarse segmentation of the liver in both MRI and CT. Dilate by a few pixels to include the organ boundary
 
:#perform a manual initial alignment of MR to CT. Use this alignment as starting point for the automated registration
 
:#run an affine registration with above masks and intial alignment
 
#run a non-rigid BSpline registration with above affine alignment as starting point
 
 
 
 
 
=== Procedures ===
 
 
*'''Phase I: Build Masks'''
 
*'''Phase I: Build Masks'''
 
: Note: for illustration the example set contains 2 masks: one with only the liver and one also including spleen and kidney (Mask2).  As shown in the results below, the liver-only mask is insufficiently constraining the registration, yielding a result that at first glance looks ok for the liver, but has significant misalignment in the remaining abdominal area. Hence it is advisable to stabilize the registration further by including more structures with good contrast in both images (Spleen, Kidney).
 
: Note: for illustration the example set contains 2 masks: one with only the liver and one also including spleen and kidney (Mask2).  As shown in the results below, the liver-only mask is insufficiently constraining the registration, yielding a result that at first glance looks ok for the liver, but has significant misalignment in the remaining abdominal area. Hence it is advisable to stabilize the registration further by including more structures with good contrast in both images (Spleen, Kidney).
#open the [http://wiki.slicer.org/slicerWiki/index.php/Documentation/4.1/Modules/Editor Editor module]
+
#open the [[Documentation/Nightly/Modules/Editor|''Editor'' module]]
 
#select  "MRI" as the master volume ; a new "MRI_label" is created  
 
#select  "MRI" as the master volume ; a new "MRI_label" is created  
 
#using the Brush tool, trace the liver contour from axial slices. Also include kidneys and spleen.
 
#using the Brush tool, trace the liver contour from axial slices. Also include kidneys and spleen.
Line 55: Line 53:
 
#select the ''Dilate'' tool and click ''Apply'' 3-4 times to extend the mask area
 
#select the ''Dilate'' tool and click ''Apply'' 3-4 times to extend the mask area
 
#repeat for both masks
 
#repeat for both masks
#In the  [http://www.slicer.org/slicerWiki/index.php/Modules:Editor-Documentation-3.6 ''Editor'' module], use the ''Dilate'' function to expand the outline by 2-3 pixels (click on ''Apply'' button 2-3 times)
+
#In the  [[Modules:Editor-Documentation-3.6|''Editor'' module]], use the ''Dilate'' function to expand the outline by 2-3 pixels (click on ''Apply'' button 2-3 times)
 
#save dilated labelmasks under new name (e.g. CT_mask.nrrd)
 
#save dilated labelmasks under new name (e.g. CT_mask.nrrd)
 
*'''Phase II: MR-CTpre registration''' (Affine)
 
*'''Phase II: MR-CTpre registration''' (Affine)
#open the [http://wiki.slicer.org/slicerWiki/index.php/Documentation/4.1/Modules/BRAINSFit General Registration (BRAINS) module]
+
#open the [[Documentation/Nightly/Modules/BRAINSFit|''General Registration (BRAINS)'' module]]
 
##''Fixed Image Volume'': CT
 
##''Fixed Image Volume'': CT
 
##''Moving Image Volume'': MRI
 
##''Moving Image Volume'': MRI
 
##Output Settings:  
 
##Output Settings:  
 
###''Slicer BSpline Transform": none
 
###''Slicer BSpline Transform": none
###''Slicer Linear Transform'': create new transform, rename to "Xf1_MRI-CT_Affine"
+
###''Slicer Linear Transform'': create new transform, rename to "Xf1_Affine"
###''Output Image Volume'': create new volume,  rename to "MRI_Xf1" (we use this for ease of validation only)
+
###''Output Image Volume'': create new volume,  rename to "MRI_Xf1" or similar (we use this for ease of validation only)
 
##''Initialization'': select the ''useCenterOfROIAlign''
 
##''Initialization'': select the ''useCenterOfROIAlign''
 
##''Registration Phases'': check boxes for ''Rigid'' , ''Rigid+Scale'' and ''Affine''
 
##''Registration Phases'': check boxes for ''Rigid'' , ''Rigid+Scale'' and ''Affine''
 +
##''Main Parameters'': increase ''Number OF Samples'' to 300,000
 
##''Mask Option'': select ''ROI'' button
 
##''Mask Option'': select ''ROI'' button
###''(ROI)Masking input fixed'': CT_mask
+
###''(ROI)Masking input fixed'': CT_mask2
###''(ROI)Masking input moving'': MRI_mask
+
###''(ROI)Masking input moving'': MRI_mask2
 
##Leave all other settings at default
 
##Leave all other settings at default
 
##click: Apply; runtime < 1 min (MacPro QuadCore 2.4GHz)
 
##click: Apply; runtime < 1 min (MacPro QuadCore 2.4GHz)
 
##this should generate a first alignment.
 
##this should generate a first alignment.
 
*'''Phase III: Nonrigid Registration'''
 
*'''Phase III: Nonrigid Registration'''
#open the [http://wiki.slicer.org/slicerWiki/index.php/Documentation/4.1/Modules/BRAINSFit General Registration (BRAINS) module]
+
#open the [[Documentation/Nightly/Modules/BRAINSFit|''General Registration (BRAINS)'' module]]
 
##''Fixed Image Volume'': CT
 
##''Fixed Image Volume'': CT
 
##''Moving Image Volume'': MRI
 
##''Moving Image Volume'': MRI
 
##Output Settings:  
 
##Output Settings:  
###''Slicer BSpline Transform": create new transform, rename to "Xf2_MRI-CT_BSpline"
+
###''Slicer BSpline Transform": create new transform, rename to "Xf2_BSpline"
 
###''Slicer Linear Transform'': none
 
###''Slicer Linear Transform'': none
 
###''Output Image Volume'': create new volume,  rename to "MRI_Xf2"  
 
###''Output Image Volume'': create new volume,  rename to "MRI_Xf2"  
 
##''Initialization'':  
 
##''Initialization'':  
###''Initialization Transform'': select  "Xf1_MRI-CT_Affine" created in Phase II above
+
###''Initialization Transform'': select  "Xf1_Affine" created in Phase II above
 
###''Initialization Transform Mode'': Off  
 
###''Initialization Transform Mode'': Off  
 
##''Registration Phases'': check boxes for ''BSpline'' only
 
##''Registration Phases'': check boxes for ''BSpline'' only
 
##''Main Parameters'':
 
##''Main Parameters'':
###''Number Of Samples'': 200,000
+
###''Number Of Samples'': 300,000
 
###''B-Spline Grid Size'': 7,7,3
 
###''B-Spline Grid Size'': 7,7,3
 
##''Mask Option'': select ''ROI'' button
 
##''Mask Option'': select ''ROI'' button
Line 94: Line 93:
 
##click: Apply
 
##click: Apply
  
=== Registration Results===
+
== Registration Results <small>(click to enlarge) </small>==
 
{| style="color:#bbbbbb; " cellpadding="10" cellspacing="0" border="0"
 
{| style="color:#bbbbbb; " cellpadding="10" cellspacing="0" border="0"
 
|[[Image:RegLib_C12_unregistered.gif|300px|left|unregistered MRI & CT]]  
 
|[[Image:RegLib_C12_unregistered.gif|300px|left|unregistered MRI & CT]]  

Latest revision as of 02:34, 27 November 2019

Home < Documentation:Nightly:Registration:RegistrationLibrary:RegLib C12

Back to Registration Library

Slicer Registration Library Case #12: Liver Tumor Cryoablation

Input

this is a pre-op CT + contrast reference image. All images are aligned into this space lleft this is the pre-op MRI we seek to align with the CT
fixed image/target moving image

Description

We have a pre-operative MRI and an intra-operative CT. We wish to align the MRI to the CT to aid in guiding the surgical intervention. Tumor visibility is much better on the MRI, hence a properly registered MRI can help locate the tumor during the intervention.
Approach: we seek a non-rigid registration of the MRI to the CT. Because contrast and image content are very different, we must first build masks to guide the registration process onto the structures of interest. We then obtain the registration in 2 steps: we first compute an affine registration to test stability and feasibility of our masks. Once successful we use this registration as starting point for a BSpline non-rigid transform.

Click here for alternate version, demonstrating the use of nested transforms (isolating nonrigid portion)

Modules used

Download (from NAMIC MIDAS)

Why 2 sets of files? The "input data" mrb includes only the unregistered data to try the method yourself from start to finish. The full dataset includes intermediate files and results (transforms, resampled images etc.). If you use the full dataset we recommend to choose different names for the images/results you create yourself to distinguish the old data from the new one you generated yourself.

Video Screencasts

  1. Movie/screencast showing registration Case #12

Objective / Background

We seek to align a pre-operative MRI with a contrast enhanced CT for surgical guidance.

Keywords

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

Input Data

  • reference/fixed : pr-op CT, 0.95 x 0.95 x 5 mm voxel size
  • moving: intra-op MRI, 0.78 x 0.78 x 2.5 mm axial,

Procedures

  • Phase I: Build Masks
Note: for illustration the example set contains 2 masks: one with only the liver and one also including spleen and kidney (Mask2). As shown in the results below, the liver-only mask is insufficiently constraining the registration, yielding a result that at first glance looks ok for the liver, but has significant misalignment in the remaining abdominal area. Hence it is advisable to stabilize the registration further by including more structures with good contrast in both images (Spleen, Kidney).
  1. open the Editor module
  2. select "MRI" as the master volume ; a new "MRI_label" is created
  3. using the Brush tool, trace the liver contour from axial slices. Also include kidneys and spleen.
  4. repeat the same for the CT.
  5. you should end up with 2 label maps similar to those included in the example dataset. See snapshots in Result section below.
  6. save the label maps as "MRI-label.nrrd" or similar
  7. registration masks ideally extend beyond the structure boundary:
  8. select the Dilate tool and click Apply 3-4 times to extend the mask area
  9. repeat for both masks
  10. In the Editor module, use the Dilate function to expand the outline by 2-3 pixels (click on Apply button 2-3 times)
  11. save dilated labelmasks under new name (e.g. CT_mask.nrrd)
  • Phase II: MR-CTpre registration (Affine)
  1. open the General Registration (BRAINS) module
    1. Fixed Image Volume: CT
    2. Moving Image Volume: MRI
    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 "MRI_Xf1" or similar (we use this for ease of validation only)
    4. Initialization: select the useCenterOfROIAlign
    5. Registration Phases: check boxes for Rigid , Rigid+Scale and Affine
    6. Main Parameters: increase Number OF Samples to 300,000
    7. Mask Option: select ROI button
      1. (ROI)Masking input fixed: CT_mask2
      2. (ROI)Masking input moving: MRI_mask2
    8. Leave all other settings at default
    9. click: Apply; runtime < 1 min (MacPro QuadCore 2.4GHz)
    10. this should generate a first alignment.
  • Phase III: Nonrigid Registration
  1. open the General Registration (BRAINS) module
    1. Fixed Image Volume: CT
    2. Moving Image Volume: MRI
    3. Output Settings:
      1. Slicer BSpline Transform": create new transform, rename to "Xf2_BSpline"
      2. Slicer Linear Transform: none
      3. Output Image Volume: create new volume, rename to "MRI_Xf2"
    4. Initialization:
      1. Initialization Transform: select "Xf1_Affine" created in Phase II above
      2. Initialization Transform Mode: Off
    5. Registration Phases: check boxes for BSpline only
    6. Main Parameters:
      1. Number Of Samples: 300,000
      2. B-Spline Grid Size: 7,7,3
    7. Mask Option: select ROI button
      1. (ROI)Masking input fixed: CT_mask
      2. (ROI)Masking input moving: MRI_mask
    8. Leave all other settings at default
    9. click: Apply

Registration Results (click to enlarge)

unregistered MRI & CT
unregistered MRI & CT
registration masks
registration masks
affine registered MRI & CT
affine registered MRI & CT
nonrigid registered MRI & CT
nonrigid registered MRI & CT
insufficient mask: nonrigid registered with liver mask only, note the misalignment in the remaining abdomen
insufficient mask: nonrigid registered with liver mask only, note the misalignment in the remaining abdomen
Color overlay of registered MRI onto CT, illustrating the fusion: MRI soft tissue contrast shows substructures & vasculature invisible on the CT
Color overlay of registered MRI onto CT, illustrating the fusion: MRI soft tissue contrast shows substructures & vasculature invisible on the CT


Acknowledgments

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