计算轮廓/面积的中心

时间:2009-06-09 05:39:22

标签: python image-processing opencv contour

我正在开发一个图像处理链,它按颜色和轮廓分离单个对象,然后计算该对象的y位置。

如何使用OpenCV计算轮廓或区域的中心?

Opencv链接:

2 个答案:

答案 0 :(得分:10)

首先计算Moments,可以获得y方向的质心。然后质心由yc = M01 / M00给出,其中M01和M00是Moments调用返回的结构中的字段。

如果您只想要边界矩形的中心,那么使用BoundingRect也很容易。这会返回一个CvRect,你只需要一半的高度。

如果这不够精确,请告诉我,我可以在某处找到示例代码。

答案 1 :(得分:-2)

我不确切知道OpenCV是什么,但我会建议:

选定的像素群在一个点上具有最大宽度 - w - 所以假设该区域具有w垂直的像素列。现在,我将根据列包含的像素数对列进行加权,并使用这些列权重来确定水平中心点。

相同的算法也适用于X中心。

相关问题