轮廓的矩形近似

时间:2013-02-10 06:16:52

标签: opencv contour

经过一些颜色检测,二进制阈值处理,并使用cvFindContours()并在我拥有的图像上绘制轮廓和检测到的蓝色矩形:

enter image description here

我的问题是避免一些简单的碰撞(中心的蓝色矩形不能碰到红色的“墙壁”)。对于我的目的,红墙轮廓与矩形近似是有帮助的。但是,使用简单的cvBoundingRect并在白色轮廓周围绘制红色矩形我得到:

enter image description here

边缘有点裁剪,但您可以使用轮廓的边界矩形来了解我们所期望的,因为整个轮廓用于近似矩形,因此是大的重叠矩形。我想要的是将墙面轮廓划分为多个边界矩形,例如左边墙壁近似为一个矩形,右边墙壁,前墙等等......如下面的说明性演示:

enter image description here

非常感谢任何帮助。

1 个答案:

答案 0 :(得分:1)

检测线(通常是Hough,RANSAC)以及您对此问题的其他一些信息应该足够,甚至可能过度杀伤。例如,从左下方的图像开始,我们得到右图所示的图像。

enter image description here enter image description here

但是如果左边有上面的图像(你应该已经有了),问题就已经解决了。只需绘制墙壁的内部和外部轮廓,就可以了。

相关问题