繁体   English   中英

如何使用opencv检测模糊圆的中心

[英]how to detect center of a blurry circle with opencv

我有以下图片:

在此输入图像描述

图片上有曲线。 我想找到包含曲线的圆心。

我试过opencv和霍夫圈变换,但没有结果。

自然候选人将是cvHoughCircles 每条曲线的每个部分都为X/Y/R三联体添加了“投票”,用于识别中心点。 现在,你只有部分圈子,所以投票数量有限且准确度降低了,但你可能已经怀疑了。

这是我首先尝试的:

观察一下,如果从圆的真实中心绘制光线,则沿着它们的图像强度的局部最大值以与光线方向无关的间隔出现。 这些间隔是连续圆的半径长度之间的差异。

因此,修正一个数字或射线方向,比如在[0,pi]中等间距为16,并定义在中心的(xc,yc)坐标上参数化的成本函数,以及圆的ri半径,成本等于,例如,不同半径之间沿半径的最大位置的方差。

  • 阈值图像
  • 侵蚀它直到几乎没有噪音(小斑点)
  • 扩大它
  • 找到大blob。 如果仍有一些小斑点,请选择最大区域。
  • 使用cv :: moments找到它的质心

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM