python灰度直方图统计及显示
时间: 2024-02-06 08:12:03 浏览: 104
好的,下面是Python灰度直方图统计及显示的代码示例:
```python
import cv2
import matplotlib.pyplot as plt
# 读取灰度图像
img = cv2.imread('image.jpg', 0)
# 统计灰度直方图
hist, bins = cv2.calcHist([img], [0], None, [256], [0, 256])
# 显示灰度直方图
plt.plot(hist)
plt.show()
```
以上代码中,使用OpenCV库中的`cv2.imread()`函数读取一张灰度图像,并使用`cv2.calcHist()`函数统计灰度直方图。最后使用`matplotlib`库中的`plot()`函数显示灰度直方图。
相关问题
python 灰度直方图
灰度直方图是对图像中每个灰度级出现的频率进行统计的图表。直方图均衡化是一种能够通过调整图像灰度级的分布来增强图像对比度和灰度色调变化的方法。在Python中,可以使用skimage库的exposure模块来计算和展示灰度直方图。
以下是一个示例代码,展示了如何使用skimage库计算和展示灰度直方图:
```
from skimage import data, exposure
import matplotlib.pyplot as plt
# 读取图像
img = data.moon()
# 计算直方图
hist, bins = exposure.histogram(img)
# 绘制直方图
plt.plot(bins, hist, color='red')
plt.xlabel('灰度级')
plt.ylabel('频率')
plt.title('灰度直方图')
plt.show()
```
通过上述代码,我们可以得到图像的灰度直方图。该直方图显示了图像中每个灰度级的出现频率。
利用python对指定图片进行灰度直方图统计
可以使用Python的Pillow库来实现对指定图片的灰度直方图统计。以下是一个示例代码:
```python
from PIL import Image
import matplotlib.pyplot as plt
# 打开图片
img = Image.open('example.jpg')
# 将彩色图片转换为灰度图片
gray_img = img.convert('L')
# 统计灰度直方图
histogram = gray_img.histogram()
# 显示直方图
plt.plot(histogram)
plt.show()
```
在上述代码中,我们首先打开了一张名为"example.jpg"的图片,并使用`convert()`方法将其转换为灰度图片。接着,我们使用`histogram()`方法统计了灰度直方图,并将其存储在一个列表中。最后,我们使用Matplotlib库将直方图绘制出来。
注意:在运行代码之前,请确保已经安装了Pillow和Matplotlib库。
阅读全文