Documentation:Nightly:Registration:RegistrationLibrary:RegLib C44

From Slicer Wiki
Revision as of 16:30, 1 October 2013 by Meier (talk | contribs) (→‎Download)
Jump to: navigation, search
Home < Documentation:Nightly:Registration:RegistrationLibrary:RegLib C44

Back to Registration Library

Slicer Registration Library Case 44: Visible Human Pelvis CT

Input

this is the main fixed reference image. All images are ev. aligned into this space lleft this is the moving image
baseline image follow-up

Modules used

Description

This dataset contains CT of the visible human male and female pelvis. This serves as a test example for exploring non-rigid registration for inter-subject comparison from CT. The overall strategy will be to register "vhf" to "vhm" via first affine and then BSpline registration. We will generate a mask to focus the registration on the bone structure only and ignore the soft tissue when computing the deformation. Because our original images are quite large (512x512x150), we will subsample the vhf pair for use with the Deformation Field Visualizer module, which might otherwise become too memory intensive.

Download

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.

RegLib_C44.mrb (input data only, Slicer mrb file. 74 MB)
RegLib_C44_full.mrb(input data + results, Slicer mrb file. 82 MB).

Video Screencasts

  1. Movie/screencast showing generating a registration mask
  2. Movie/screencast showing affine and nonrigid BSpline registration
  3. Movie/screencast showing visualization of the deformation via the Transform Visualizer module

Keywords

CT, pelvis, visible human, inter-subject

Procedure / Pipeline

  1. Mask generation
    1. Go to the Editor module
    2. "Master Volume": select vhm
    3. A new labelmap "vhm-label" will be created
    4. Select "vhm" to be visible in the slice viewer
    5. Select the Threshold tool from the editor toolbar
    6. Adjust the lower threshold (slider bar) until most of the bone is highlighted, e.g. somewhere around an intensity value of 80. Leave the upper threshold unchanged at the max.
    7. Click Apply
    8. Morphologically clean the segmentation:
    9. Run a Median Filter with a 3x3x3 neighborhood to remove speckle noise
    10. Return to the Editor module and use the Change Island tool to remove the segmentation of the arms.
    11. Apply 2-3 rounds of morphological dilation to expand the region to include surrounding area.
    12. Rename the labelmap to "vhm_mask" or similar. You will find a "vhm_mask_dil" in the example dataset for comparison
    13. Repeat the above segmentation procedure for "vhf"
  2. Registration:
    1. Go to the General Registration (BRAINS)
      1. Fixed Image Volume: vhm
      2. Moving Volume: vhf
      3. check boxes for Include Rigd registr. phase , Include ScaleVersor3D, include Affine
      4. Slicer Linear Transform: select "create new transform", rename to "Xf1_Affine" or similar
      5. leave rest at defaults. Click Apply
      6. registration should take ~ 10 secs.
      7. use fade slider to verify alignment; compare with result snapshots shown below. Alignment will not be perfect but should be better than before.
      8. note: you can also change the colormaps for the fixed and moving volumes to better judge the alignment: go to the Volumes module and in the Display tab, select "green" and "magenta" as the respective colormaps for the two volumes (vhf, vhm)
  3. BSpline Registration
    1. Go to the General Registration (BRAINS)
      1. Fixed Image Volume: vhm Moving: vhf
    2. Registration phases: from Initialize with previously generated transform', select "Xf1_Affine" node created before.
    3. Registration phases: uncheck boxes for rigid, scale and affine and check box for BSpline
    4. Output: Slicer Linear transform: set to None
    5. Output: Slicer BSpline transform: create new, rename to "Xf2_BSpline_msk" or similar
    6. Output Image Volume: create new, rename to "vhf_Xf2"; Pixel Type: "short"
    7. Registration Parameters: increase Number Of Samples to 200,000; Number of Grid Subdivisions: 7,7,7
    8. Control Of Mask Processing Tab: check ROI box, for Input Fixed Mask and Input Moving Mask select the two dilated labelmaps from above
    9. Leave all other settings at default
    10. click apply

Registration Results

original unregistered unregistered
registered (affine) registered (affine)]
registered (nonrigid w/o masking) registered (nonrigid w/o masking)
registered (nonrigid+masking) registered (nonrigid+masking)
deformation only of vhf registered deformation only of vhf
deformation grid deformation visualized by grid image overlay

Acknowledgments

Original CT from the Visible Human Project shared by the University of Iowa.