源码:
import cv2 as cv
import numpy as np
from matplotlib import pyplot as plt
def plot_demo(image):
# image.ravel()把image数组拉成一维数组。
plt.hist(image.ravel(), 256, [0, 256])
plt.show()
# 绘制图像直方图,可以用来找出图像的特征。
def image_hist(image):
color = ('blue', 'green', 'red')
for i, color in enumerate(color):
# cv.calcHist()返回的是每个像素值的像素点个数数组
hist = cv.calcHist([image], [i], None, [256], [0, 256])
plt.plot(hist, color=color)
plt.xlim([0, 256])
print(hist.shape)
plt.show()
print("----------Hello Python----------")
src = cv.imread("C:/cvtest/0000.jpg")
cv.namedWindow("input image", cv.WINDOW_AUTOSIZE)
cv.imshow("input image", src)
# plot_demo(src)
image_hist(src)
cv.waitKey(0)
cv.destroyAllWindows()