【发布时间】:2020-09-16 05:50:56
【问题描述】:
底部/顶部和左/右半径应该相同,但需要检查。这意味着 4 半径应该是我的代码的结果。我在油漆中做了以下操作,绿色圆圈应该给我顶部半径和红色左侧(右侧和底部未在此处绘制)。
我正在研究的想法是裁剪图像(左/右/上/下侧)并将裁剪后的图像近似为圆形。借助 cv2.findContours 功能,一些白色像素在此处被识别为突出显示。
有没有办法用这些给定的坐标从上面近似我绘制的红色圆圈?我在互联网上看到的问题都与我没有的给定中心点或角度有关。是否有一个 cv2 函数可以绘制仅具有某些给定坐标或类似坐标的圆?
【问题讨论】:
-
使用此函数:cv2.fitEllipse(points) 并传递轮廓点
-
在此处查看代码:github.com/AlliedToasters/circle-fit。使用 NumPy 编写自己的拟合算法实际上很容易……Minimum 封闭圆的问题在于,如果离群点远离实际边缘,它就不起作用