Difference between revisions of "Projects:RegistrationLibrary:RegLib C44"
From NAMIC Wiki
m (Text replacement - "http://www.slicer.org/slicerWiki/index.php/" to "https://www.slicer.org/wiki/") |
|||
(4 intermediate revisions by one other user not shown) | |||
Line 17: | Line 17: | ||
=== Modules === | === Modules === | ||
− | *'''Slicer 3.6.3 recommended modules: [ | + | *'''Slicer 3.6.3 recommended modules: [https://www.slicer.org/wiki/Modules:BRAINSFit BRAINSFit] |
===Objective / Background === | ===Objective / Background === | ||
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. | 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. | ||
+ | |||
+ | ===Download === | ||
+ | *Data | ||
+ | **[[Media:RegLib_C44_Data.zip|'''RegLib_C44_Data''': Example Dataset <small> (CT images, Presets, Solution, zip file 171 MB) </small>]] | ||
+ | *Presets | ||
+ | **[[Media:RegLib_C44_Presets.mrml|'''RegLib_C44_Presets.mrml''': registration parameter presets<small> (.mrml text file 16 kB) </small>]] | ||
=== Keywords === | === Keywords === | ||
Line 29: | Line 35: | ||
*fixed: CT , 0.6 x 0.6 x 0.40 mm voxel size, axial; 292 x 292 x 91 unsigned short image | *fixed: CT , 0.6 x 0.6 x 0.40 mm voxel size, axial; 292 x 292 x 91 unsigned short image | ||
*moving: CT , 0.6 x 0.6 x 0.40 mm voxel size, axial; 512 x 512 x 107 unsigned short image | *moving: CT , 0.6 x 0.6 x 0.40 mm voxel size, axial; 512 x 512 x 107 unsigned short image | ||
− | === | + | === Overall Strategy === |
#Open case scene file or import image data: RegLib_C44_SlicerScene.mrml | #Open case scene file or import image data: RegLib_C44_SlicerScene.mrml | ||
#Overall strategy will be | #Overall strategy will be | ||
Line 37: | Line 43: | ||
##using above affine alignment as starting point, perform low-level BSpline alignment | ##using above affine alignment as starting point, perform low-level BSpline alignment | ||
##To study the deformation only, extract the BSpline deformation from the transform, i.e. remove the affine portion. This can be done in a text editor, or by first resampling the ''vhf'' volume with the Affine before computing the BSpline. | ##To study the deformation only, extract the BSpline deformation from the transform, i.e. remove the affine portion. This can be done in a text editor, or by first resampling the ''vhf'' volume with the Affine before computing the BSpline. | ||
− | ##Visualize the deformation by applying the pure BSpline to a [[Projects:RegistrationDocumentation:UseCaseInventory:Auxiliary grid image]] | + | ##Visualize the deformation by applying the pure BSpline to a [[Projects:RegistrationDocumentation:UseCaseInventory:Auxiliary|'''auxiliary grid image''']] |
#Change colormap of deformed grid (e.g. hot), window and level to view the gridlines of interest, and overlay on the grayscale images | #Change colormap of deformed grid (e.g. hot), window and level to view the gridlines of interest, and overlay on the grayscale images | ||
+ | |||
+ | === Procedure / Pipeline === | ||
#Mask generation | #Mask generation | ||
− | ##Go to the [ | + | ##Go to the [https://www.slicer.org/wiki/Modules:Editor-Documentation-3.6 Editor module] |
##"Master Volume": select ''vhm'' | ##"Master Volume": select ''vhm'' | ||
##A new labelmap "vhm-label" will be created | ##A new labelmap "vhm-label" will be created | ||
Line 48: | Line 56: | ||
##Click Apply | ##Click Apply | ||
##Morphologically clean the segmentation: | ##Morphologically clean the segmentation: | ||
− | ##Run a [ | + | ##Run a [https://www.slicer.org/wiki/Modules:MedianFilter-Documentation-3.6 Median Filter] with a 3x3x3 neighborhood to remove speckle noise |
− | ##Return to the [ | + | ##Return to the [https://www.slicer.org/wiki/Modules:Editor-Documentation-3.6 Editor module] and use the ''Change Island'' tool to remove the segmentation of the arms. |
##Apply 2-3 rounds of morphological dilation to expand the region to include surrounding area. | ##Apply 2-3 rounds of morphological dilation to expand the region to include surrounding area. | ||
##Rename the labelmap to "vhm_mask" or similar. You will find a "vhm_mask_dil" in the example dataset for comparison | ##Rename the labelmap to "vhm_mask" or similar. You will find a "vhm_mask_dil" in the example dataset for comparison | ||
Line 56: | Line 64: | ||
##''''Presets''': for either of the registrations below, you can select the "BRAINSFit_...." presets from the parameter set menu instead of setting the parameters manually. | ##''''Presets''': for either of the registrations below, you can select the "BRAINSFit_...." presets from the parameter set menu instead of setting the parameters manually. | ||
#Affine Registration | #Affine Registration | ||
− | ##Go to the [ | + | ##Go to the [https://www.slicer.org/wiki/Modules:BRAINSFit BRAINSfit module] |
##select the following parameters: | ##select the following parameters: | ||
###''Fixed Image Volume'': vhm ''Moving'': vhf | ###''Fixed Image Volume'': vhm ''Moving'': vhf | ||
Line 65: | Line 73: | ||
###use fade slider to verify alignment; compare with result snapshots shown below. Alignment will not be perfect but should be better than before. | ###use fade slider to verify alignment; compare with result snapshots shown below. Alignment will not be perfect but should be better than before. | ||
#BSpline Registration | #BSpline Registration | ||
− | ##Go to the [ | + | ##Go to the [https://www.slicer.org/wiki/Modules:BRAINSFit BRAINSfit module] |
##select the following parameters: | ##select the following parameters: | ||
###''Fixed Image Volume'': vhm ''Moving'': vhf | ###''Fixed Image Volume'': vhm ''Moving'': vhf | ||
Line 79: | Line 87: | ||
=== Registration Results=== | === Registration Results=== | ||
[[Image:RegLib_C44_unregistered.gif|400px|original unregistered]] unregistered <br> | [[Image:RegLib_C44_unregistered.gif|400px|original unregistered]] unregistered <br> | ||
− | [[Image:RegLib_C44_affine.gif|400px|registered ( | + | [[Image:RegLib_C44_affine.gif|400px|registered (affine)]] registered (affine)]<br> |
− | [[Image:RegLib_C44_registered_Xf2.gif|400px|registered ( | + | [[Image:RegLib_C44_registered_Xf2.gif|400px|registered (nonrigid w/o masking)]] registered (nonrigid w/o masking)<br> |
− | [[Image:RegLib_C44_registered_Xf3.gif|400px|registered ( | + | [[Image:RegLib_C44_registered_Xf3.gif|400px|registered (nonrigid+masking)]] registered (nonrigid+masking)<br> |
− | [[Image:RegLib_C44_deformOnly_Xf3.gif|400px| | + | [[Image:RegLib_C44_deformOnly_Xf3.gif|400px|deformation only of vhf]] registered deformation only of vhf<br> |
− | + | [[Image:RegLib_C44_gridXf3.png|400px|deformation grid]] deformation visualized by grid image overlay <br> | |
− | |||
− | |||
− | |||
− | |||
− | |||
=== Acknowledgments === | === Acknowledgments === | ||
+ | Original CT from the [https://mri.radiology.uiowa.edu/visible_human_datasets.html '''Visible Human Project'''] shared by the University of Iowa. |
Latest revision as of 17:58, 10 July 2017
Home < Projects:RegistrationLibrary:RegLib C44Back to ARRA main page
Back to Registration main page
Back to Registration Use-case Inventory
Contents
v3.6.3 Slicer Registration Library Case 44: Visible Human Pelvis CT
Input
baseline image | follow-up |
Modules
- Slicer 3.6.3 recommended modules: BRAINSFit
Objective / Background
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.
Download
- Data
- Presets
Keywords
CT, pelvis, visible human, inter-subject
Issues Challenges
Input Data
- fixed: CT , 0.6 x 0.6 x 0.40 mm voxel size, axial; 292 x 292 x 91 unsigned short image
- moving: CT , 0.6 x 0.6 x 0.40 mm voxel size, axial; 512 x 512 x 107 unsigned short image
Overall Strategy
- Open case scene file or import image data: RegLib_C44_SlicerScene.mrml
- Overall strategy will be
- use vhm as fixed, vhf as moving volume
- because we're interested in the pelvic bone structure differences, we create a mask that will focus the registration on the skeletal region only.
- perform affine alignment
- using above affine alignment as starting point, perform low-level BSpline alignment
- To study the deformation only, extract the BSpline deformation from the transform, i.e. remove the affine portion. This can be done in a text editor, or by first resampling the vhf volume with the Affine before computing the BSpline.
- Visualize the deformation by applying the pure BSpline to a auxiliary grid image
- Change colormap of deformed grid (e.g. hot), window and level to view the gridlines of interest, and overlay on the grayscale images
Procedure / Pipeline
- Mask generation
- Go to the Editor module
- "Master Volume": select vhm
- A new labelmap "vhm-label" will be created
- Select "vhm" to be visible in the slice viewer
- Select the Threshold tool from the editor toolbar
- 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.
- Click Apply
- Morphologically clean the segmentation:
- Run a Median Filter with a 3x3x3 neighborhood to remove speckle noise
- Return to the Editor module and use the Change Island tool to remove the segmentation of the arms.
- Apply 2-3 rounds of morphological dilation to expand the region to include surrounding area.
- Rename the labelmap to "vhm_mask" or similar. You will find a "vhm_mask_dil" in the example dataset for comparison
- Repeat the above segmentation procedure for "vhf"
- Registration:
- 'Presets: for either of the registrations below, you can select the "BRAINSFit_...." presets from the parameter set menu instead of setting the parameters manually.
- Affine Registration
- Go to the BRAINSfit module
- select the following parameters:
- Fixed Image Volume: vhm Moving: vhf
- check boxes for Include Rigd registr. phase , Include ScaleVersor3D, include Affine
- Slicer Linear Transform: select "create new transform", rename to "Xf1_Affine" or similar
- leave rest at defaults. Click Apply
- registration should take ~ 10 secs.
- use fade slider to verify alignment; compare with result snapshots shown below. Alignment will not be perfect but should be better than before.
- BSpline Registration
- Go to the BRAINSfit module
- select the following parameters:
- Fixed Image Volume: vhm Moving: vhf
- Registration phases: from Initialize with previously generated transform', select "Xf2_..." node created before.
- Registration phases: check boxes for Include BSpline registration phase
- Output: Slicer BSpline transform: create new, rename to "Xf2_BSpline_msk" or similar
- Output Image Volume: create new, rename to "vhf_Xf2"; Pixel Type: "short"
- Registration Parameters: increase Number Of Samples to 200,000; Number of Grid Subdivisions: 7,7,7
- Control Of Mask Processing Tab: check ROI box, for Input Fixed Mask and Input Moving Mask select the two dilated labelmaps from above
- Leave all other settings at default
- click apply
Registration Results
unregistered
registered (affine)]
registered (nonrigid w/o masking)
registered (nonrigid+masking)
registered deformation only of vhf
deformation visualized by grid image overlay
Acknowledgments
Original CT from the Visible Human Project shared by the University of Iowa.