灰度直方图统计自己编写程序
时间: 2024-01-01 21:05:25 浏览: 44
好的,我可以帮你编写灰度直方图统计的程序。
灰度直方图统计的过程包括以下步骤:
1. 读取图像并将其转换为灰度图像。
2. 统计灰度直方图,即计算每个像素值的出现次数。
3. 绘制灰度直方图。
下面是Python代码实现:
```python
import cv2
import numpy as np
import matplotlib.pyplot as plt
def histogram_statistics(img):
# 将图像转换为灰度图像
gray = cv2.cvtColor(img, cv2.COLOR_BGR2GRAY)
# 计算灰度直方图
hist, bins = np.histogram(gray.flatten(), 256, [0, 256])
# 绘制灰度直方图
plt.figure(figsize=(10, 5))
plt.hist(gray.flatten(), 256, [0, 256], color='r')
plt.xlim([0, 256])
plt.show()
# 计算平均灰度值
mean_gray = np.mean(gray)
print('平均灰度值为:', mean_gray)
return hist, mean_gray
```
你可以将这段代码保存为一个Python脚本文件并在JupyterLab中调用。
在JupyterLab中打开一张图像并调用`histogram_statistics`函数即可实现灰度直方图统计,并显示灰度直方图和平均灰度值。