Ask Your Question

Detecting thick edges

asked 2012-10-24 17:47:08 -0600

HugoRune gravatar image

updated 2020-11-30 03:26:22 -0600

How can I detect thick edges in an image, without detecting double edges?

How can I get from this image description

as close as possible to this:

image description

I realise why Canny, Sobel or Laplace will not work in this case. They will all find two edges, from black to white, and from white to black. If I only want to get one central edge, is there another approach I can use?

edit retag flag offensive close merge delete

2 answers

Sort by ยป oldest newest most voted

answered 2012-10-25 00:42:48 -0600

sammy gravatar image

There are at least a few possible solutions to your problem:

  • Morphological erosion. It will work as long as your original edges have almost the same thickness on the whole image. If they are thinner in one part, the thinner ones will get lost after erosion, while the thicker may be still too thick. The strong point is that it's easy and fast. In your case, it should work.
  • Skeletonization. Classical algorithm for thinning. It may be probably the best option for you. The problem is that it leaves some "moustaches" along the edges, and if the segmented image is noisy, the result is really bad. A mitigation of the problem is to morphologically open the image (dilate, then erode) after the segmentation.
  • Whatershed or regional max algorithms may give you some results. If you are a student, they would be a good opportunity to learn something new - no result guaranteed, though.
  • Pearling. I've read about some nice algorithms used for segmenting medical images, and they would fit you quite well. But you most probably will have to implement them from scratch - they are not very popular, and as I know, there is no open source implementation. But give google a chance before leaving. If you do it for your thesis, you'll surely impress.
  • Probably much more ways... these are just the first ones that came to my head.
edit flag offensive delete link more



Great link to pearling! I didn't know about that.

Ben gravatar imageBen ( 2012-10-25 05:31:37 -0600 )edit

Has anyone found any source code for Pealing?

Philip gravatar imagePhilip ( 2012-12-18 21:35:35 -0600 )edit

answered 2017-01-27 01:14:25 -0600

M Mahdi Chamseddine gravatar image

This is the updated link to Pearling. And in case it is moved again look for "Pearling: Stroke segmentation with crusted pearl strings" by B. Whited et al.

edit flag offensive delete link more


it will be greate if someone explain what does the patent mean?

sturkmen gravatar imagesturkmen ( 2017-09-06 11:31:40 -0600 )edit

Good to point out. The patent means that, in territories where the patent is granted, Siemens has obtained the exclusive right to use the algorithm they disclosed - for a period of 20 years. And they can sue you or require royalties if they catch you using this pearling algo. Look for "GIF patent" for an example of impact...

ivec gravatar imageivec ( 2018-12-07 00:39:15 -0600 )edit

thanks @ivec

sturkmen gravatar imagesturkmen ( 2018-12-07 00:44:20 -0600 )edit

Question Tools



Asked: 2012-10-24 17:47:08 -0600

Seen: 4,311 times

Last updated: Oct 25 '12