一、使用matplotlib画直方图
可以利用matplotlib把OpenCV统计得到的直方图绘制出来
示例代码如下:
import cv2
import matplotlib.pyplot as plt
lena = cv2.imread("beautiful women.png")
# 变为黑白图片
gray = cv2.cvtColor(lena, cv2.COLOR_BGR2GRAY)
print(gray)
# 统计直方图数据
plt.hist(gray.ravel(), bins=256, range=[0, 255])
plt.show()
输出结果如下:

二、使用OpenCV绘制直方图
示例代码如下:
import cv2
import matplotlib.pyplot as plt
# 使用OpenCV绘制直方图
histb = cv2.calcHist([lena], [0], None, [256], [0, 255])
histg = cv2.calcHist([lena], [1], None, [256], [0, 255])
histr = cv2.calcHist([lena], [2], None, [256], [0, 255])
plt.plot(histb, color="b", label="blue")
plt.plot(histg, color="g", label="green")
plt.plot(histr, color="r", label="red")
plt.legend()
plt.show()
输出结果如下:

使用Python库matplotlib和OpenCV绘制和分析图像直方图,
本文介绍了如何使用Python的matplotlib和OpenCV库来绘制和展示彩色图像的直方图,包括从BGR颜色空间转换为灰度图像,以及计算并可视化每个通道的直方图分布。
27万+

被折叠的 条评论
为什么被折叠?



