[Insight-users] Speedimage for FastMarchingImageFilter

Bjorn Hanch Sollie bhs@pvv.org
Thu, 23 May 2002 13:28:40 +0200 (CEST)


On Thu, 23 May 2002, Nils Hanssen wrote:
> I am wondering myself what is the appropriate speed image for the
> fast-marching image filter.
> In the "ShapeDetection" example, a GradientRecursiveGaussianImageFilter is
> used in conjunction with some exponential damping.

The speed image is the gradient magnitude image (edge image of your
input image) scaled to values between 0 and 1.  The formula for
converting an edge image into a speed image to be used with the fast
marching filter is typically something like this:

  g(I) = 1 / (1 + |(nabla * G)(I)|)

or

  g(I) = exp(-|(nabla * G)(I)|)

where G is a Gaussian and I is the input image.

The input image is typically smoothed using a Gaussian, then the
derivative magnitude is computed, and the result is then scaled to
intensity values between 0 and 1.  The resulting image should contain
values close to 0 in regions with small variations in intensity and
values close to 1 in regions with rapid intensity changes.

The EdgePotentialImageFilter is supposed to do the former for you:

<URL:http://www.itk.org/Doxygen/html/classitk_1_1EdgePotentialImageFilter.html>

This filter didn't work too well the last time I tried it, but maybe
it has been fixed by now.  (Is that to be considered a bug report?)

Another way to do it is to use the following filters in the order they
are listed:

DiscreteGaussianImageFilter (smooth)
GradientMagnitudeImageFilter (compute gradient values)
multiplying the result with -1 (for exmaple by using image iterators)
ExpImageFilter (computes the exp(), obviously)

> In which correlation are the value in the speed image and the step the
> evolving front is going outwards within one timestep?

I'm not too familiar with the internals of the fast marching filter.
Perhaps someone else on this list would care to answer this question?

-Bjorn
-- 
The History of the Universe
Chapter 1: Bang!  Chapter 2: Sss...  Chapter 3: Crunch!
The End