首页 > 代码库 > 图像增强之(一)---直方图均衡化

图像增强之(一)---直方图均衡化

直方图均衡化又称为灰度均衡化,是指通过某种灰度映射使输入图像转换为在每一灰度级上有近似同样的像素点的输出图像。在经过均衡化处理后的图像中,像素将尽可能占尽可能多的灰度级而且均匀分布。

对于一般的灰度图片来说。灰度级变化范围为0~255.为了计算方便,将灰度范围变为0~1。且连续。连续这个地方一定要注意,这意味着讨论某一个特定灰度级的出现概率是没意义的,这个过程称之为直方图归一化。

归一化前的直方图:相应像素的出现次数
技术分享
归一化后:
这样经过归一化就能得到相应像素的出现频率
50 : 3/6 = 50%
100: 2/6 = 33.3%
200: 1/6 = 16.7%

说明:就是将源图像的信息用相应于直方图的第二种形式体现出来 - 出现频率(即是归一化后的结果)

归一化后的直方图事实上就是一个概率密度函数(probability density function)。


具有例如以下性质:
技术分享

设:转换前图像的PDF为:pr(r)。


转换前图像的PDF为:ps(s)。
映射关系为:s = f(r)
r、s分别代表均衡化前后的灰度值,r,s∈[0,1]。

由概率论知识:
技术分享

至于这个公式是怎么来的,非常多书本以及文章都是一笔带过,也许是认为太简单而懒得解释,反正我是没有在《概率论》中找到过这个公式。

来推导一下:
技术分享
注意区分大写和小写:P(r)概率,p(r)概率密度函数。
技术分享
这个公式是由于,灰度s是由灰度r映射过来的,而映射前后他们两个的数量的相等的。到这里了,也许你就明确了。上面的公式就是表示映射前后的数量相等。

于是得到公式(1).

均匀分布的概率密度函数:
对于一个取值在区间[a,b]上的均匀分布函数。它的概率密度函数:
技术分享
有了这样一个公式,我们能够得出均衡化后的概率密度函数为:
技术分享
在结合公式(1)。得到:
技术分享

等式两边同一时候积分:
技术分享
该式称为图像的累积分布函数。也就是概率论中概率分布函数。
扩展到255灰度级,得灰度均衡的转换公式:
技术分享
当中:DB为转换后的灰度值。DA为转换前的灰度值,Dmax = 255.
对于离散灰度级:
技术分享
当中:Hi为第i级灰度的像素个数,A0为图像的面积。

<script type="text/javascript"> $(function () { $(‘pre.prettyprint code‘).each(function () { var lines = $(this).text().split(‘\n‘).length; var $numbering = $(‘
    ‘).addClass(‘pre-numbering‘).hide(); $(this).addClass(‘has-numbering‘).parent().append($numbering); for (i = 1; i <= lines; i++) { $numbering.append($(‘
  • ‘).text(i)); }; $numbering.fadeIn(1700); }); }); </script>

图像增强之(一)---直方图均衡化