代码示例:
import cv2
import numpy as np
from matplotlib import pyplot as plt
# 读入图像
img1 = cv2.imread('image1.jpg')
img2 = cv2.imread('image2.jpg')
# 将图像转换为灰度图
gray_img1 = cv2.cvtColor(img1, cv2.COLOR_BGR2GRAY)
gray_img2 = cv2.cvtColor(img2, cv2.COLOR_BGR2GRAY)
# 计算直方图
hist_img1 = cv2.calcHist([gray_img1],[0],None,[256],[0,256])
hist_img2 = cv2.calcHist([gray_img2],[0],None,[256],[0,256])
# 绘制直方图
plt.subplot(2,2,1), plt.imshow(img1), plt.title('Image 1')
plt.subplot(2,2,2), plt.plot(hist_img1), plt.title('Histogram 1')
plt.subplot(2,2,3), plt.imshow(img2), plt.title('Image 2')
plt.subplot(2,2,4), plt.plot(hist_img2), plt.title('Histogram 2')
plt.show()
运行后将会分别显示两幅图像及其对应的直方图。可以通过比较直方图来判断两幅图像的相似度。