直方图均衡化原理及计算

直方图均衡化是基于灰度直方图的图像增强的一种方法,还有另外一种方法是直方图规定化。

均衡化的目的是将原始图像的直方图变为均衡分布的的形式,将一非均匀灰度概率密度分布图像,通过寻求某种灰度变换,变成一幅具有均匀概率密度分布的目的图像

具体原理如下:

1、连续灰度级:

假定:r代表灰度级,P(r)为概率密度函数。r值已经过归一化处理,灰度值范围在[0,1]之间。r与P(r)之间的关系如下:

直方图均衡化原理及计算_第1张图片

                                                                             非均匀分布的连续灰度直方图

均衡化的目的是将上面的非均匀分布变成如下图所示的均匀分布:

直方图均衡化原理及计算_第2张图片

                                                                              均匀分布的连续灰度直方图

我们接下来要做的是要找到一种变换S=T(r)使直方图变平直,为使变换后的灰度仍保持从黑到白的单一变化顺序,且变换范围与原先一致,以避免整体变亮或变暗,需要有如下规定:

(1)在0 <= r <= 1中,T(r)是单调递增函数,且0 <= T(r) <= 1;

(2)反变换r=T^{-1}(s),T^{-1}(s)也为单调递增函数,且0 <= s <= 1。

直方图均衡化原理及计算_第3张图片

                                                                           直方图均衡化变换公式推导图示

 

 因为灰度变换不影响像素的位置分布,而且也不会增减像素数目,所以有如下的推导公式:

\int_{0}^{r}p(r)dr= \int_{0}^{s}p(s)ds=\int_{0}^{s}1\cdot ds=s=T(r)

T(r)=\int_{0}^{r}p(r)dr

 

 2、离散灰度级:

设一幅图像的像素总数为n,分为L个灰度级,其中:

n_{k}:表示第K个灰度级出现的个数。

p(r_{k})=n_{k}/n:第K个灰度级出现的概率。

(0<=r_{k}<=1, k=0,1,2,...,L-1),公式如下:

直方图均衡化原理及计算_第4张图片

计算的基本步骤如下:

(1)求出图像中所包含的灰度级r_{k},一般r_{k}都经过归一化处理,范围在[0,1]之间,也可以定在[0,L-1]之间。

(2)统计各灰度级的像素数目n_{k}(k=0,1,2,...,L-1)。

(3)计算图像直方图。

(4)计算变换函数,即:

直方图均衡化原理及计算_第5张图片

(5)用变换函数计算映射后输出的灰度级s_{k}

(6)统计映射后新的灰度级s_{k}的像素数目n_{k}

(7)计算输出图像的直方图。

根据上面推导出来的公式以及计算步骤,我们可以结合栗子来加深理解~~~

 

eg:设图像有64*64=4096的像素,有8个灰度级,灰度分布如下所示:

直方图均衡化原理及计算_第6张图片

由上图我们知道该图像的r_{k}n_{k}p(r_{k}),下一步我们要做的就是通过变换函数求s_{k},即:

s_{0}=T(r_{0})=0.19

s_{1}=T(r_{1})=0.19+0.25=0.44

s_{2}=T(r_{2})=0.19+0.25+0.21=0.65

...

依次可求得s_{3}=0.81s_{4}=0.89s_{5}=0.95s_{6}=0.98s_{7}=1.00

由于原图像的灰度级只有8级,变换之后的s_{k}只能选择最接近的一个灰度级,因此需要对s_{k}进行舍入处理,即上述步骤中的第五步,对每个s_{k}将以1/7为量化单位进行舍入运算,结果如下:

s_{0}=1/7s_{1}=3/7s_{2}=5/7s_{3}=6/7s_{4}=6/7s_{5}=1s_{6}=1s_{7}=1

根据舍入后的结果,我们可以得到均衡化后的灰度级仅有5个级别,分别是:

s_{0}=1/7s_{1}=3/7s_{2}=5/7s_{3}=6/7s_{4}=1

接下来我们就可以统计映射后新的灰度级s_{k}的像素数目n_{k},然后就可得到均衡化后的概率密度函数p(s_{k})
结合图来看可能更直观一点:

直方图均衡化原理及计算_第7张图片

均衡化后的直方图比较:

直方图均衡化原理及计算_第8张图片

应用到实际图像中:

直方图均衡化原理及计算_第9张图片

 

直方图均衡化原理及计算_第10张图片

均衡化前的图像和直方图:

直方图均衡化原理及计算_第11张图片

均衡化后的图像和直方图:

直方图均衡化原理及计算_第12张图片

 

最后总结:

直方图均衡化实质上是减少图像的灰度级来加大对比度,图像经均衡化处理之后,图像变得清晰,直方图中每个像素点的灰度级减少,但分布更加均匀,对比度更高。

但直方图均衡化技术仍存在如下缺点:

(1)将原始函数的累积分布函数作为变换函数,只能产生近似均匀的直方图。

(2)在某些情况下,并不一定需要具有均匀直方图的图像。

 

你可能感兴趣的:(数字图像处理,图像处理,图像增强,直方图均衡化)