OpenCV-40 绘制直方图

一、使用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-40 绘制直方图_第1张图片

二、使用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()

输出结果如下: 

OpenCV-40 绘制直方图_第2张图片

你可能感兴趣的:(OpenCV,opencv,人工智能,计算机视觉,numpy,python)