Better results with Canny/Hough for circular particles

Johannes Schönberger jsch at demuc.de
Fri Dec 13 16:32:40 EST 2013


Hi,

do you really need the edges or what is the actual purpose? Maybe there are better methods other than canny to achieve it...

Am 13.12.2013 um 21:25 schrieb Adam Hughes <hughesadam87 at gmail.com>:

> Hi Dan,
> 
> Thanks for the quick reply.
> 
> I think that I can get better results if I tweak the parameters.  The threshold parameter intuitively makes sense, but I'll have to read a bit to get familiar with sigma and the algorithm in general.  Thanks for the explanation; it really helped.  I will try out the erosion as well.
> 
> PS, do you have any feelings towards the applicability of circular hough to my image?
> 
> On Friday, December 13, 2013 3:03:30 PM UTC-5, Dan Farmer wrote:
> Hi Adam, 
> 
> This can be the worst part of image processing, but I'm curious how 
> much you played with the parameters to Canny? You probably know this, 
> but canny already tries to close gaps (hysteresis thresholding). What 
> you want to do is try to lower the low_threshold parameter (values 
> above the high threshold value get initially labeled as edges, then it 
> looks for pixels that are connected to edge pixels and whose value is 
> > low_threshold to link the edges). 
> 
> An easy/basic way to get rid of small fragments would be to start with 
> morphological erosion. 
> 
> -Dan 
> 
> On Fri, Dec 13, 2013 at 11:47 AM, Adam Hughes <hughes... at gmail.com> wrote: 
> > Hi, 
> > 
> > I have several images of circular particles (see attached for an example) 
> > and I've been experimenting with automatic routines to find edges. 
> > 
> > I've found that with Canny, I can get really nice edges, but the edges are 
> > not always connected.  Thus, when I do fill-binary, many of my particles are 
> > not painted in due to slight breaks in the border returned by canny.  Is 
> > there an ideal way to fix this, either by connecting "almost" connected 
> > canny edges?  Additionally, what is the best way to filter out small 
> > fragments and/or non-circular edges? 
> > 
> > I've attached an image of the canny outlines; you can see that I obviously 
> > want to get rid some of the regions that aren't associated with any 
> > particles.  PS, the coloring of the outlines are based on the brightness of 
> > the image at that point underneath it, which has been hidden.  (Would be 
> > happy to share the function if anyone wants it). 
> > 
> > Lastly, I tried adapting the circular hough transform example: 
> > 
> > http://scikit-image.org/docs/dev/auto_examples/plot_circular_elliptical_hough_transform.html 
> > 
> > But struggled with setting it up, due to a naive understanding of the 
> > algorithm.  Given that my image has thousands of particles, but I know 
> > roughly the size distribution, would the circular hough transform be useful 
> > to me? 
> > 
> > Thanks 
> > 
> > 
> > -- 
> > You received this message because you are subscribed to the Google Groups 
> > "scikit-image" group. 
> > To unsubscribe from this group and stop receiving emails from it, send an 
> > email to scikit-image... at googlegroups.com. 
> > For more options, visit https://groups.google.com/groups/opt_out. 
> 
> -- 
> You received this message because you are subscribed to the Google Groups "scikit-image" group.
> To unsubscribe from this group and stop receiving emails from it, send an email to scikit-image+unsubscribe at googlegroups.com.
> For more options, visit https://groups.google.com/groups/opt_out.




More information about the scikit-image mailing list