findContours函数的参数含义是什么?
时间: 2023-11-30 14:37:22 浏览: 140
findContours函数是OpenCV中用于检测图像轮廓的函数。它的参数含义如下:
1. 输入图像(input image):通常为二值图像,即只包含黑白两种颜色的图像。
2. 轮廓检测模式(contour retrieval mode):指定轮廓层级关系的检测模式,常见的模式包括RETR_EXTERNAL(只检测最外层轮廓)、RETR_LIST(检测所有轮廓,但不建立层级关系)等。
3. 轮廓近似方法(contour approximation method):指定轮廓的近似方法,常见的方法包括CHAIN_APPROX_NONE(保存所有轮廓的点)、CHAIN_APPROX_SIMPLE(仅保存轮廓的端点)等。
4. 轮廓输出(contours):用于存储检测到的轮廓,是一个包含多个轮廓的列表。
5. 层级输出(hierarchy):用于存储轮廓的层级关系,是一个包含四个整数的数组。
如果要求只检测最外层轮廓,可以将轮廓检测模式设置为RETR_EXTERNAL。
findContours函数的contours参数是一个列表,每个元素表示一个轮廓。每个轮廓由一系列点组成,可以通过contours[i]来访问第i个轮廓。每个轮廓的数据结构是一个包含多个坐标点的numpy数组。
以下是
相关问题
findContours函数参数
的含义是什么?
findContours是OpenCV中用于在二值图像中查找轮廓的函数。其参数含义如下:
- 输入图像:必须为灰度或二值图像。
- 轮廓检索模式:指定轮廓的检索模式。有RETR_EXTERNAL表示只检测最外层轮廓、RETR_LIST表示检测所有轮廓并将它们存储在列表中等模式可供选择。
- 轮廓近似方法:指定轮廓的近似方法。有CHAIN_APPROX_NONE和CHAIN_APPROX_SIMPLE等方法可供选择。
- 输出参数:用于存储检测到的轮廓信息。
- 起点偏移量:指定轮廓的起始位置。
轮廓检测函数cv2.findContours()的参数含义是什么?
函数cv2.findContours()是用于在二值图像中查找轮廓的函数,其参数含义如下:
- image:输入的二值图像,即要查找轮廓的图像。
- mode:轮廓检索模式,有四种可选模式:cv2.RETR_EXTERNAL表示只检测最外层轮廓,cv2.RETR_LIST表示检测所有轮廓并将其保存到列表中,cv2.RETR_CCOMP表示检测所有轮廓并将其组织为两级层次结构,cv2.RETR_TREE表示检测所有轮廓并将其组织为树形结构。
- method:轮廓逼近方法,有三种可选方法:cv2.CHAIN_APPROX_NONE表示存储所有的轮廓点,cv2.CHAIN_APPROX_SIMPLE表示仅存储水平、垂直和对角线方向的端点,cv2.CHAIN_APPROX_TC89_L1和cv2.CHAIN_APPROX_TC89_KCOS表示使用Teh-Chin链逼近算法。
- contours:输出参数,表示检测到的轮廓,每个轮廓都是一个Numpy数组。
- hierarchy:输出参数,表示轮廓的层次结构信息,每个轮廓都对应一个四元组(hierarchy[i], hierarchy[i][1], hierarchy[i], hierarchy[i]),其中hierarchy[i]、hierarchy[i]、hierarchy[i]和hierarchy[i]分别表示后一个轮廓、前一个轮廓、子轮廓和父轮廓的索引,如果没有对应的项,则为-1。
阅读全文