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

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 45: Line 45:
 
**[[Projects:RegistrationDocumentation:ParameterPresetsTutorial|Link to User Guide: How to Load/Save Registration Parameter Presets]]
 
**[[Projects:RegistrationDocumentation:ParameterPresetsTutorial|Link to User Guide: How to Load/Save Registration Parameter Presets]]
  
=== Procedure ===
+
=== Procedures===
*'''Phase I: Preprocessing: center'''
+
*'''Phase 1''': rigid alignment
#the two volume sets have different origins specified in their header files. We reset both to obtain a rough alignment:
+
#Go to the [http://www.slicer.org/slicerWiki/index.php/Modules:BRAINSFit '''BRAINSfit'''] module
##Go to ''Volumes'' module and select the ''Info'' tab
+
##select Presets "Xf1_Rigid" or "Xf2_Affine" or set the parameters as given below:
##From ''Active Volume'' menu, select s1_CT; then click the ''Center Volume'' button
+
##fixed image: "CT_1", moving image: "CT_2"
##repeat for s1_PET, s2_CT etc.
+
##''Initialize with previous transform'': select "Off"
*'''Phase II: Preprocessing: crop'''
+
##''Initialize Transform Mode'': check box for ''use MomentsAlign''
#Crop to region of interest: to avoid bias from the strong differences in head positiion, we reduce the effective FOV do the abdominal region of interest
+
##check ''Include Rigid registration Phase'' box.
##Go to the “Extract Subvolume ROI” module.
+
##Output: under ''Slicer Linear Transform'', select new and rename to "Xf1_Rigid" or similar
##click in respective slice view (axial, sagittal, coronal) to se the boundaries. When done select
+
##Registration Parameters: set "Number of Samples" to 200,000 at least
##We clip both s1_CT and s2_CT between the 5th lumbar and the 5th thoracic vertebrae. For a separate tutorial on how to use the Subvolume module, see the slicer training compendium
+
##leave rest at defaults
##To skip this step, load the ready-made cropped volumes from the example dataset: s1_CT_crop , s2_CT_crop.
+
##Click Apply
*'''Phase III: Affine Registration (Expert Automated Module)'''
+
#return to the [http://www.slicer.org/slicerWiki/index.php/Modules:Data-Documentation-3.6 Data module] and drag the CT_2 inside/outside the different registration transforms to compare the alignment
#Open ''Expert Automated Registration Module''
+
*'''Phase 2''': affine alignment
##Fixed Image: s1_CT
+
#Go to the [http://www.slicer.org/slicerWiki/index.php/Modules:BRAINSFit '''BRAINSfit'''] module
##Moving Image: s2_CT
+
##same as Phase 1 above, except:
##Save Transform: create new, rename to "Xf1_s2-s1_Affine"
+
##''Initialize with previous transform'': select "Xf1_Rigid" from phase 1 above
##if running on uncropped/uncentered: check ''Initialization: Centers of Mass''
+
##''Initialize Transform Mode'': check box for ''Off''
##Registration: Pipeline Affine Metric: MattesMI
+
##Output: under ''Slicer Linear Transform'', select new and rename to "Xf2_Affine" or similar
##Expected offset magnitude: 50
+
*'''Phase 3''': BSpline alignment
##Expected rotation,scale,skew magnitude: leave at default
+
##same as Phase 2 above, except:
##“Advanced Affine Registration Parameters” Tab: Affine Max Iterations: 10, Affine sampling ratio: 0.02
+
##''Initialize with previous transform'': select "Xf2_Affine" from phase 2 above
##Click: ''Apply''
+
##Output: under ''Slicer BSpline Transform'', select new and rename to "Xf3_BSpline" or similar
##Go to ''Data'' module and drag the moving volume inside the newly created transform to see the result
+
##Output Image Volume: select new and rename to "CT_2_Xf3" or similar
*'''Phase IV: Non-rigid Registration (Fast Nonrigid BSpline Module)'''
+
##Registration Parameters: set "Number of Samples" to 250,000 at least
#Open ''Fast Nonrigid BSpline'' module
+
##Number of Grid Subdivisions: 9,9,5  or 11,11,7
##Fixed Image: s1_CT_crop
+
##Click Apply
##Moving Image: s2_CT_crop
+
#return to the  [http://www.slicer.org/slicerWiki/index.php/Modules:Data-Documentation-3.6 Data module] and drag the CT_2 inside/outside the different registration transforms to compare the alignment
##Initial Transform: Xform_Aff0_Init
+
#to obtain a resampled volume: move CT_2 inside Xform of choice and then right-click on the volume and select ''Harden Transforms''. Save MRI under new name.
##Output transform: create new, rename to “Xform_BSpl2”
+
*'''Phase 4''': Resample PET
##Output Volume: create new, rename to “s2_CT_BSpl2”
+
#Go to the [http://www.slicer.org/slicerWiki/index.php/Modules:ResampleScalarVectorDWIVolume-Documentation-3.6 '''ResampleScalarVectorDWIVolume'''] module
##Iterations: 120; Grid Size: 9; Histogram Bins: 50
+
##''Input Volume'': PET_2  ; ''Reference Volume'': PET_1 ; ''Output Volume'': create new, rename to "PET_2_Xf3"
##Spatial Samples: 150000
+
##''Transform Node'': select  "Xf3_BSpline" created in phase 3 above
----
+
##''Transform Order'': check box for "output-to-input"
*'''Phase III-IV alternative: BRAINSFit''': Affine + BSpline
+
##Click Apply
#Go to ''BRAINSFit'' registration module
 
