[Insight-users] Filling big 3D holes

Dawood Masslawi masslawi at gmail.com
Thu Feb 3 19:58:04 EST 2011


Correction: I meant to type "lose some valuable..."

--- On Thu, 2/3/11, Dawood Masslawi <masslawi at gmail.com> wrote:

From: Dawood Masslawi <masslawi at gmail.com>
Subject: Re: Filling big 3D holes
To: "Gib Bogle" <g.bogle at auckland.ac.nz>
Cc: insight-users at itk.org
Date: Thursday, February 3, 2011, 7:42 PM

Glad to help.
As you anticipated the indistinguishable intensity difference makes it harder to locate
the walls properly, for the same reason binary thresholding would not gain good results
either. However, smoothing might improve the results depending on the extent of the gaps.
Smaller gaps can be filled using a smoothing approach prior to the segmentation. The 
downside is that after the smoothing you might loose some valuable intensity difference.
Best of luck,
Dawood

--- On Thu, 2/3/11, Gib Bogle <g.bogle at auckland.ac.nz> wrote:

From: Gib
 Bogle <g.bogle at auckland.ac.nz>
Subject: Re: Filling big 3D holes
To: "Dawood Masslawi" <masslawi at gmail.com>
Cc: insight-users at itk.org
Date: Thursday, February 3, 2011, 6:55 PM

Thanks very much Dawood.  I've just scratched the surface of ITK, and I have a 
lot to learn about this subject generally.

Currently I'm doing only a couple of simple preprocessing steps: a 3x3x3 mean 
smoothing, then binary thresholding.  I was previously experimenting with an 
approach to fill gaps in the vessel walls.  The idea was to determine the local 
best fit plane (from a pre-specified set of 25 planes), then grow the wall into 
the gap.  This worked quite well in some areas, but not well in others (the 
problem is that the "best plane" selection doesn't always make the right 
decision).  I've put that aside, and am now focussed on filling the leaky 
vessels,
 with the expectation that the right method will stop filling at the 
(convex) vessel boundary.

I'll read the docs on using a priori info for the geodesic active contour. 
Richard has offered to have a look at my data, so it's fingers crossed.

Cheers
Gib

On 4/02/2011 11:55 a.m., Dawood Masslawi wrote:
> Hi Gib,
>
> In addition to what Brian and Richard said, maybe using a different segmentation
> method
>
> can improve the results altogether since you have no problems with
> small-diameter vessels
>
> and your problem is with the vessels of large diameter, even when they would have no
>
> holes. You haven't mentioned what segmentation method you use in your preprocessing
>
> step, my suggestion is to incorporate a priori in the segmentation based on a
> initial
>
> estimation of a binary edge image with its gaps filled (which
 would be easier
> than filling the
>
> gaps in a binary image). I think there are two segmentation methods already
> implemented
>
> in ITK with the ability to incorporate a priori, geodesic active contour with
> shape guidance
>
> and shape prior level set. Also, the Canny edge detector gives a good estimation
> of the
>
> edges.
>
> Regards,
>
> Dawood
>
>
>  >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>><<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<
>
> 
 >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>><<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<
>
>
> On Wed, Feb 2, 2011 at 10:28 PM, Gib Bogle<g.bogle at auckland.ac.nz  <http://www.itk.org/mailman/listinfo/insight-users>>  wrote:
>>/  I'm working with a volume image that was generated by labelling the laminae
> />/  of blood vessels.  My aim is to segment out the vasculature.  There are many
> />/  difficulties, and the particular issue I'm addressing at the moment is
> />/  filling in the vessels.  The intensity of the labelling of the walls is
> />/  variable, with patches that are
 indistinguishable from background.  The
> />/  vessel diameters vary widely, from about 4 to about 60 voxels.  After some
> />/  preprocessing I have a binary image, on which the ITK hole-filling function
> />/  works well with the small-diameter vessels, but the big vessels present a
> />/  problem, even when the walls are "watertight" (i.e. without holes).
> />/
> />/  My best idea so far is to send probes out in all 26 directions (all
> />/  neighbours of a voxel) and count the number of probes that hit a wall within
> />/  a specified radius.  It's tricky to specify both the radius and the critical
> />/  number of hits, without getting too many false positives (voxels outside the
> />/  vessels showing up as inside).  (The filter is of course applied
> />/  iteratively.)
>
 />/
> />/  I'm wondering if anyone else here has addressed a similar problem.
> />/
> />/  Thanks
> />/  Gib/
>
>









      


      
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://www.itk.org/pipermail/insight-users/attachments/20110203/404be939/attachment-0001.htm>


More information about the Insight-users mailing list