详细解析图像处理 直方图均衡化计算

什么是直方图均衡化

看一个图了解一下什么是直方图均衡化:
第一个图灰度都集中在左边,整体图像较暗
第二个图灰度都集中在右边,整体图像较亮
第三个图灰度都集中在中间,整体图像适中,但是雾蒙蒙的并不清晰
最后一个图是均衡化之后,让灰度相对均匀地占据各个灰度级,图片亮暗合理的同时也更清晰
在这里插入图片描述


例题计算

用个经典例子看一下计算:

假设有一幅图像,共有64×64个像素,8个灰度级,各灰度级概率分布见下表:
在这里插入图片描述

  • r k r_k rk:灰度级,比如0~255,本题中是0~8

  • n k n_k nk:整幅图像里有多少个像素属于该灰度级

  • p ( r k ) p(r_k) p(rk):每个灰度级的概率

    p ( r k ) = n k M N , k = 0 , 1 , 2 , ⋯   , L − 1 p\left(r_{k}\right)=\frac{n_{k}}{M N}, \quad k=0,1,2, \cdots, L-1 p(rk)=MNnk,k=0,1,2,,L1

    本题中 p ( r k ) = n k 64 × 64 , k = 0 , 1 , . . . , 7 p(r_k)=\frac{n_k}{64×64},k=0,1,...,7 p(rk)=64×64nkk=01...7

看一下现在的直方图,并不均衡。
在这里插入图片描述
现在进行均衡化:

原书的公式是 s k = T ( r k ) = ( L − 1 ) ∑ j = 0 k p ( r j ) = ( L − 1 ) M N ∑ j = 0 k n j , k = 0 , 1 , 2 , ⋯   , L − 1 s_{k}=T\left(r_{k}\right)=(L-1) \sum_{j=0}^{k} p\left(r_{j}\right)=\frac{(L-1)}{M N} \sum_{j=0}^{k} n_{j}, \quad k=0,1,2, \cdots, L-1 sk=T(rk)=(L1)j=0kp(rj)=MN(L1)j=0knj,k=0,1,2,,L1

这个公式其实可以拆开理解,先是对概率依次求和,再乘以灰度级范围(由于灰度级是0开始的所以是用L-1,本题中8个灰度级,L-1就是7)。
在这里插入图片描述
取整之后的值就是映射之后的坐标,也就是上面那个式子其实是计算了一个映射关系。

找到映射关系之后,把原来的概率挪过去就行了。

看下表,最后两个格子是拼色的。拿最后一个说一下,5,6,7都映射到7,那映射之后7的概率就是 P ( r 5 ) + P ( r 6 ) + P ( r 7 ) = 0.06 + 0.03 + 0.02 = 0.11 P(r_5)+P(r_6)+P(r_7)=0.06+0.03+0.02=0.11 P(r5)+P(r6)+P(r7)=0.06+0.03+0.02=0.11
在这里插入图片描述
而最后这个映射后的概率就是均衡化之后的值,用组值重新绘制直方图,就是均衡化之后的直方图。
在这里插入图片描述
在这里插入图片描述


参考书:
在这里插入图片描述


为什么要写这个文章呢,因为期末考试,图像处理最后一个是直方图均衡化,我会计算,但是我没画图。是来不及了吗,不是,是我自我怀疑,不确定图是不是那么画。离谱。

猜你喜欢

转载自blog.csdn.net/qq_36667170/article/details/122220368