[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