直方图均衡化
基本原理
直方图
灰度级在区间[0,L-1]的数字图像的直方图是离散函数hrk=nk,其中rk是第k级灰度,nk是图像中灰度级为rk的像素个数,用图像中的像素总数除以它的每一个值,即可得到归一化的直方图,因此归一化的直方图由Prk=nnk给出,这里的k值取值范围为[0,L-1],简单来说,Prk给出了灰度级为rk发生的概率估值,一个归一化的直方图的所有概率估值为=之和为1。
均衡化
如果一幅图像的像素占有全部可能得灰度级并分布均匀,则这样的图像具有高对比度和多变的灰度色调,从而具有较好的视觉效果
主要思想是对图像进行非线性拉伸,使得图像中像素数量多的灰度级展宽,而像素数量少的灰度级缩减。这样,原本集中在较窄区间内的灰度值被均匀分布,从而增强了图像的整体对比度
步骤
- 计算累积直方图:首先统计图像中每个灰度级的像素数量,并计算其累积分布函数(CDF)。这个步骤确保了每个灰度级的概率被均匀分配
- 区间转换和归一化处理:将计算得到的CDF值进行区间转换和归一化处理,确保结果在合适的范围内。这一步是为了将原始图像的灰度级映射到新的灰度级,从而实现均衡化效果。
- 应用均衡化函数:使用计算得到的均衡化函数替换原始图像中的每个像素值,生成新的图像。这个过程使得图像的直方图变得更加均匀,从而增强了图像的对比度