2010-06-28 158 views
1

请给我推荐一些圆形物体检测算法,例如 例如把CD放在书本下面,可以看到它的一部分。 所以算法应该能够从CD的部分检测到一个圆。或者它可以是一个放在另一个之上的盘子等等。 我试过opencv的Hough变换,但它并不总是检测到所有的圆圈,甚至有时会检测到错误的圆圈。圆形物体检测

回答

2

霍夫变换仍然是你最好的选择。你自己实现它,这很容易,那么你将更好地控制隐藏的参数(总是有一些)并理解它们的影响。你所描述的错误通常可以通过调整所有的常量和预处理来解决。解释here是相当不错的。

此外,请确保您对圆的半径设置合理的限制,否则您将检测到非常小的物体和大的直线为圆。从简单的案例开始(很少有噪音,只有几圈,每个圈子的很大一部分都可见),然后慢慢朝着目标迈进。