3

对于轮廓,作为“加入”的这种操作是否存在/合理?由于轮廓在平面上划定了某些区域,因此可以将多个轮廓合并为集合。

不是吗?

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

4

1 回答 1

6

是的,您可以合并(和相交、设置差异和对称差异)等高线。由于它们是 cv::Point 的向量,因此表示为多边形,因此您可以使用任何适合的算法/库。只需在 SO 中搜索多边形联合等。但 OpenCV 中还没有(还没有?)包含类似的东西。

OpenCV 中一种简单(但性能不是很好)的方法是创建两个黑色图像,每个轮廓一个,将每个轮廓绘制为白色并填充,然后在图像上使用按位或来获得联合图像。然后,您可以再次使用 cv::findContours 提取轮廓。其他操作(相交、设置差异和符号差异)可以相应地通过按位与、减法和加法+阈值来完成。

于 2013-06-18T14:18:04.317 回答