【数字图像处理】直方图处理

灰度直方图

灰度直方图是灰度级的函数,描述的是图像中具有该灰度级的像元的个数。确定图像像元的灰度值范围,以适当的灰度间隔为单位将其划分为若干等级,以横轴表示灰度级,以纵轴表示每一灰度级具有的像元数或该像元数占总像元数的比例值,做出的条形统计图即为灰度直方图。

如下图所示,做直方图的过程:

【数字图像处理】直方图处理

直方图的性质:

  1. 直方图反映了图像中的灰度分布规律。它描述每个灰度级具有的像元个数,但不包含这些像元在图像中的位置信息。
  2. 任何一幅特定的图像都有唯一的直方图与之对应,但不同的图像可以有相同的直方图。
  3. 如果一幅图像有两个不相连的区域组成,并且每个区域的直方图已知,则整幅图像的直方图是该两个区域的直方图之和

直方图的应用

  1. 对于每幅图像都可做出其灰度直方图。
  2. 根据直方图的形态可以大致推断图像质量的好坏。由于图像包含有大量的像元,其像元灰度值的分布应符合概率统计分布规律。假定像元的灰度值是随机分布的,那么其直方图应该是正态分布。
  3. 图像的灰度值是离散变量,因此直方图表示的是离散的概率分布。若以各灰度级的像元数占总像元数的比例值为纵坐标轴做出图像的直方图,将直方图中各条形的最高点连成一条外轮廓线,纵坐标的比例值即为某灰度级出现的概率密度,轮廓线可近似看成图像相应的连续函数的概率分布曲线

【数字图像处理】直方图处理

【数字图像处理】直方图处理


直方图的用途

  1. 数字化参数:可用来判断一幅图像是否合理地利用了全部被允许的灰度级范围。一幅图像应利用几乎全部的灰度级。
  2. 边界阈值选取:

【数字图像处理】直方图处理【数字图像处理】直方图处理【数字图像处理】直方图处理


累积直方图:

普通的灰度直方图就是对不同灰度级像素的一个统计,而累积直方图就是由前k个等级像素之和生成的直方图。

直方图均衡化

直方图均衡化是将原图像的直方图通过变换函数变为均匀的直方图,然后按均匀直方图修改原图像,从而获得一幅灰度分布均匀的新图像。

【数字图像处理】直方图处理

 对连续变化图像:
     设r和s分别表示归一化了的原图像灰度和经过直方图修正后的图像灰度。即
                                                【数字图像处理】直方图处理                              
     在[0,1]区间内的任一个r值,都可产生一个s值,且

                                                 【数字图像处理】直方图处理


【数字图像处理】直方图处理

 T(r)作为变换函数,满足下列条件:
    ①在0≤r≤1内为单调递增函数,保证灰度级从黑到白的次序不变
    ②在0≤r≤1内,有0≤T(r)≤1,确保映射后的像素灰度在允许的范围内。

由概率论理论可知,如果已知随机变量r的概率密度为pr(r),而随机变量s是r的函数,则s的概率密度ps(s)可以由pr(r)求出。
假定随机变量s的分布函数用Fs(s)表示,根据分布函数定义
【数字图像处理】直方图处理
利用密度函数是分布函数的导数的关系,等式两边对s求导,有:
【数字图像处理】直方图处理
可见,输出图像的概率密度函数可以通过变换函数T(r)控制原图像灰度级的概率密度函数得到,因而改善原图像的灰度层次,这就是直方图修改技术的基础。
从人眼视觉特性来考虑,一幅图像的直方图如果是均匀分布的,即Ps(s)=k(归一化时k=1)时,该图像色调给人的感觉比较协调。因此将原图像直方图通过T(r)调整为均匀分布的直方图,这样修正后的图像能满足人眼视觉要求。
因为归一化假定
  【数字图像处理】直方图处理               
则有

【数字图像处理】直方图处理
两边积分得

【数字图像处理】直方图处理

上式表明,当变换函数为r的累积直方图函数时,能达到直方图均衡化的目的。
对于离散的数字图像,用频率来代替概率,则变换函数T(rk)的离散形式可表示为:
【数字图像处理】直方图处理

计算过程如下:

方法一:

  1. 统计原图像每一灰度级的像元数和累积像元数。
  2. 按下图公式计算变换后的值
  3. 四舍五入得到新的灰度值
  4. 统计像元

下图所示:

【数字图像处理】直方图处理

方法二:
  1. 列出原始图灰度级rk;
  2. 统计原始直方图各灰度级像素数nk;
  3. 计算原始直方图各概率:pk=nk/N;
  4. 计算累计直方图:sk=Σpk;
  5. 取整Sk=int{(L-1)sk+0.5};
  6. 确定映射对应关系:rk->sk;
  7. 统计新直方图各灰度级像素nk';
  8. 用pk (sk) =nk'/N计算新直方图。

其中L是灰度层次数, N是图幅总像素数。

【数字图像处理】直方图处理