直方图均衡化与直方图规定化

一、认识图像

当我们面对图像的时候,我们面对的是抽象的矩阵,如下图,下面是0-255的灰度图像的表示,密密麻麻的

       那么我们做的直方图,其实就是对这些像素值的统计,如下图所示,其中Bin表示条数,数据和范围是对图的解释。

 

 

二、为什么要做直方图均衡化与直方图规定化?

在现实的拍摄过程中,很多视频都不清晰。从灰度级的角度看,这是由于其图像的灰度分布集中在较窄的范围内,导致了图像的细节不够清晰。为什么细节不清晰呢?因为灰度分布较窄时,在计算对比度的时候,对比度就很小,所以就不清晰。

为了使得图像变得清晰,那么就需要使得灰度值的差别变大,为了使得灰度值的差别变大,就意味着灰度分布就变的较宽,使得灰度值分布变得均匀,即在某个灰度级区间内,像素的个数分布大致相同,这样才能使得图像的对比度增强,细节变得清晰可见。
 

三、直方图均衡化(Histogram equalization)的原理

直方图是对图像像素的统计分布,它统计了每个像素(0到L-1)的数量。直方图均衡化就是将原始的直方图拉伸,使之均匀分布在全部灰度范围内,从而增强图像的对比度。直方图均衡化的中心思想是对图像进行非线性拉伸,把原始图像的的灰度直方图从比较集中的某个区域变成在全部灰度范围内的均匀分布。在一幅图像中,明亮图像的直方图倾向于灰度级高的一侧,灰暗图像的直方图倾向于灰度级低的一侧,如果一副图像占有全部可能的灰度级并且分布均匀,则这样的图像有高对比度和多变的灰度色调。直方图均衡化这种方法通常用来增加图像的局部对比度。所以这种方法对于图像前景和背景都太亮或者太暗的情况非常有用,使目标区域从背景脱离出来。
那么怎样才能使得新图像的直方图分布均匀呢?

我们的目的就是想找到这样的一种变换函数,使得变换后图像直方图分布均匀(这里的直方图都用灰度级的个数除以总像素个数,进行归一化。由于一幅图像是二维离散的数据,不利于使用数学的工具进行处理,在数字图像处理中,我们通常是采用连续的变量进行推导,最后在推广到离散的情况。

先推导连续的情况:

假设r和s分别是变换之前和变换之后的图像灰度级,r和s都进行了归一化的处理。假设变换函数为s=T(r),此变换公式满足0≤r≤1,0≤s≤1;当0≤r≤1时,T(r)是单调递增的。

 

 

 

离散形式的直方图均衡化

四、直方图规定化

前面介绍了直方图均衡化,但是这是一种通用的对比度提升方法,如果我们想把图像变换到指定的直方图就显得力不从心。所以就有了直方图规定化。它就是对原始图像做变换,使得变换后的图像的直方图跟我们规定的一样。

假设原始图像的像素值为r,概率密度为P(r);做直方图均衡化之后的灰度值为s,均衡化之后的概率密度为P(s);希望要的图像的概率密度为P(z),在此情况下,求得其像素值z。

实际上,规定化也是均衡化的一种,那么,就可以把均衡化的结果作为一种中间结果,建立起原始图像与固定化图像的一种桥梁。

具体步骤如下:

(1)首先对原始图像做直方图均衡化,得到每个像素s和累积分布T(s);

(2)根据需要的规定化直方图,求累积分布G(Z);

(3)显然,如果累积直方图中有0值,那么是不会分配像素值的,因为0乘以255还是零。

(4)对于每一个T(s)(假设其像素值为ss),找到在G(Z)中与其差值最小的那个G(z)值(假设对应的像素值为zz),那么规定化后就把ss变换为zz。

规定化操作的目的就是找到原始图像的像素sk到规定化后图像像素的zk之间的一个映射。有了上一步的等式后,可以得到sk=G(zk),因此要想找到sk想对应的zk只需要在z进行迭代,找到使式子G(zm)−sk的绝对值最小即可。 

参考

https://blog.csdn.net/u013066730/article/details/82969768

https://blog.csdn.net/zhangfuliang123/article/details/74170894

https://blog.csdn.net/aoulun/article/details/78816816

https://blog.csdn.net/qq_20823641/article/details/51932798

https://blog.csdn.net/guozhaokun001/article/details/81773499

 

  • 1
    点赞
  • 43
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值