import cv2
import numpy as np
import matplotlib.pyplot as plt
image = cv2.imread('image.jpg')
gray_image = cv2.cvtColor(image, cv2.COLOR_BGR2GRAY)
joint_hist = np.zeros((256, 256))
bins = np.linspace(0, 255, 256)
for i in range(gray_image.shape[0]):
for j in range(gray_image.shape[1]):
joint_hist[gray_image[i,j], gray_image[i,j]] += 1
plt.imshow(joint_hist, cmap='gray')
plt.show()