opencv数据处理
时间: 2023-11-20 12:58:26 浏览: 23
以下是两个使用OpenCV进行数据处理的例子:
1.计算图像的平均值并进行二值化处理
```python
src = cv.imread('images\lena.jpg',cv.COLOR_BGR2GRAY)
gray = cv.cvtColor(src, cv.COLOR_BGR2GRAY)
h, w = gray.shape[:2]
m = np.reshape(gray, [1, w*h])#化为一维数组
mean = m.sum() / (w*h)
print("mean: ", mean)
ret, binary = cv.threshold(gray, mean, 255, cv.THRESH_BINARY)
cv.imshow('Binary',binary)
cv.waitKey(0)
cv.destroyAllWindows()
```
2.读取灰度图像并显示,按下S键保存图像并退出,按下ESC键退出
```python
import numpy as np
import cv2 as cv
from matplotlib import pyplot as plt
img=cv.imread('D:\image\lena.jpg',cv.IMREAD_GRAYSCALE)
cv.imshow('Lean',img)
k = cv.waitKey(0)
if k == 27: #等待按ESC键退出
cv.destroyAllWindows()
elif k == ord('s'): #等待按S键保存图片并退出
cv.imwrite('D:\image\newLena.jpg',img)
cv.destroyAllWindows()
```