[Insight-users] Fwd: Re: Filling big 3D holes

Gib Bogle g.bogle at auckland.ac.nz
Wed Feb 2 23:12:18 EST 2011


(sorry for forgetting to "reply-all")

-------- Original Message --------
Subject: Re: [Insight-users] Filling big 3D holes
Date: Thu, 03 Feb 2011 17:04:25 +1300
From: Gib Bogle <g.bogle at auckland.ac.nz>
To: Richard.Beare at ieee.org

Hi Richard,

If I understand you correctly, the problem with the alternate method you suggest
is that I cannot rely on the continuity of the vessel walls.  A vessel might be
locally continuous, but there are always going to be holes in the walls
somewhere in the vascular network, and some of the big vessels are riddled with
holes.

I spent some time trying to develop an algorithm for patching the gaps in the
walls.  It works quite well, but unless it patches all the gaps it still doesn't
enable application of a hole-filling algorithm based on connectivity.

Thanks
Gib

On 3/02/2011 4:49 p.m., Richard Beare wrote:
> Hi,
> There is a fillholes filter that is part of the binary attribute
> morphology contribution. Alternatively, you can build a hole filler
> using either connected component labelling or reconstruction
> approaches. If you start with your binary image, label the non edge
> intensity. Then throw away the label touching the image edge. The
> remaining blobs should be the interior or your arteries. Combine these
> with the original binary image to fill the holes.
>
> On Thu, Feb 3, 2011 at 2:28 PM, Gib Bogle<g.bogle at auckland.ac.nz>  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
>> _____________________________________
>> Powered by www.kitware.com
>>
>> Visit other Kitware open-source projects at
>> http://www.kitware.com/opensource/opensource.html
>>
>> Kitware offers ITK Training Courses, for more information visit:
>> http://www.kitware.com/products/protraining.html
>>
>> Please keep messages on-topic and check the ITK FAQ at:
>> http://www.itk.org/Wiki/ITK_FAQ
>>
>> Follow this link to subscribe/unsubscribe:
>> http://www.itk.org/mailman/listinfo/insight-users
>>


More information about the Insight-users mailing list