[Insight-users] Re: centerline extraction with ridges

Luis Ibanez luis.ibanez at kitware.com
Fri Jul 16 11:30:09 EDT 2004


Hi Deliang,

Yes, it is possible to extend this basic framework
in order to extract centerlines in a 3D image.

You will have three main tasks to solve:

A) You will have to add more Gaussian derivative filters
    in order to compute all the second derivatives of your
    3D image.  In that way you will be able to have the
    Hessian Matrix for every pixel of the input image.

B) You need to implement a filter for computing the
    Eigen analysis of the Hessian image. That is, a
    filter that will take as input a 3D image where
    every pixel is a 3x3 matrix (corresponding to the
    Hessian of the input image at that homologous pixel).

    The output of this filter should be three images,
    one per each eigenvalue, and two vector images
    containing the two principal eigen vectors.  Note
    that you don't need the third eigen vector explicitly
    since it can be computed using the two other ones.
    (it is a trade of between memory allocation and
     computational load).


C) You need to redefine the criteria for constructing
    the parameters used in the Statistical Pattern
    Recognition stage. That's the stage described
    in the following link with a cluster of points and
    a pyramid as acceptance region.

    http://www.itk.org/HTML/Curve2DExtraction.htm

    The new criteria should include the properties
    of a 3D tube, namely that you will have two very
    similar large eigenvalues and a third one that
    is close to zero.


D) Once you construct the parametric space, you will
    have to explore it in order to identify the region
    of space where all the points associated to tubes
    in the original image end up being grouped in the
    parametric space.



You will find details about this in the literature,
in particular in the book by David Eberly

   D. Eberly, "Ridges in Image and Data Analysis",
   Kluwer Academic Publishers, 1996.

and in publications by various groups such as

    - S.Aylward and L.Bullitt,
    - A. Nobel
    - C. Toumoulin


Also, take into account that this process is quite
demanding both in memory allocation and in computational
time.

Most pragmatic implementations avoid to compute the
Hessian for the entire image. Instead, they perform
tube tracking and in that way the image derivatives
are computed only on the pixels that have good chances
of being part of a tube.


Regards,


    Luis


------------------
Deliang Ye wrote:

> Hi, Luis,
> 
> I saw there is an example of extracting 2D curve in ITK application -- 
> Curves2DExtractor. I would like to know if it is possible to extend it to 3D
> to extract centerline in 3D image space. I was supposed that it should be
> feasible, since ITK can handle N-D data, is it right? If so, could you give
> me some directions on this issue?
> 
> Appreciate you very much,
> 
> --Deliang
> 
> 





More information about the Insight-users mailing list