Projects:RegistrationLibrary:RegLib C41
From NAMIC Wiki
Home < Projects:RegistrationLibrary:RegLib C41
Back to ARRA main page
Back to Registration main page
Back to Registration Use-case Inventory
Contents
v3.6.3 Slicer Registration Library Case #41: Mouse Brain MRI control mice
Input
fixed image 1/target MRI mouse #1 |
moving image MRI mouse #2 |
Modules
- Slicer 3.6.1 recommended modules: BrainsFit, Editor, N4 Bias Correction
Objective / Background
Aim is to register the two brains of control mice to eachother.
Download
- DATA
- Documentation:
- See detailed pipeline with parameter settings below
Keywords
MRI, brain, mouse, masking, non-human, non-rigid,
Input Data
- reference/fixed MRI: 0.1 x 0.1 x 0.1 mm, 192 x 256 x 192
- moving MRI: 0.1 x 0.1 x 0.1 mm, 192 x 256 x 192
Registration Challenges
- The original images are not in standard RAS space, the orientation has axial and sagittal planes flipped
- target image content is of low intensity and small compared to the surrounding tissue, making masking essential
Key Strategies
- Slicer 3.6.1 recommended modules: BrainsFit
Procedures
- Phase I: Reorient to RAS space
- The original images have their header orientation info in a nonstandard form. As a consequence the image loads with sagittal and axial views switched. To fix we create a reorientation transform
- in the Data module, right click on the "Scene" node and select "Insert Transform" from the pulldown menu
- In the the MRML Node Inspector" below, rename the new transform to "Xf0_reorient" or similar.
- place/drag the image inside the transform node.
- go to the Transforms module & select "Xf0_reorient" from the menu
- change the identity matrix as shown in the image on the right. To modify an entry, select it via mouseclick, then hit ENTER.
- when finished the 3 views should show, axial, sagittal and coronal views respectively (see result images).
- save
- Phase II: Bias Field correction
- go to the N4 Bias Correction module
- select 11_5202 as input and create a new volume as output, renamed to 11_5202_b
- increase iteration parameters to 50,40,40
- click Apply
- repeat for second image 11_5221
- save
- Phase III - Part 1: Brain Segmentation
- to obtain a usable mask for both images we first need to segment the two brains. You can use the mask for the first to speed up the second.
- go to the Editor module and select the "Draw" tool
- in each slice, trace the brain contours and close with the ENTER key
- save when finished
- repeat for the second brain. You can save time by duplicating the first mask and then manually align it to roughly match the second. Then resample.
- Phase III - Part 2: Brain mask for registration
- It is useful for the registration mask to include the outer edges of the brain. Hence we enlarge the mask slightly to extend past this boundary
- Go to the Editor module, select the "Master" and "Label" volume as for above
- Click on the "Dilation" icon
- check the "8-neighbor" box
- click apply 2-3 times, wait each time for the process to finish and verify that the labelmap mask does indeed grow.
- repeat for the other volume
- save under new name "_mask_dilated.nrrd" etc.
- Phase IV: Affine Registration
- you may be able to skip this step and perform affine + nonrigid registration in one step, however the stepwise approach gives you more insight and control
- Go to the BRAINSFit module
- enter the following settings:
- Fixed Image: 11_5202, Moving Image: 11_5221
- Registration phases: check boxes for Include Rigid registration phase, Include Scale Versor3D registration phase Include Affine registration phase.
- Output: Slicer Linear transform: create new, rename to "Xf1_Affine"
- Registration Parameters: increase Number Of Samples to 200,000
- Registration Parameters: reduce "Transform Scale" to 400
- 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
- go to Data module. You should see the "11_5221" volume moved inside the "Xf1.." transform node
- Phase V: Nonrigid Registration
- Go to the BRAINSFit module
- enter the following settings:
- Fixed Image: 11_5202, Moving Image: 11_5221
- 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_BSpline5"
- Output Image Volume: create new, rename to "11_5221_Xf2"; Pixel Type: "short"
- Registration Parameters: increase Number Of Samples to 200,000; Number of Grid Subdivisions: 5,5,5
- 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
- Extend of nonrigid alignment will depend on the application. For better match the gridsize can be increased to 7x7x7 and higher, along with the number of sample points. Because larger grid sizes bear the risk of unstable and unfeasible deformations, an iterative approach with increasing DOF is recommended. Since the current version (3.6.1) of Slicer does not yet support concatenation of nonrigid transforms, such a stepwise approach implies multiple resampling of the moving volume and associated interpolation blurring.
Registration Results
shown are, from left to right, panels of axial, sagittal and coronal views.
original, not RAS
original,after reorientation into RAS
original, not registered
affine registered
registered brains after 5x5x5 nonrigid BSpline alignment
deformation visualized by grid overlay
Acknowledgments
Many thanks to Lili X. Cai from MIT for sharing the Data and registration problem.