用于圆圈识别的快速Java库

我正在寻找一个用于在提供的位图中进行圆形识别的Java库。 我的Java知识太基础了,无法实现,例如。 Hough变换有效(Java新手)。

谢谢!

您可能想要查看ImageJ中的实现,请参阅此处

很抱歉在事实发生多年之后发布了这个答案,但是这个问题在2012年再次被问到,然后因为重复而被关闭。 正如我在回答这个副本时所说的那样,我认为这里给出的答案对于这样一个简单的问题来说是过度的,所以我的解决方案更简单:

  • 找到所有连接的绿色斑点。 这不是完全无足轻重的,但也不是那么难。
  • 对于每个斑点,找到具有最小x坐标的点和具有最大x坐标的点,并在y中执行相同的操作。 然后,您可以轻松获得blob边界框的尺寸。 如果x和y尺寸不同,则表示没有圆圈。 但是,您应该允许一些小的差异,因为绘制带有像素的圆将导致不完美的圆。
  • 最后,如果你有一个圆,边界框的中心是(大约)圆的中心,半径是边界框宽度的一半。 您可以绘制这样一个圆圈,看看有多少绿色像素适合您的圆圈。 同样,你必须考虑到一些不完善之处。