pycharm中findContours
时间: 2023-10-14 12:15:33 浏览: 62
findContours是OpenCV中的一个函数,用于在二值图像中查找轮廓。
在PyCharm中使用findContours需要先导入cv2模块:
```
import cv2
```
然后读入需要处理的二值图像(通常为灰度图像):
```
img = cv2.imread('binary_image.png', 0)
```
接下来调用findContours函数:
```
contours, hierarchy = cv2.findContours(img, cv2.RETR_TREE, cv2.CHAIN_APPROX_SIMPLE)
```
其中,第一个参数img是需要查找轮廓的二值图像,第二个参数cv2.RETR_TREE表示查找轮廓的模式,可以选择的参数有:
- cv2.RETR_EXTERNAL表示只查找最外层轮廓
- cv2.RETR_LIST表示查找所有轮廓,但不建立轮廓间的关系
- cv2.RETR_CCOMP表示查找所有轮廓,并建立两层轮廓间的层级关系
- cv2.RETR_TREE表示查找所有轮廓,并建立完整的轮廓层级关系
第三个参数cv2.CHAIN_APPROX_SIMPLE表示轮廓的近似方法,可以选择的参数有:
- cv2.CHAIN_APPROX_NONE表示不进行近似,保留所有轮廓点
- cv2.CHAIN_APPROX_SIMPLE表示对轮廓进行简化,只保留轮廓的拐点
最终返回的是一个包含所有轮廓信息的列表,每个轮廓是一个由点组成的数组,hierarchy则是轮廓之间的层级关系。可以使用cv2.drawContours函数将轮廓绘制在原图像上。
阅读全文