直方图均衡化


直方图均衡化是一种简单有效的图像增强技术,将图像的直方图分布变成近似均匀分布,从而增强图像的对比度,使色彩细节更丰富,多用于车牌识别、人脸识别场景(在论文里面数据预处理用的很多)


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