opencv 轮廓返回值
时间: 2024-07-14 17:01:27 浏览: 118
OpenCV之图像轮廓
在OpenCV库中,轮廓(Contours)是处理图像二进制表示时的重要概念。当你对图像应用边缘检测算法(如Canny算子或阈值分割)后,轮廓函数`cv.findContours()`会查找并返回图像中的边界线或闭合区域。这个函数通常返回三个值:
1. **contours**: 主要的结果,是一个存储了所有轮廓的Mat矩阵,每个轮廓由一系列顶点(x,y坐标对)构成,按照轮廓的外部边界顺序排列。
2. **hierarchy**: 这个可选值包含了轮廓之间的层次信息,包括它们的关系,比如是否属于同一个物体的不同部分或者彼此相邻。它是一个嵌套的数组结构,包含四个级别的链接关系。
3. **ret**: 返回值,通常设置为0,表示操作成功;如果不是0,则可能有错误发生,需要检查具体错误码。
你可以遍历`contours`矩阵来获取每个轮廓的数据,并通过`hierarchy`来了解不同轮廓之间的层次关系。这对于形状分析、物体识别等计算机视觉任务非常有用。
阅读全文