[ITK Community] Initialization of SparseFieldLevelSetImage filter is inaccurate?

Yves Frederix yves.frederix+itk at gmail.com
Fri Feb 28 07:36:12 EST 2014


Hi all,

While running some experiments with the
GeodesicActiveContourShapePriorLevelSetImageFilter I ran into
unexpected behavior. In particular, I ran the GAC filter for a number
of X steps, took the resulting LevelSet image and provided it as input
for a new instance of a GAC filter. After running this new filter
(with exactly the same settings as the first instance) over Y steps, I
noticed that there was a small difference in the result when comparing
this result to the result I would obtain by running another GAC filter
directly over (X+Y) steps. The differences are small, however, so I
wanted to check if this is expected (and unavoidable) behavior or if
this might be an indication of a problem somehow.

I did some debugging and found that the difference is introduced by
the SparseFieldLevelSetImageFilter when it is being asked to copy the
input image into the output image of the GAC filter and later when it
initializes this output image. This also means that it should be
possible to reproduce the problem by running the GAC filter for 0
iteration steps and comparing the images returned by gac->GetInput()
and gac->GetOutput(). Of course the images themselves should not be
equal, but the result after contouring each of them should be. I
checked this using ParaView and there were indeed visible differences.

In case this does sound like a bug, I can of course share my test code
should this be helpful.


Best regards,
Yves



More information about the Community mailing list