Ask Your Question

Circular Region of Interest before thresholding

asked 2014-10-27 14:52:09 -0500

updated 2015-10-13 08:09:21 -0500

I'm trying to detect a circular object in the middle of my images. Here is a sample image. The left half is the greyscaled and Gaussian blurred input image; the right half is the same image after Otsu thresholding. The tiny silver of shadow on the lower left corner is leading the Otsu threshold astray. Is there any way to set a circular region of interest so the corner noises can be avoided?

edit retag flag offensive close merge delete

2 answers

Sort by ยป oldest newest most voted

answered 2014-10-27 16:52:00 -0500

Hi! This problem is classical with global-threshold methods (like Otsu). It's a very difficult task, and to my knowledge, there is no general method to handle this case.

During my thesis, I developed an algorithm for binarization which was focused on text but you can try with your images here : demoFAIR.

As your images have a big amount of blur, I suggest you to use a very low value for K (for instance 0.07), or if you can try with images before you blurred them, it will probably have better results. Of course, I would be happy to give you more details if you think this method worth a try!

edit flag offensive delete link more

answered 2014-10-28 04:28:52 -0500

thdrksdfthmn gravatar image

I would suggest you an adaptive threshold. It is computing a threshold on regions and it will eliminate the problems of shadows. There are two types: Gaussian and K-Means. I would suggest you to try both of them to see which is better for your case. Here is the documentation on python, and here is the documentation for C++, you did not mentioned what you need.

edit flag offensive delete link more


The problem with such methods is the window size: taking a too small window will lead on a binary edge map (the interior of the circular object will be white), and taking a too big window will lead to the same problem than Otsu's method...

petititi gravatar imagepetititi ( 2014-10-28 16:17:21 -0500 )edit

How are your images? Are they having all the same size? If not, then there is a problem in choosing the kernel size, or if the object is not always having almost the same size in the image. Why do you need the binarization, for detection? Can't use that "edge detector" to find the object? Or another idea is to use an Adaptive Histogram Equalization (like CLAHE) and then the binarization

thdrksdfthmn gravatar imagethdrksdfthmn ( 2014-10-29 03:17:26 -0500 )edit

Question Tools


Asked: 2014-10-27 14:52:09 -0500

Seen: 811 times

Last updated: Oct 28 '14