Difference between revisions of "Modules:MRIBiasFieldCorrection-Documentation-3.6"
From Slicer Wiki
Sylvainjaume (talk | contribs) (add figure to illustrate the effect of the module) |
Sylvainjaume (talk | contribs) (adding screenshots for the Slicer 3.6 documentation of the MRIBiasFieldCorrection module) |
||
Line 21: | Line 21: | ||
===Authors, Collaborators & Contact=== | ===Authors, Collaborators & Contact=== | ||
+ | {| | ||
+ | | | ||
* Sylvain Jaume: MIT CSAIL | * Sylvain Jaume: MIT CSAIL | ||
− | * Nicolas Rannou: ISEN | + | * Nicolas Rannou: ISEN IRISA |
− | * Ron Kikinis: | + | * Ron Kikinis: Harvard Medical School SPL |
* Contact: sylvain at csail.mit.edu | * Contact: sylvain at csail.mit.edu | ||
+ | |[[Image:MIT_NAMIC_Logo.png|thumb|280px|]] | ||
+ | |} | ||
+ | |||
+ | {| | ||
+ | | | ||
+ | * '''Step 1/24. Select input image:''' | ||
+ | ** '''Input Image:''' input image | ||
+ | ** '''Mask Image:''' label map providing an approximative segmentation of the ROI | ||
+ | ** '''Output Volume:''' corrected image | ||
+ | |[[Image:MRIBiasFieldCorrection_Slicer3.6_Documentation_01.png|thumb|280px|Step 1]] | ||
+ | |} | ||
+ | |||
+ | {| | ||
+ | | | ||
+ | * '''Step 2/24. Select mask image:''' | ||
+ | ** '''Input Image:''' input image | ||
+ | ** '''Mask Image:''' label map providing an approximative segmentation of the ROI | ||
+ | ** '''Output Volume:''' corrected image | ||
+ | |[[Image:MRIBiasFieldCorrection_Slicer3.6_Documentation_02.png|thumb|280px|Step 2]] | ||
+ | |} | ||
+ | |||
+ | {| | ||
+ | | | ||
+ | * '''Step 3/24. :''' | ||
+ | ** '''Input Image:''' input image | ||
+ | ** '''Mask Image:''' label map providing an approximative segmentation of the ROI | ||
+ | ** '''Output Volume:''' corrected image | ||
+ | |[[Image:MRIBiasFieldCorrection_Slicer3.6_Documentation_03.png|thumb|280px|Step 3]] | ||
+ | |} | ||
+ | |||
+ | {| | ||
+ | | | ||
+ | * '''Step 4/24. :''' | ||
+ | ** '''Input Image:''' input image | ||
+ | ** '''Mask Image:''' label map providing an approximative segmentation of the ROI | ||
+ | ** '''Output Volume:''' corrected image | ||
+ | |[[Image:MRIBiasFieldCorrection_Slicer3.6_Documentation_04.png|thumb|280px|Step 4]] | ||
+ | |} | ||
+ | |||
+ | {| | ||
+ | | | ||
+ | * '''Step 5/24. :''' | ||
+ | ** '''Input Image:''' input image | ||
+ | ** '''Mask Image:''' label map providing an approximative segmentation of the ROI | ||
+ | ** '''Output Volume:''' corrected image | ||
+ | |[[Image:MRIBiasFieldCorrection_Slicer3.6_Documentation_05.png|thumb|280px|Step 5]] | ||
+ | |} | ||
+ | |||
+ | {| | ||
+ | | | ||
+ | * '''Step 6/24. :''' | ||
+ | ** '''Input Image:''' input image | ||
+ | ** '''Mask Image:''' label map providing an approximative segmentation of the ROI | ||
+ | ** '''Output Volume:''' corrected image | ||
+ | |[[Image:MRIBiasFieldCorrection_Slicer3.6_Documentation_06.png|thumb|280px|Step 6]] | ||
+ | |} | ||
+ | |||
+ | {| | ||
+ | | | ||
+ | * '''Step 7/24. :''' | ||
+ | ** '''Input Image:''' input image | ||
+ | ** '''Mask Image:''' label map providing an approximative segmentation of the ROI | ||
+ | ** '''Output Volume:''' corrected image | ||
+ | |[[Image:MRIBiasFieldCorrection_Slicer3.6_Documentation_07.png|thumb|280px|Step 7]] | ||
+ | |} | ||
+ | |||
+ | {| | ||
+ | | | ||
+ | * '''Step 8/24. :''' | ||
+ | ** '''Input Image:''' input image | ||
+ | ** '''Mask Image:''' label map providing an approximative segmentation of the ROI | ||
+ | ** '''Output Volume:''' corrected image | ||
+ | |[[Image:MRIBiasFieldCorrection_Slicer3.6_Documentation_08.png|thumb|280px|Step 8]] | ||
+ | |} | ||
+ | |||
+ | {| | ||
+ | | | ||
+ | * '''Step 9/24. :''' | ||
+ | ** '''Input Image:''' input image | ||
+ | ** '''Mask Image:''' label map providing an approximative segmentation of the ROI | ||
+ | ** '''Output Volume:''' corrected image | ||
+ | |[[Image:MRIBiasFieldCorrection_Slicer3.6_Documentation_09.png|thumb|280px|Step 9]] | ||
+ | |} | ||
+ | |||
+ | {| | ||
+ | | | ||
+ | * '''Step 10/24. :''' | ||
+ | ** '''Input Image:''' input image | ||
+ | ** '''Mask Image:''' label map providing an approximative segmentation of the ROI | ||
+ | ** '''Output Volume:''' corrected image | ||
+ | |[[Image:MRIBiasFieldCorrection_Slicer3.6_Documentation_10.png|thumb|280px|Step 10]] | ||
+ | |} | ||
+ | |||
+ | {| | ||
+ | | | ||
+ | * '''Step 11/24. :''' | ||
+ | ** '''Input Image:''' input image | ||
+ | ** '''Mask Image:''' label map providing an approximative segmentation of the ROI | ||
+ | ** '''Output Volume:''' corrected image | ||
+ | |[[Image:MRIBiasFieldCorrection_Slicer3.6_Documentation_11.png|thumb|280px|Step 11]] | ||
+ | |} | ||
+ | |||
+ | {| | ||
+ | | | ||
+ | * '''Step 12/24. :''' | ||
+ | ** '''Input Image:''' input image | ||
+ | ** '''Mask Image:''' label map providing an approximative segmentation of the ROI | ||
+ | ** '''Output Volume:''' corrected image | ||
+ | |[[Image:MRIBiasFieldCorrection_Slicer3.6_Documentation_12.png|thumb|280px|Step 12]] | ||
+ | |} | ||
+ | |||
+ | {| | ||
+ | | | ||
+ | * '''Step 13/24. :''' | ||
+ | ** '''Input Image:''' input image | ||
+ | ** '''Mask Image:''' label map providing an approximative segmentation of the ROI | ||
+ | ** '''Output Volume:''' corrected image | ||
+ | |[[Image:MRIBiasFieldCorrection_Slicer3.6_Documentation_13.png|thumb|280px|Step 13]] | ||
+ | |} | ||
+ | |||
+ | {| | ||
+ | | | ||
+ | * '''Step 14/24. :''' | ||
+ | ** '''Input Image:''' input image | ||
+ | ** '''Mask Image:''' label map providing an approximative segmentation of the ROI | ||
+ | ** '''Output Volume:''' corrected image | ||
+ | |[[Image:MRIBiasFieldCorrection_Slicer3.6_Documentation_14.png|thumb|280px|Step 14]] | ||
+ | |} | ||
+ | |||
+ | {| | ||
+ | | | ||
+ | * '''Step 15/24. :''' | ||
+ | ** '''Input Image:''' input image | ||
+ | ** '''Mask Image:''' label map providing an approximative segmentation of the ROI | ||
+ | ** '''Output Volume:''' corrected image | ||
+ | |[[Image:MRIBiasFieldCorrection_Slicer3.6_Documentation_15.png|thumb|280px|Step 15]] | ||
+ | |} | ||
+ | |||
+ | {| | ||
+ | | | ||
+ | * '''Step 16/24. :''' | ||
+ | ** '''Input Image:''' input image | ||
+ | ** '''Mask Image:''' label map providing an approximative segmentation of the ROI | ||
+ | ** '''Output Volume:''' corrected image | ||
+ | |[[Image:MRIBiasFieldCorrection_Slicer3.6_Documentation_16.png|thumb|280px|Step 16]] | ||
+ | |} | ||
+ | |||
+ | {| | ||
+ | | | ||
+ | * '''Step 17/24. :''' | ||
+ | ** '''Input Image:''' input image | ||
+ | ** '''Mask Image:''' label map providing an approximative segmentation of the ROI | ||
+ | ** '''Output Volume:''' corrected image | ||
+ | |[[Image:MRIBiasFieldCorrection_Slicer3.6_Documentation_17.png|thumb|280px|Step 17]] | ||
+ | |} | ||
+ | |||
+ | {| | ||
+ | | | ||
+ | * '''Step 18/24. :''' | ||
+ | ** '''Input Image:''' input image | ||
+ | ** '''Mask Image:''' label map providing an approximative segmentation of the ROI | ||
+ | ** '''Output Volume:''' corrected image | ||
+ | |[[Image:MRIBiasFieldCorrection_Slicer3.6_Documentation_18.png|thumb|280px|Step 18]] | ||
+ | |} | ||
+ | |||
+ | {| | ||
+ | | | ||
+ | * '''Step 19/24. :''' | ||
+ | ** '''Input Image:''' input image | ||
+ | ** '''Mask Image:''' label map providing an approximative segmentation of the ROI | ||
+ | ** '''Output Volume:''' corrected image | ||
+ | |[[Image:MRIBiasFieldCorrection_Slicer3.6_Documentation_19.png|thumb|280px|Step 19]] | ||
+ | |} | ||
+ | |||
+ | {| | ||
+ | | | ||
+ | * '''Step 20/24. :''' | ||
+ | ** '''Input Image:''' input image | ||
+ | ** '''Mask Image:''' label map providing an approximative segmentation of the ROI | ||
+ | ** '''Output Volume:''' corrected image | ||
+ | |[[Image:MRIBiasFieldCorrection_Slicer3.6_Documentation_20.png|thumb|280px|Step 20]] | ||
+ | |} | ||
+ | |||
+ | {| | ||
+ | | | ||
+ | * '''Step 21/24. :''' | ||
+ | ** '''Input Image:''' input image | ||
+ | ** '''Mask Image:''' label map providing an approximative segmentation of the ROI | ||
+ | ** '''Output Volume:''' corrected image | ||
+ | |[[Image:MRIBiasFieldCorrection_Slicer3.6_Documentation_21.png|thumb|280px|Step 21]] | ||
+ | |} | ||
+ | |||
+ | {| | ||
+ | | | ||
+ | * '''Step 22/24. :''' | ||
+ | ** '''Input Image:''' input image | ||
+ | ** '''Mask Image:''' label map providing an approximative segmentation of the ROI | ||
+ | ** '''Output Volume:''' corrected image | ||
+ | |[[Image:MRIBiasFieldCorrection_Slicer3.6_Documentation_22.png|thumb|280px|Step 22]] | ||
+ | |} | ||
+ | |||
+ | {| | ||
+ | | | ||
+ | * '''Step 23/24. :''' | ||
+ | ** '''Input Image:''' input image | ||
+ | ** '''Mask Image:''' label map providing an approximative segmentation of the ROI | ||
+ | ** '''Output Volume:''' corrected image | ||
+ | |[[Image:MRIBiasFieldCorrection_Slicer3.6_Documentation_23.png|thumb|280px|Step 23]] | ||
+ | |} | ||
+ | |||
+ | {| | ||
+ | | | ||
+ | * '''Step 24/24. :''' | ||
+ | ** '''Input Image:''' input image | ||
+ | ** '''Mask Image:''' label map providing an approximative segmentation of the ROI | ||
+ | ** '''Output Volume:''' corrected image | ||
+ | |[[Image:MRIBiasFieldCorrection_Slicer3.6_Documentation_24.png|thumb|280px|Step 24]] | ||
+ | |} | ||
{| | {| |
Revision as of 03:46, 2 May 2010
Home < Modules:MRIBiasFieldCorrection-Documentation-3.6Return to Slicer 3.6 Documentation
Module Name
MRIBiasFieldCorrection
General Information
Module Type & Category
Type: CLI
Category: Filtering
Authors, Collaborators & Contact
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Module Description
The module filters the image to remove the intensity inhomogeneity due to the MRI image acquisition.
Usage
- Load the input dataset (Main menu: Add Volume)
- Create a Mask Volume using the Editor (Modules > Editor) (the Threshold tool should give a good result)
- Select the MRIBiasFieldCorrection module (Modules > Filtering > MRIBiasFieldCorrection)
- In the left panel, select the Input Volume
- Select the Mask Volume
- In the Preview Volume menu , select 'Create New Volume'
- Do the same for the Output Volume menu
- Modify the parameter values if desired (default values gave good results during our experiments)
- Click on Apply.
It took 32 min to process a 512x512x30 MRI volume on a MacBook laptop. To visualize the result:
- Deselect the Overlay volume,
- Select the input as Background volume and the output as Foreground volume.
- Go to Modules > Volumes
- Select the input volume, and write down the values for Window and Level
- Select the output volume, and apply the same values
- Move the lower left cursor in 'Manipulate Slice Views' between B (background) and F (foreground)
Tests
On the Dashboard, these tests verify that the module is working on various platforms:
- MyModuleTest1 MyModuleTest1.cxx
- MyModuleTest2 MyModuleTest2.cxx
Known bugs
Links to known bugs in the Slicer3 bug tracker
Usability issues
Follow this link to the Slicer3 bug tracker. Please select the usability issue category when browsing or contributing.
Source code & documentation
Links to the module's source code:
Source code:
Doxygen documentation:
More Information
Acknowledgment
This work has been supported by NA-MIC (PI: Ron Kikinis).
References
- A Nonparametric Method for Automatic Correction of Intensity Nonuniformity in MRI Data, J.G. Sled, A.P. Zijdenbos, and A.C. Evans, IEEE Transactions on Medical Imaging, 17(1):87–97, Feb 1998.
- Parametric Estimate of Intensity Inhomogeneities Applied to MRI, M. Styner, C. Brechbhler, G. Szekely, and G. Gerig, IEEE Transactions on Medical Imaging, 19(3):153–165, Mar 2000.
- N4ITK: Nick's N3 ITK Implementation For MRI Bias Field Correction, Tustison N., Gee J., Insight Journal, 2009.