open-discussion
open-discussion > RE: use the package of MRIcroGL in common python coding and problem about remove haze in scripting
Aug 3, 2020 04:08 PM | Chris Rorden
RE: use the package of MRIcroGL in common python coding and problem about remove haze in scripting
I assume you are using a recent version of MRIcroGL, e.g.
v1.2.20200707. The "View" menu has two options, "Remove Haze" and
"Remove Haze with Options". The latter shows an options window
where you set the threshold level, whether to smooth edges, and
whether to only extract the largest object. The former runs the
routine with the default options: threshold level 5, YES for smooth
edges and YES for only extract largest object.
Step 1, abcde refer to the 5 possible threshold levels (1..5). Note that "Level 3" uses the classical Otsu method for segmenting the image into two classes (e.g. black and white, as described in the wiki page). The other options separate the image into more classes (the multi-Otsu described on the SciKit page). For example, consider a T1-weigthed scan where looking at a histogram reveals roughly three class of brightness: dark (hard bone, air, csf), medium (gray matter, muscle, veins, soft bone) and bright (fat, white matter). For such an image, a two-level Otsu method may not reliably find a satisfactory threshold for dark versus other tissue, while a three-level classification would be a better fit.
While setting air to have a uniform dark value is useful for visualization and leads to smaller compressed file sizes, you need to think carefully regarding whether this is a method that you want to use earlier in an image processing pipeline. Specifically, the algorithm may not distinguish between different classes of dark tissue (e.g. air, bone, css for T1 scan). Further, mixture of gaussian methods for segmentation may assume an unrealistically narrow variance for dark tissues. Additionally, homogeneity bias correction methods may be deprived of useful variations in intensity. In general, I would most processing tools have numerous implicit assumptions for how an MRI scan appears. Therefore, unless you carefully inspect your pipeline, I would restrict the "remove haze" step to the final visualization step.
Step 1, abcde refer to the 5 possible threshold levels (1..5). Note that "Level 3" uses the classical Otsu method for segmenting the image into two classes (e.g. black and white, as described in the wiki page). The other options separate the image into more classes (the multi-Otsu described on the SciKit page). For example, consider a T1-weigthed scan where looking at a histogram reveals roughly three class of brightness: dark (hard bone, air, csf), medium (gray matter, muscle, veins, soft bone) and bright (fat, white matter). For such an image, a two-level Otsu method may not reliably find a satisfactory threshold for dark versus other tissue, while a three-level classification would be a better fit.
While setting air to have a uniform dark value is useful for visualization and leads to smaller compressed file sizes, you need to think carefully regarding whether this is a method that you want to use earlier in an image processing pipeline. Specifically, the algorithm may not distinguish between different classes of dark tissue (e.g. air, bone, css for T1 scan). Further, mixture of gaussian methods for segmentation may assume an unrealistically narrow variance for dark tissues. Additionally, homogeneity bias correction methods may be deprived of useful variations in intensity. In general, I would most processing tools have numerous implicit assumptions for how an MRI scan appears. Therefore, unless you carefully inspect your pipeline, I would restrict the "remove haze" step to the final visualization step.
Threaded View
Title | Author | Date |
---|---|---|
Lance Liu | Jun 26, 2020 | |
Chris Rorden | Jun 26, 2020 | |
Lance Liu | Jun 28, 2020 | |
Chris Rorden | Jun 28, 2020 | |
Lance Liu | Aug 2, 2020 | |
Chris Rorden | Aug 2, 2020 | |
Lance Liu | Aug 3, 2020 | |
Chris Rorden | Aug 3, 2020 | |
Chris Rorden | Jun 28, 2020 | |