图像处理-直方图均衡化

1、直方图均衡化

1.1 什么是直方图均衡化

直方图均衡化是将将图像中比较聚集的像素“打散”。

1.2 为什么要进行直方图均衡化

直方图均衡化的目的是采用映射关系,将图像中灰度值的范围扩大,增加原来两个灰度值之间的差值。比如说,灰度值120与121之间的差距不能通过肉眼观察出来,但是可以通过直方图均衡化将二者的差值扩大,就能分辨出来了。

1.3 怎样进行直方图均衡化

采用opencv提供的equalizeHist()方法。注意这里输入的图像为灰度图像。

2、案例分析

2.1 代码


def Equalization(image):
	
	#进行直方图均衡化
    Image = cv.equalizeHist(image)
    
    cv.imshow("image",image)
    cv.waitKey()
    
    cv.imshow("Image",Image)
    cv.waitKey()

    hist1 = cv.calcHist([image],[0],None,[256],[0,255])
    plt.subplot(1,2,1)
    plt.plot(hist1,'r')
    
    hist2 = cv.calcHist([Image],[0],None,[256],[0,255])
    plt.subplot(1,2,2)
    plt.plot(hist2,'b')
    plt.show()
    
    return

2.2 效果展示

2.2.1 原图

在这里插入图片描述

2.2.2 均衡化以后

在这里插入图片描述
是不是图像看起来更饱满了一点呢。

2.2.3 均衡化前后直方图变化

在这里插入图片描述

猜你喜欢

转载自blog.csdn.net/xdg15294969271/article/details/121237468