views:

55

answers:

2

please suggest me some algorithms for circular object detection, for example a CD is placed under the book, and some part of it can be seen. So the algorithm should be able to detect a circle from the part of the CD. Or it can be a plates placed one above another and so on. I tried opencv's Hough transform, but it do not always detects all of the circles and even sometimes detects false circels.

+2  A: 

Hough Transform is still your best bet. Implement it yourself, it's really easy, then you will have better control over the hidden parameters (there always are some) and understanding of their influence. The errors you describe are usually solvable with some tweaking of all the constants and preprocessing. The explanation here is pretty good.

Also, make sure you place reasonable limits on the circle radius, otherwise you will detect both very small objects and large straight lines as circles. Start with simple cases (little noise, only a few circles, large part of each circle visible) and then move slowly towards your goal.

AVB