如何在opencv中管理轮廓边界rect

时间:2012-12-12 12:48:01

标签: opencv

我一直在使用高斯状态模型测试背景减法。我正在使用opencv 2.1.0。我可以生成场景前景的二进制图像。现在,我想做的就是画画 计算边界矩形以突出移动对象。我用过cvCountourBoundingRect 获得覆盖countour的矩形。我遇到的问题是多重的 countour,有时候附近的矩形重叠。在这里,任何人都可以建议我防止 矩形重叠?在理想情况下,两个矩形不应重叠。相反 应画一个更大的直肠,覆盖所有两个矩形。

任何建议都会很棒。

1 个答案:

答案 0 :(得分:1)

在OpenCV中没有现成的可能性。但实际上算法非常简单:

  1. 遍历所有矩形并检查两个矩形是否相互重叠。本主题非常有用:Determine if two rectangles overlap each other?
  2. 对于每对重叠的矩形,创建包含它们的矩形。要做到这一点,你应该从第一个矩形中选择一个角,从第二个矩形中选择另一个角,这两个角将为你创建矩形。我不认为这是一项艰巨的任务 - 只是简单的数学。