##select parameter presets from pulldown menu: '''Xf2_S2-s1_cropped'' or set the parameters below:
 
##Fixed Image: s1_CT_crop
 
##Moving Image: s2_CT_crop
 
##check: include Rigid, include ScaleVersor3D, include Affine, include BSpline
 
##Output: Slicer BSpline Transform: create new, rename to "Xf2_s2c-s1c_BFit"
 
##Output Image Volume: create new, rename to "S2_CT_crop_Xf2"
 
##Output Image Pixel Type: "short"
 
##Registration Parameters: Number of grid subdivisions: 3,3,3; leave rest a default settings
 
##Click: Apply
 
for more details see the tutorial under Downloads
 
 
 
  
 
<!--
 
<!--
Line 99: Line 87:
 
=== Discussion: Registration Challenges ===
 
=== Discussion: Registration Challenges ===
 
*accuracy is the critical criterion here. We need the registration error (residual misalignment) to be smaller than the change we want to measure/detect. Agreement on what constitutes good alignment can therefore vary greatly.
 
*accuracy is the critical criterion here. We need the registration error (residual misalignment) to be smaller than the change we want to measure/detect. Agreement on what constitutes good alignment can therefore vary greatly.
*the two series have different voxel sizes
 
 
*because of the large FOV we have strong non-rigid deformations from differences in patient/limb positions etc.  
 
*because of the large FOV we have strong non-rigid deformations from differences in patient/limb positions etc.  
 
*images are large volumes (>100 MB total)
 
*images are large volumes (>100 MB total)
*image content reaches border of image on two sides
 
 
*2 images pairs have to be aligned, i.e. the calculated transform must be applied to the second (PET) image.
 
*2 images pairs have to be aligned, i.e. the calculated transform must be applied to the second (PET) image.
 
=== Discussion: Key Strategies ===
 
=== Discussion: Key Strategies ===
 
*to calculate the transform, we use the images with the most accurate geometric representation and the smallest expected change, i.e. we align the follow-up CT to the baseline CT and then apply the transforms to the PET image.
 
*to calculate the transform, we use the images with the most accurate geometric representation and the smallest expected change, i.e. we align the follow-up CT to the baseline CT and then apply the transforms to the PET image.
 
*because of the non-rigid differences due to posture and breathing we will need to apply a 2-step registration with an affine alignment followed by a BSpline.
 
*because of the non-rigid differences due to posture and breathing we will need to apply a 2-step registration with an affine alignment followed by a BSpline.
*the strong differences in head position is likely to distract the registration and lead to suboptimal results. Hence we produce a cropped version of the two CT images to calculate the BSpline transform.
 
*the two images are far apart initially, we will need some form of initialization. We will try an automated alignment first. If this fails, we do a 2-step process with manual initial alignment, followed by automated affine.
 
