contours, h = cv2.findContours(dst.copy(), cv2.RETR_EXTERNAL, cv2.CHAIN_APPROX_SIMPLE)
时间: 2024-05-23 07:12:00 浏览: 13
这段代码使用 OpenCV 库中的 findContours 函数来查找图像中的轮廓。具体来说,它会接收三个参数:
- 第一个参数是处理后的二值图像,这里是 dst.copy()。需要注意的是,由于函数会修改输入的图像,因此我们使用 copy() 函数复制一份原图像的副本来保护原图像。
- 第二个参数是轮廓的检索模式,这里是 cv2.RETR_EXTERNAL。该模式表示只检测最外面的轮廓,忽略内部的孔洞。
- 第三个参数是轮廓的近似方法,这里是 cv2.CHAIN_APPROX_SIMPLE。该方法表示只保留轮廓的端点,抛弃其他中间点,从而压缩轮廓的数据量。
函数返回两个值:轮廓列表 contours 和 层级信息列表 h。轮廓列表包含了所有检测到的轮廓,每个轮廓用一个包含所有点坐标的 numpy 数组表示;层级信息列表包含每个轮廓的父子关系。具体可以参考 OpenCV 官方文档中有关 findContours 函数的介绍。
相关问题
contours, hierarchy = cv2.findContours(dst, cv2.RETR_EXTERNAL, cv2.CHAIN_APPROX_SIMPLE) ValueError: too many values to unpack (expected 2)
这个错误提示是说在使用cv2.findContours函数时期望返回两个值,但实际返回的值过多,导致无法解包。这通常是因为你的OpenCV版本与代码中的不兼容,可以尝试以下解决方法:
1. 检查OpenCV版本是否与代码中的版本相同,可以使用cv2.__version__查看版本号。
2. 尝试将函数返回的所有值都赋值给一个变量,如:contours, hierarchy, _ = cv2.findContours(dst, cv2.RETR_EXTERNAL, cv2.CHAIN_APPROX_SIMPLE)。其中下划线表示占位符,表示不需要的返回值。
3. 如果你使用的是OpenCV3或以上版本,可以使用cv2.findContours函数的第三个参数返回两个值,如:_, contours, hierarchy = cv2.findContours(dst, cv2.RETR_EXTERNAL, cv2.CHAIN_APPROX_SIMPLE)。
contours, hierarchy = cv2.findContours(dst, cv2.RETR_TREE, cv2.CHAIN_APPROX_SIMPLE)
这行代码使用OpenCV的函数`cv2.findContours()`来查找二进制图像`dst`中的轮廓(contours)和它们的层次结构(hierarchy)。函数的第一个参数是输入图像,第二个参数是轮廓检索模式,第三个参数是轮廓近似方法。
在这里,我们使用`cv2.RETR_TREE`作为轮廓检索模式,它会检测所有轮廓并重建轮廓之间的层次结构。第三个参数`cv2.CHAIN_APPROX_SIMPLE`是轮廓近似方法,它会压缩水平、垂直和对角线方向上的冗余点,从而节省内存空间。
相关推荐
![rar](https://img-home.csdnimg.cn/images/20210720083606.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![-](https://csdnimg.cn/download_wenku/file_type_column_c1.png)
![-](https://csdnimg.cn/download_wenku/file_type_column_c1.png)
![-](https://csdnimg.cn/download_wenku/file_type_column_c1.png)
![-](https://csdnimg.cn/download_wenku/file_type_column_c1.png)
![-](https://csdnimg.cn/download_wenku/file_type_column_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)