用pycharm对图片进行灰度分析,要求平均灰度值图,灰度分布图,灰度等值轮廓线。求代码
时间: 2024-05-08 17:19:55 浏览: 101
Python2实现的图片文本识别功能详解
好的,我明白了您的要求,以下是代码:
```python
import cv2
import numpy as np
from matplotlib import pyplot as plt
# 读取图片
img = cv2.imread('image.png')
# 将图片转化为灰度图像
gray_img = cv2.cvtColor(img, cv2.COLOR_BGR2GRAY)
# 计算平均灰度值
mean_gray = cv2.mean(gray_img)[0]
# 绘制灰度分布直方图
hist = cv2.calcHist([gray_img], [0], None, [256], [0, 256])
plt.plot(hist, color='gray')
# 绘制灰度等值轮廓线
contours, _ = cv2.findContours(gray_img, cv2.RETR_TREE, cv2.CHAIN_APPROX_SIMPLE)
cv2.drawContours(gray_img, contours, -1, (255, 255, 255), 2)
# 显示结果
plt.imshow(gray_img, cmap='gray')
plt.title('average gray: {}'.format(mean_gray))
plt.xticks([]), plt.yticks([])
plt.show()
```
以上代码主要使用了OpenCV和Matplotlib库,可以对灰度图像进行平均灰度值图,灰度分布图,灰度等值轮廓线的分析。需要注意的是,需要将图片转化为灰度图像进行处理。
阅读全文