[Insight-users] itkHessian3DToVesselnessMeasureImageFilter false aura at the ends
Oleksandr Dzyubak
adzyubak at gmail.com
Wed Aug 19 19:17:53 EDT 2009
Dear users and developers,
I would greatly appreciate you advice / help.
Here is the problem.
I would like to use the 3D vesselness measure filters (based on Sato and
Frangi measures)
from the ITK library. These are good but can cause problems below.
1) Elongating the ends of the vessels.
2) Generating undesired spherical "bulbs" at the ends of vessels.
3) Generating undesired "voids" around the vessel intersections and
branching points.
As Robert Atwood advised, it can partially be solved
by using intensity values of the vessels in concert with the response
function.
Another option could be finding the reason(s) which might cause the
above problems.
I found that both Sato- and Frangi-based filters from the ITK stock
behave similar
in a sense mentioned above.
So I studied the RecursiveGaussian filter which is used to evaluate
the second order partial derivatives and found that actually that is the
one causing those effects.
To verify that, I downloaded "Generalized Computation of Gaussian
Derivatives Using ITK"
by Macia Ivan and gave it a try.
http://www.insight-journal.org/browse/publication/179
I generated Hessian and eigenvalues of the image and compared them
with the output from the RecursiveGaussian filter at the same scale, of
course.
OK. In terms of problems I mentioned, the filter by Macia Ivan perfomes
considerably better. However time efficiency kills the idea.
Ivan -- 400 min.
Recursive -- 44 min.
To make further test, I have two options.
1) Use images with Hessian components (six of them) already generated
by Ivan's filter and
somehow plug them into Vesselness filter.
Is there any easy way to make it happened?
2) Redesign the vesselness filters from the ITK lib so that it could use
Ivan's Hessians instead.
BTW, Ivan you enumerate Hessian compenents 0, 1,...5.
How does it match the RecursiveGaussian naming?
From the pictures I got, they are in a bit different order.
In fact, the Hessian_4 consists of zeroes. Is that just a coincidence?
All six images generated by the RecursiveGaussian filter are non-zero.
Any suggestion or help on that?
Regards,
Alex
Atwood, Robert (DLSLtd,RAL,DIA) wrote:
> Hi, Alex:
> I used that filter and observed that sort of effect (actually a
> decreased value at intersections in my case) but I understood it to be
> a consequence of the maths; these pixels satisfy the criteria, what I
> did was require a certain value in the original in combination with a
> certain value in the filtered result to accept pixels as belonging to my
> 'vessels', if the original value was quite high but 'vesselness' low
> then it could be a junction, if the original value too low then the
> pixel could be rejected even with a moderate "vessellness" value
>
> But, if this is the wrong approach I should like to know !
>
> Thanks
>
>
> Robert
>
>
> -----Original Message-----
> From: insight-users-bounces at itk.org
> [mailto:insight-users-bounces at itk.org] On Behalf Of Oleksandr Dzyubak
> Sent: 18 August 2009 00:23
> To: insight-users at itk.org
> Subject: [Insight-users] itkHessian3DToVesselnessMeasureImageFilter
> falseaura at the ends
>
>
> Dear community,
>
> I played with the itkHessian3DToVesselnessMeasureImageFilter class using
> the example from the ITK distro "VesselnessMeasureImageFilter.cxx"
> and found some side-effect.
>
> The filter produces false broadenings ("spherical auras") at the ends of
> vessels.
> In attachment I am sending the pictures to demonstrate the effect.
>
> Has anybody experienced similar effect?
> Is there any recipe to avoid/reduce this?
>
> Thanks,
>
> Alex
More information about the Insight-users
mailing list