图像直方图均衡化 Histogram Equalization
废话少说,直接上代码!
import numpy as np
import matplotlib.pyplot as plt
from skimage import data,exposure
img = np.array([[2, 14, 13, 14],
[13, 14, 2, 1],
[9, 4, 7, 9],
[5, 1, 9, 5]])
plt.figure("hist",figsize=(8,8))
arr = img.flatten()
plt.subplot(221)
plt.title('Original Image')
plt.imshow(img,plt.cm.gray)
plt.subplot(222)
plt.title('Histogram')
plt.hist(arr, bins=14, edgecolor='None',facecolor='red')
img1 = exposure.equalize_hist(img)
arr1 = img1.flatten()
plt.subplot(223)
plt.title('Image after equalizing')
plt.imshow(img1,plt.cm.gray)
plt.subplot(224)
plt.title('Histogram after equalizing')
plt.hist(arr1, bins=14, edgecolor='None',facecolor='red')
直方图均衡是为了均衡图像的直方图分布,从而提高图像的对比度