我想从二进制图像中获得圆的质心,但输出给出的质心不止一个。我正在使用来自 opencv 网络教程文档中关于图像时刻的代码并进行了一些修改。仅供参考,我正在使用 c++ API OpenCV。
输出是:
我希望,文本输出可能会从 3 个轮廓中给出 3 个质心,但现实是 7 个轮廓(轮廓 [0],...,轮廓 [6])。
哪个是质心?或者,圆形的轮廓区域是哪一个?
然后我修改了代码,删除了一些轮廓(因为真实的图片很噪点,我只想得到一些特定的轮廓,圆形,所以我必须删除其他的轮廓,比如线条和字符)使用:
contours.erase()
我只想从 100 到 500 之间的区域轮廓中获取质心。
但是,输出变得奇怪..
质心喜欢从它们的轮廓飞到任何地方。
然后,仍然有来自 5 个轮廓的 5 个质心(contours[0],...,contours[4])。
我必须做什么?我只想获得圆形的质心(高于数字 3)。我真的需要你的建议。非常感谢!:D
*对不起,我的英语不好..