python opencv灰度直方图
时间: 2023-10-10 16:09:20 浏览: 172
Python OpenCV中的灰度直方图可以通过以下两种方法计算和绘制:
方法一:
```python
import cv2
import matplotlib.pyplot as plt
# 读取图像
img = cv2.imread('path_to_image', cv2.IMREAD_GRAYSCALE)
# 计算直方图
hist = cv2.calcHist([img], [0], None, [256], [0, 256])
# 绘制直方图
plt.plot(hist)
plt.xlabel('Pixel Value')
plt.ylabel('Frequency')
plt.title('Grayscale Histogram')
plt.show()
```
方法二:
```python
import cv2
import numpy as np
import matplotlib.pyplot as plt
def calcGrayHist(image):
# 计算灰度直方图
h, w = image.shape
grayHist = np.zeros([256], np.uint64)
for i in range(h):
for j in range(w):
grayHist[image[i][j]] += 1
return grayHist
# 读取图像
image = cv2.imread('path_to_image', cv2.IMREAD_GRAYSCALE)
# 计算直方图
hist = calcGrayHist(image)
# 绘制直方图
plt.plot(hist)
plt.xlabel('Pixel Value')
plt.ylabel('Frequency')
plt.title('Grayscale Histogram')
plt.show()
```
阅读全文
相关推荐


















