[Insight-users] outer surface extraction
Luis Ibanez
luis.ibanez at kitware.com
Mon Aug 2 23:39:15 EDT 2004
Hi Ruby,
1) ITK doesn't have many filters for generating triangulations.
You will find easier to perform the segmentation with ITK and
then convert the resulting binary mask to VTK in order to use
VTK contour filters for surface extraction.
2) You will find the code examples used for segmenting the
Visible Woman dataset under
InsightDocuments/SoftwareGuide/Cover/Source
3) You can also use the ITK plugins in VolView. In particular
ThresholdLevelSet, and confidence connnected run for
growing a region on the background of the image instead of
the tissue.
You can download the free version of VolView from
http://www.kitware.com/products/volview.html
It already has the binary version of the plugins.
You can download the source code of the plugins from
InsightApplications/VolviewPlugins
4) You can also try the following segmentation applications
in InsightApplications:
- FastMarchingLevelSet
- ShapeDetectionLevelSet
- SimpleLevelSetsExample
- ThresholdSegmentationLevelSet
- ThresholdSegmentationLevelSetFltkGui
Remember that for segmenting the skin, the easy way to go
is to segment the 'complement' of the head. That is, put
seed points outside the head and grow a region representing
the background of the head. Once you get this mask, you can
simply negate it and you will have a segmentation of the
head/skin.
5) If you data is too noisy you should first experiment with
denoising filters before applying registration filters.
Here are some filters that you want to try in your data:
- MedianImageFilter
- CurvatureAnisotropicDiffusionImageFilter
- GradientAnisotropicDiffusionImageFilter
- CurvatureFlowImageFilter
- BilateralImageFilter
Regards,
Luis
-------------------
Ruby Shamir wrote:
> Hi All,
>
> I am trying to get the 3D outer surface of the head from MRI scans.
>
> I have a 3D (very noisy) image of the head.
>
> To do so we tried 3 approaches:
>
> 1. Using VTK we cleaned the data and "shot" rays during bounding box and
> saved the closest intersection points.
> The cloud of points look pretty good. But we need a "good"
> triangulation for curvature calculation. (Delauny is not good for that
> for example).
>
> 2. Using MATLAB we segmented the outer surface slice by slice
> (automatic). However it is important to do this on 3D data since the
> result is noisy in the "z" direction (we smoothed it and it is till not
> good enough).
>
> 3. Therefore we are seeking for a 3D segmentation approach; threshold
> level set as Luis suggested us seems good.
>
> My questions are:
>
> 1. Does someone know a consistent triangulation method/implementation?
>
> 2. Does someone have a 3D segmentation of the outer surface examples
> (with complex objects and noisy data)?
>
> Thank you,
>
> (and sory for the long letter)
>
> Ruby
>
> _______________________________________________
> Insight-users mailing list
> Insight-users at itk.org
> http://www.itk.org/mailman/listinfo/insight-users
>
More information about the Insight-users
mailing list