<table cellspacing="0" cellpadding="0" border="0" ><tr><td valign="top" style="font: inherit;">Correction: <div>I meant to type "lose some valuable..."</div><div><br></div><div><br>--- On <b>Thu, 2/3/11, Dawood Masslawi <i><davoud_zzz@yahoo.com></i></b> wrote:<br><blockquote style="border-left: 2px solid rgb(16, 16, 255); margin-left: 5px; padding-left: 5px;"><br>From: Dawood Masslawi <davoud_zzz@yahoo.com><br>Subject: Re: Filling big 3D holes<br>To: "Gib Bogle" <g.bogle@auckland.ac.nz><br>Cc: insight-users@itk.org<br>Date: Thursday, February 3, 2011, 7:42 PM<br><br><div id="yiv1100461419"><table cellspacing="0" cellpadding="0" border="0"><tbody><tr><td valign="top" style="font:inherit;">Glad to help.<div><br><div>As you anticipated the indistinguishable intensity difference makes it harder to locate</div><div><br></div><div>the walls properly, for the same reason binary thresholding would not gain good
results</div><div><br></div><div>either. However, smoothing might improve the results depending on the extent of the gaps.</div><div><br></div><div>Smaller gaps can be filled using a smoothing approach prior to the segmentation. The </div><div><br></div><div>downside is that after the smoothing you might loose some valuable intensity difference.</div><div><br></div><div>Best of luck,</div><div><br></div><div>Dawood</div><div><br></div><div><br>--- On <b>Thu, 2/3/11, Gib Bogle <i><g.bogle@auckland.ac.nz></i></b> wrote:<br><blockquote style="border-left:2px solid rgb(16, 16, 255);margin-left:5px;padding-left:5px;"><br>From: Gib
Bogle <g.bogle@auckland.ac.nz><br>Subject: Re: Filling big 3D holes<br>To: "Dawood Masslawi" <davoud_zzz@yahoo.com><br>Cc: insight-users@itk.org<br>Date: Thursday, February 3, 2011, 6:55 PM<br><br><div class="yiv1100461419plainMail">Thanks very much Dawood. I've just scratched the surface of ITK, and I have a <br>lot to learn about this subject generally.<br><br>Currently I'm doing only a couple of simple preprocessing steps: a 3x3x3 mean <br>smoothing, then binary thresholding. I was previously experimenting with an <br>approach to fill gaps in the vessel walls. The idea was to determine the local <br>best fit plane (from a pre-specified set of 25 planes), then grow the wall into <br>the gap. This worked quite well in some areas, but not well in others (the <br>problem is that the "best plane" selection doesn't always make the right <br>decision). I've put that aside, and am now focussed on filling the leaky
<br>vessels,
with the expectation that the right method will stop filling at the <br>(convex) vessel boundary.<br><br>I'll read the docs on using a priori info for the geodesic active contour. <br>Richard has offered to have a look at my data, so it's fingers crossed.<br><br>Cheers<br>Gib<br><br>On 4/02/2011 11:55 a.m., Dawood Masslawi wrote:<br>> Hi Gib,<br>><br>> In addition to what Brian and Richard said, maybe using a different segmentation<br>> method<br>><br>> can improve the results altogether since you have no problems with<br>> small-diameter vessels<br>><br>> and your problem is with the vessels of large diameter, even when they would have no<br>><br>> holes. You haven't mentioned what segmentation method you use in your preprocessing<br>><br>> step, my suggestion is to incorporate a priori in the segmentation based on a<br>> initial<br>><br>> estimation of a binary edge image with its gaps filled (which
would be easier<br>> than filling the<br>><br>> gaps in a binary image). I think there are two segmentation methods already<br>> implemented<br>><br>> in ITK with the ability to incorporate a priori, geodesic active contour with<br>> shape guidance<br>><br>> and shape prior level set. Also, the Canny edge detector gives a good estimation<br>> of the<br>><br>> edges.<br>><br>> Regards,<br>><br>> Dawood<br>><br>><br>> >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>><<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<br>><br>>
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>><<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<br>><br>><br>> On Wed, Feb 2, 2011 at 10:28 PM, Gib Bogle<g.bogle at auckland.ac.nz <<a rel="nofollow" target="_blank" href="http://www.itk.org/mailman/listinfo/insight-users">http://www.itk.org/mailman/listinfo/insight-users</a>>> wrote:<br>>>/ I'm working with a volume image that was generated by labelling the laminae<br>> />/ of blood vessels. My aim is to segment out the vasculature. There are many<br>> />/ difficulties, and the particular issue I'm addressing at the moment is<br>> />/ filling in the vessels. The intensity of the labelling of the walls is<br>> />/ variable, with patches
that are
indistinguishable from background. The<br>> />/ vessel diameters vary widely, from about 4 to about 60 voxels. After some<br>> />/ preprocessing I have a binary image, on which the ITK hole-filling function<br>> />/ works well with the small-diameter vessels, but the big vessels present a<br>> />/ problem, even when the walls are "watertight" (i.e. without holes).<br>> />/<br>> />/ My best idea so far is to send probes out in all 26 directions (all<br>> />/ neighbours of a voxel) and count the number of probes that hit a wall within<br>> />/ a specified radius. It's tricky to specify both the radius and the critical<br>> />/ number of hits, without getting too many false positives (voxels outside the<br>> />/ vessels showing up as inside). (The filter is of course applied<br>> />/ iteratively.)<br>>
/>/<br>> />/ I'm wondering if anyone else here has addressed a similar problem.<br>> />/<br>> />/ Thanks<br>> />/ Gib/<br>><br>><br></div></blockquote></div></div></td></tr></tbody></table><br>
</div></blockquote></div></td></tr></table><br>