Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/299.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何在Python中查找二进制图像中的多个质心?_Python_Opencv_Computer Vision_Centroid - Fatal编程技术网

如何在Python中查找二进制图像中的多个质心?

如何在Python中查找二进制图像中的多个质心?,python,opencv,computer-vision,centroid,Python,Opencv,Computer Vision,Centroid,我知道OpenCV可以找到二值图像的质心,但是有没有任何现有的算法可以在二值图像中找到多个质心?例如,如果我将二值图像中检测到的质心数设置为4,我应该得到如下结果: 您可能希望将黑色人物的外部设为黑色,以便在黑色背景上只有4个白点。然而,这是没有必要的。然后,您可以获取轮廓并在每个轮廓上循环,找到具有特定区域范围的轮廓,然后找到每个质心。也可以使用连接的组件,这些组件也可以提供轮廓。前者可能更容易。有关这些方法,请参阅OpenCV文档和/或在本论坛中搜索示例。“多质心”的定义是什么?很难理解你想

我知道OpenCV可以找到二值图像的质心,但是有没有任何现有的算法可以在二值图像中找到多个质心?例如,如果我将二值图像中检测到的质心数设置为4,我应该得到如下结果:


您可能希望将黑色人物的外部设为黑色,以便在黑色背景上只有4个白点。然而,这是没有必要的。然后,您可以获取轮廓并在每个轮廓上循环,找到具有特定区域范围的轮廓,然后找到每个质心。也可以使用连接的组件,这些组件也可以提供轮廓。前者可能更容易。有关这些方法,请参阅OpenCV文档和/或在本论坛中搜索示例。“多质心”的定义是什么?很难理解你想在这里实现什么。related@fmw42我相信白点只是为了说明。其思想是拥有一个二元对象,并定义要为其计算的若干质心。如果这是一个像素图像,你可以执行一个聚类算法,比如k-means,并使用每个像素作为数据集的一个元素