cv2.findContours的原理
时间: 2023-11-02 12:38:29 浏览: 217
cvFindContours
`cv2.findContours()` 是 OpenCV 中用于轮廓检测的函数,它可以检测输入图像中的所有轮廓。它的原理如下:
1. 输入二值化图像或灰度图像。
2. 执行二值化操作,将灰度图像转化为二值图像。
3. 执行轮廓检测算法,通过对像素值的分析,将图像中的所有轮廓提取出来。
4. 将轮廓转化为点集,即由一系列连续的像素点组成的轮廓线。
5. 将所有的轮廓存储在一个列表中,每个轮廓都是一个由像素点组成的点集。
在执行 `cv2.findContours()` 函数时,需要设置一些参数,包括输入图像、轮廓检测模式、轮廓逼近方法等。根据不同的参数设置,可以得到不同的轮廓结果。例如,可以设置轮廓检测模式为 RETR_EXTERNAL,表示只检测最外层的轮廓;可以设置轮廓逼近方法为 CHAIN_APPROX_SIMPLE,表示只存储轮廓的端点,从而节省存储空间。
阅读全文