Hello,
mri_watershed was specifically designed for the skull-stripping of human
brain data. Not surprisingly, it might fail on hi-res monkey data.
However, here is a short watershed trouble shooting guide that might help
you find a valid set of options to successfully skull-strip your images.
Good Luck,
Best,
Florent
-----------------------------------------------------------
WATERSHED TROUBLESHOUTING GUIDE:
I am putting below some suggestions about how to find the correct set of
parameters without spending too much time on it. I think that there are
sufficient options to get a correct skull-stripping on almost every sca
ns.
Before getting into the details, you have to know that mri_watershed is a
pipelined process, composed of two main steps. The first one ends with the
first template smoothing and is composed of 3 substeps (watershed segmentation,
post-processing and first template smoothing). The second step corresponds to a
fine template deformation.
HOW TO PROCEED TO OBTAIN A VALID SKULL-STRIPPING (when it fails with the
default options):
* If the skull-stripping fails, my first suggestion is to try to understand why
it is failling. Rerun the mri_watershed program with the -surf_debug option,
which writes out two surfaces into the output volume (first template smoothing
and fine template deformation).
V
* Looking at the output, there are two possibilities: either the first step
fails (this corresponds to the first template smoothing, which is the exterior
surface into the output volume), or the second step fails (the fine template
deformation = the interior surface). Let's analyze the two cases separately:
1) Failing of the first segmentation step. This first step is the result of 3
pipelined sub-steps: watershed segmentation, post-processing and first template
smoothing. In order to fix the problem, there are a few choices about how to
proceed.
1-1) "I-am-feeling-lucky" choice: you might want to go down this path, if the
skull-stripping removed a few brain regions. The best option is probably to try
to add seed points in the excluded brain regions (with the -s option), even
though you could increase the preflooding height (-h option). In my experience,
there is no point in trying thousand of values for the preflooding height. A
couple of tries are sufficient. If it does not work for these, then, try with
more seed points...
1-2) "what-is-failling" approach: since the program fails during the first
step, it could come either from the watershed segmentation, or the
post-processing step, or the first template smoothing. One way to find out is
to first run the program with the option -wat and -n: this will stop the
program right after the watershed segmentation before the post-processing. If
the segmentation is already failing, try adding seed points with the option -s
or play with the preflooding height -h. In my experience, the best way to
quickly find the right set of parameters is to use seed points (potentially
lots of them). In order to find the right set of parameters, just run the
program with the options "-wat -n". This will be much faster. nce the right set
of parameters have been found, run the program with the "-n" option, as the
postprocessing step should be useless... If the program fails after the
watershed processing, then this means that the post-processing is probably
producing the errors. This is often resulting in too much tissue being
included. Simply run the program with the "-n" option.
2) In case of failure during the second step (fine surface deformation), you
have several option (most failures come from the first step).
2-1) if you think that the first step produced a correct segmentation, you can
directly stop the segmentation at this point with the -wat+temp option.
2-2) you think that the first step produced a good intialization for the brain
surface and that it needs to be refined a little: use the -first_temp option.
2-3) try the -atlas option that will incorporate shape information into the
deformation process and should give some correct results!
IN SUMMARY:
1) Try to understand what's happening with the option "-surf_debug"
2) Try the option "-atlas" if the program advises you to do so, or try it too
if you have time for it (~10 minutes)! "I usually skip this step".
3) Depending on what you see with the surf_debug option, you may try to correct
the watershed segmentation or the fine segmentation.
* To correct the watershed segmentation, you can:
- play with the preflooding height (use the -wat option to visualize the
result quickly, without having to run all the program).
- modify or suppress the post-watershed analysis mode (-n to suppress the
post_watershed analysis, -t to change the threshold used in the merging of the
basins).
- use some (lots of) seed points... THIS IS WHAT WORKS BEST AND QUICKLY.
IMPORTANT: In order to experiment with the options -n, -h, -s, don't forget to
run the program with the option -wat. (no need to run all the program).
SOME OTHER MODE ADVANCED TIPS:
o You can set the global parameters manually, if you think that the ones found
during the process are incorrect: this is the -man option. You would have to
precise the csf max, the transition intensity, and the gray matter intensity.
o The difference between -first_temp and -wat+temp is that the first option
will use the first surface to compute the local intensity values at the border
of the brain and then try to shrink it a bit. The second option -wat_temp will
only use the first surface and immediately segment the brain out.
PARTIAL LIST OF OPTIONS (command line: "mri_watershed -option")
Option -wat : option that stops the algorithm after the initial
watershed segmentation (the post-analyze segmentation is included).
Option -h hpf , with hpf an integer: modification of the preflooding
height used in the watershed segmentation. A typical value for hpf is 25
(corresponding to 25% of the maximal intensity); lower values tend to decrease
the size of the main basin (which could be infirmed by the post-analyze
process) and higher values increase its size. However, for any given image, the
preflooding height hpf can be varied over a certain range without significantly
changing the output.
Option -n : the post-analyze is not used with this option.
Option -t th, with th an integer: that option specifies the threshold
used in the post-watershed analysis. The default value is 100 (100%, meaning
that the threshold is exactly the cubic root of the size of the ambiguous
basin). A value of 0 will result in a post-watershed analysis that will merge
any ambiguous basin with the main one.
Option -wat+temp : with this option, only the watershed segmentation
and the first template deformation is used. This option could be typically used
when the image contains a lot of artifacts, resulting in a fine surface
segmentation that shaves some part of the cortex; in that extreme case, the
watershed segmentation may still lead to successful results and the first
template deformation to a valid brain segmentation.
Options -less or -more: option designed to increase or decrease the
transition threshold used in the fine surface. The result is respectively a
shrunk or expanded surface compared to the typical surface.
Option -surf_debug: this option will write out, into the output volume,
the localization of the different surfaces used during the algorithm; it will
enable the user to visualize the results of the different template
deformations, and eventually to detect, understand and correct some errors.
Option -s int_i int_j int_k : this option allows the user to add some
new seed points for the watershed process. This option is very useful when the
cerebellum is removed by the watershed segmentation, since a seed point inside
the removed cerebellum may be added, leading to the merging of the
corresponding basin with the main one. However, the atlas-based
validation-correction step should be sufficient to correct the segmentation.
Option -man int_CSF int_transition int_GM: this option allows the user
to manually set the parameters used in the fine surface deformation.
Option -surf surface_name: this option is used to generate tessellated
surfaces of the brain, inner and outer skull, and outer scalp from the
T1-weighted image. The brain surface is the one produced by the fine surface
deformatio n described. The outer scalp surface is generated by another surface
deformation. However, the MRI-based force is quite simple, since the scalp
appears bright on T1-weighted images. The deformation is initialized with a
radius set to include the whole head, and a series of iterative deformation
matches the surface onto the head scalp-skin. The outer and inner skull
surfaces are much harder to find, since the skull and the cerebrospinal fluid
look the same in these type of images (dark intensity). Besides, the skull may
contain some fat tissue that makes the border between the scalp and the outer
skull difficult to localize. For these reasons, the two surfaces, outer skull
and inner skull, are respectively interpolated from the outer scalp and brain
surface. They are a smoothed version of the corresponding surface that has been
respectively shrunk or expanded a few millimeters inwards or outwards (3 mm).
Option -brainsurf surface_name: that option writes out the final
tessellated brain surface.
Option -shk_br_surf hshk surface_name: this option writes out the
final tessellated brain surface that has been shrunk hshk mm inwards.
Option -LABEL: this option enables the user to obtain a labeled volume
into 5 classes: scalp, skull, csf, gray and white matter. First the whole
algorithm is run and the surfaces corresponding to the brain, outer scalp,
outer skull, inner skull are estimated. Based on the localization of these
surfaces, we label the volume into brain, scalp, skull, and csf ; then, the
brain segment is divided into gray an white matter based on the intensity
statistics calculated during the template deformation process.
Option -atlas: with that option, the program uses an atlas, compiled
from successfully segmented brains, in order to detect the rightness of the
surface, and to eventually correct it. That should solve some of the problems,
especially those when the cerebellum is removed (or part of it!).
Option -first_temp: with that option, the final deformation uses the
first template deformation as a starting point.
-------------------------------------
Florent Segonne
PhD Candidate
Stata Center 32-D430 CSAIL MIT
1 617 253 2986
http://people.csail.mit.edu/~fsegonne
-------------------------------------
On Thu, 5 May 2005, Bruce Fischl wrote:
Hi Flo,
could you send your watershed troubleshooting guide to the BWH folks (ccd) so
they can include it in the manual?
thanks,
Bruce
_______________________________________________
Freesurfer mailing list
Freesurfer@nmr.mgh.harvard.edu
https://mail.nmr.mgh.harvard.edu/mailman/listinfo/freesurfer