*because accuracy is more important than speed here, we increase the iterations and sampling rates. Note however the large image size, which makes comparable sampling % still large compared to other datasets.
 
*the two images have identical contrast, hence we could consider "sharper" cost functions, such as NormCorr or MeanSqrd. However, since these are not (yet) available for the BSpline registration.
 

Revision as of 18:33, 5 September 2011

Home < Projects:RegistrationLibrary:RegLib C20

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

v3.6.3 Slicer3-6Announcement-v1.png Slicer Registration Library Case #20: Intra-subject whole-body PET-CT

Input

this is the fixed PET/CT 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

Modules

Objective / Background

Change assessment.

Keywords

PET-CT, whole-body, change assessment

Input Data

  • reference/fixed : baseline CT: 0.98 x 0.98 x 5 mm , 512 x 512 x 149; PET: 4.1 x 4.1 x 5 mm , 168 x 168 x 149
  • moving: CT: 0.98 x 0.98 x 5 mm , 512 x 512 x 149; PET: 4.1 x 4.1 x 5 mm , 168 x 168 x 149

Registration Results

Download

Procedures

  • Phase 1: rigid alignment
  1. Go to the BRAINSfit module
    1. select Presets "Xf1_Rigid" or "Xf2_Affine" or set the parameters as given below:
    2. fixed image: "CT_1", moving image: "CT_2"
    3. Initialize with previous transform: select "Off"
    4. Initialize Transform Mode: check box for use MomentsAlign
    5. check Include Rigid registration Phase box.
    6. Output: under Slicer Linear Transform, select new and rename to "Xf1_Rigid" or similar
    7. Registration Parameters: set "Number of Samples" to 200,000 at least
    8. leave rest at defaults
    9. Click Apply
  2. return to the Data module and drag the CT_2 inside/outside the different registration transforms to compare the alignment
  • Phase 2: affine alignment
  1. Go to the BRAINSfit module
    1. same as Phase 1 above, except:
    2. Initialize with previous transform: select "Xf1_Rigid" from phase 1 above
    3. Initialize Transform Mode: check box for Off
    4. Output: under Slicer Linear Transform, select new and rename to "Xf2_Affine" or similar
  • Phase 3: BSpline alignment
    1. same as Phase 2 above, except:
    2. Initialize with previous transform: select "Xf2_Affine" from phase 2 above
    3. Output: under Slicer BSpline Transform, select new and rename to "Xf3_BSpline" or similar
    4. Output Image Volume: select new and rename to "CT_2_Xf3" or similar
    5. Registration Parameters: set "Number of Samples" to 250,000 at least
    6. Number of Grid Subdivisions: 9,9,5 or 11,11,7
    7. Click Apply
  1. return to the Data module and drag the CT_2 inside/outside the different registration transforms to compare the alignment
  2. to obtain a resampled volume: move CT_2 inside Xform of choice and then right-click on the volume and select Harden Transforms. Save MRI under new name.
  • Phase 4: Resample PET
  1. Go to the ResampleScalarVectorDWIVolume module
    1. Input Volume: PET_2 ; Reference Volume: PET_1 ; Output Volume: create new, rename to "PET_2_Xf3"
    2. Transform Node: select "Xf3_BSpline" created in phase 3 above
    3. Transform Order: check box for "output-to-input"
    4. Click Apply


Discussion: Registration Challenges

  • accuracy is the critical criterion here. We need the registration error (residual misalignment) to be smaller than the change we want to measure/detect. Agreement on what constitutes good alignment can therefore vary greatly.
  • because of the large FOV we have strong non-rigid deformations from differences in patient/limb positions etc.
  • images are large volumes (>100 MB total)
  • 2 images pairs have to be aligned, i.e. the calculated transform must be applied to the second (PET) image.

Discussion: Key Strategies

  • to calculate the transform, we use the images with the most accurate geometric representation and the smallest expected change, i.e. we align the follow-up CT to the baseline CT and then apply the transforms to the PET image.
  • because of the non-rigid differences due to posture and breathing we will need to apply a 2-step registration with an affine alignment followed by a BSpline.