Description |
This toolbox implements an energy-based segmentation algorithm that uses
finite-difference based level set evolution. (See [1], [2]).
Multiscale control of the curve evolution is implemented -- this greatly reduces
the sensitivity to initialization as well as improves the execution speed
by factors of 10-1000 and even more([3]).
Given a segmentation problem, one can use this GUI in order to find the
proper parameters that will yield the desired partition for the class of images used.
The functions in the toolbox can be then re-used for a scripting algorithm, if desired.
NOTE:
This is not a full multigrid algorithm, the scale navigation is provided in 'manual'
mode, for "image learning". Once you get the hang of it, you can then code that
bit in. On the same line, the error is calculated and shown, but no decision is
taken, the iteration control is also left on "manual".
For details on the algorithm see the references at the end.
From the GUI one is able to:
- load data and save intermediate states using the Load/Save menu
- choose the segmentation parameters (Mu, Lambda+, Lambda- , dt, Nu)
- iterate(relax) a chosen number of steps
- prolong, restrict, redistance the level set
- visualise the current solution
- inspect the error (and more goodies as error function gradient, residue, etc.)
- set various options (levelset initialization style, regularization, scale depth, #steps)
For more details on the interface and implementation see the appropriate help sections in the GUI.
References:
-----------
[1] R. J. LeVeque - "Finite Difference Methods
for Differential Equations" September, 2005
[2] T. Chan and L. Vese, "Active contours without edges"
IEEE Trans.Img.Proc., vol. 10, pp. 266–277, 2001.
[3] W. L. Briggs, V. Emden Henson, S. F. McCormick
"A Multigrid Tutorial", SIAM, Philadelphia, 2001. |