直方圖均衡化


直方圖均衡化是一種簡單有效的圖像增強技術,將圖像的直方圖分布變成近似均勻分布,從而增強圖像的對比度,使色彩細節更豐富,多用於車牌識別、人臉識別場景(在論文里面數據預處理用的很多)


import cv2
import matplotlib.pyplot as plt

img = cv2.imread(r"image\lenacolor.png", cv2.IMREAD_GRAYSCALE)

# 設置rc參數顯示中文標題,設置字體為SimHei顯示中文
plt.rcParams['font.sans-serif'] = 'SimHei'
plt.rcParams['axes.unicode_minus'] = False

# 繪制灰度直方圖
# ravel()函數,將二維的圖像,轉化為一維的數組
plt.hist(img.ravel(), 256)
plt.xlabel("灰度級")
plt.ylabel("像素個數")
plt.title("灰度直方圖")

# 繪制均衡直方圖
# plt.figure()函數,創建自定義圖像
plt.figure()
equ = cv2.equalizeHist(img)
plt.hist(equ.ravel(), 256)
plt.xlabel("灰度級")
plt.ylabel("像素個數")
plt.title("均衡直方圖")
# 3.顯示灰度直方圖
plt.show()

cv2.imshow("original", img)
cv2.imshow("result", equ)

cv2.waitKey(0)
cv2.destroyAllWindows()

轉載來源 https://www.cnblogs.com/REN-Murphy/p/15323155.html


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM