[Insight-users] distance to isosurface transform
Luis Ibanez
luis.ibanez at kitware.com
Mon Oct 8 09:31:39 EDT 2007
Hi Sam,
You can achieve the same goal by doing the following:
1) Take the image with the isosurface, and threshold it
using that Iso-value.
2) Take the binary image resulting from (1) and pass it
as input to the MaurerSignedDistanceImageFilter
The resulting image will be a distance map to the location
of the Iso-Surface.
If you only need the distance in a small boundary close
to the Iso-surface, you could use the same filter that
most LevelSet filters use for this purpose:
itkReinitializeLevelSetImageFilter
see its usage, for example, in the filter:
Insight/Code/BasicFilters/
itkBinaryMaskToNarrowBandPointSetFilter.h
Regards,
Luis
--------------------
Sam Preston wrote:
> Hi all,
>
> I've been looking for a filter that, for every point in the output
> image, will compute the euclidean distance to the nearest point on an
> isosurface of the input image. Actually, I don't need it for every
> point in the image, only for some arbitrary neighborhood around the
> isosurface. This is very similar to the
> IsoContourDistanceImageFilter, but I need the distance computed for a
> neighborhood greater than one pixel wide, and haven't found a filter
> that can perform this operation in ITK. I have a greyscale image, not
> a binary image, and need the distance to be sub-voxel accurate.
>
> If such a filter doesn't exist, my plan is to extract the
> marching-cubes mesh of the isosurface, and for a neighborhood around
> each pixel (where the neighborhood includes an intersection with the
> isosurface), find the nearest distance to any of the extracted
> triangles generated from cells in the neighborhood.
>
> Does such a filter already exist, and if not, is my implementation
> reasonable (even if not extremely fast)?
>
> Thanks,
>
> -Sam
>
More information about the Insight-users
mailing list