用python语言使用opencv库提取图片轮廓并计算宽度和面积
时间: 2023-02-23 12:25:29 浏览: 121
基于opencv轮廓提取函数
5星 · 资源好评率100%
使用 Python 语言和 OpenCV 库提取图片轮廓并计算宽度和面积的步骤如下:
1. 加载图片:使用 OpenCV 库中的 imread 函数加载图片,代码如下:
```python
import cv2
img = cv2.imread("image.jpg")
```
2. 将图片转换为灰度图:在提取轮廓之前,我们需要将图片转换为灰度图,代码如下:
```python
gray = cv2.cvtColor(img, cv2.COLOR_BGR2GRAY)
```
3. 对图片进行二值化:为了使轮廓更清晰,我们需要对图片进行二值化,代码如下:
```python
thresh = cv2.threshold(gray, 127, 255, cv2.THRESH_BINARY)[1]
```
4. 提取轮廓:使用 OpenCV 库中的 findContours 函数提取图片的轮廓,代码如下:
```python
contours, _ = cv2.findContours(thresh, cv2.RETR_EXTERNAL, cv2.CHAIN_APPROX_SIMPLE)
```
5. 计算宽度:通过计算轮廓的左右端点的距离来计算宽度,代码如下:
```python
for cnt in contours:
x, y, w, h = cv2.boundingRect(cnt)
width = w
```
6. 计算面积:使用 OpenCV 库中的 contourArea 函数计算轮廓的面积,代码如下:
```python
for cnt in contours:
area = cv2.contourArea(cnt)
```
这就是使用 Python 语言和 OpenCV 库提
阅读全文