如何在OpenCV中合并轮廓?

3

轮廓是否存在“合并”这样的操作?由于轮廓在平面上限定了一些区域,因此可以将多个轮廓联合为集合。

它们不是吗?

如果是,那么如何合并轮廓?

1个回答

7
是的,您可以合并(交集、集合差和对称差)轮廓。由于它们是cv :: Point向量,并且表示为多边形,因此可以使用适合该目的的任何算法/库。只需在SO上搜索多边形联合等即可。但是像这样的东西尚未包含在OpenCV中(可能)。
在OpenCV中一种简单(但不太有效)的方法是创建两个黑色图像,一个用于每个轮廓,将每个轮廓绘制为白色和填充,然后在图像上使用按位或运算符以获取联合图像。然后,您可以再次使用cv :: findContours提取轮廓。其他操作(交集、集合差和对称差)可以通过相应的按位与、减法和加法+阈值实现。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接