我试图找到一种方法来确定轮廓是否闭合,

但我使用的是 findContours 而不是 cvFindContours 所以我没有标志..

知道怎么做吗?

顺便说一句,我被要求找到轮廓中的循环数,

(意思是他自己划了多少次)。

单个轮廓是否可能有环?

如果是这样,任何想法如何找到有多少?

谢谢,

塔米尔。

最佳答案

我认为您无法使用 cvFindContours 检测具有交点的轮廓。如果这个函数返回有交点的轮廓,那么你可以确定这个轮廓是一个循环。如果轮廓有 1 个交点,例如想象轮廓对应于数字“8”,那么 cvFindContours 会返回 3 个轮廓,2 个圆和大的异常值。我认为你必须使用图论来完成这项任务。创建图,其中顶点是位于轮廓中的像素,图的边缘是图像中的相邻像素。比您可以在图中找到所有循环。

关于OpenCV : is a contour closed or not,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/6654381/

10-11 07:34