Histogram Equalization(直方图均衡化)
2012-06-21 11:23
645 查看
(源自:百度百科)
图像对比度增强的方法可以分成两类:一类是直接对比度增强方法;另一类是间接对比度增强方法。直方图拉伸和直方图均衡化是两种最常见的间接对比度增强方法。直方图拉伸是通过对比度拉伸对直方图进行调整,从而“扩大”前景和背景灰度的差别,以达到增强对比度的目的,这种方法可以利用线性或非线性的方法来实现;直方图均衡化则通过使用累积函数对灰度值进行“调整”以实现对比度的增强。
直方图均衡化处理的“中心思想”是把原始图像的灰度直方图从比较集中的某个灰度区间变成在全部灰度范围内的均匀分布。直方图均衡化就是对图像进行非线性拉伸,重新分配图像像素值,使一定灰度范围内的像素数量大致相同。直方图均衡化就是把给定图像的直方图分布改变成“均匀”分布直方图分布。
(源自:维基百科)
这种方法对于背景和前景都太亮或者太暗的图像非常有用,这种方法尤其是可以带来X光图像中更好的骨骼结构显示以及曝光过度或者曝光不足照片中更好的细节。这种方法的一个主要优势是它是一个相当直观的技术并且是可逆操作,如果已知均衡化函数,那么就可以恢复原始的直方图,并且计算量也不大。这种方法的一个缺点是它对处理的数据不加选择,它可能会增加背景噪声的对比度并且降低有用信号的对比度。
![](http://upload.wikimedia.org/wikipedia/zh/math/f/7/5/f75ef7544498f247df440d828aee41aa.png)
表示灰度
![](http://upload.wikimedia.org/wikipedia/zh/math/8/6/5/865c0c0b4ab0e063e5caa3387c1a8741.png)
出现的次数,这样图像中灰度为
![](http://upload.wikimedia.org/wikipedia/zh/math/8/6/5/865c0c0b4ab0e063e5caa3387c1a8741.png)
的像素的出现概率是
![](http://upload.wikimedia.org/wikipedia/zh/math/1/f/4/1f4dc118da909b84580ca1c96c32b26d.png)
![](http://upload.wikimedia.org/wikipedia/zh/math/d/2/0/d20caec3b48a1eef164cb4ca81ba2587.png)
是图像中所有的灰度数,
![](http://upload.wikimedia.org/wikipedia/zh/math/7/b/8/7b8b965ad4bca0e41ab51de7b31363a1.png)
是图像中所有的像素数,
![](http://upload.wikimedia.org/wikipedia/zh/math/8/3/8/83878c91171338902e0fe0fb97a8c47a.png)
实际上是图像的直方图,归一化到
![](http://upload.wikimedia.org/wikipedia/zh/math/9/8/3/9835875175f2407b5ac053ce3c7a6cba.png)
。
把
![](http://upload.wikimedia.org/wikipedia/zh/math/4/a/8/4a8a08f09d37b73795649038408b5f33.png)
作为对应于
![](http://upload.wikimedia.org/wikipedia/zh/math/8/3/8/83878c91171338902e0fe0fb97a8c47a.png)
的累计概率函数, 定义为:
![](http://upload.wikimedia.org/wikipedia/zh/math/0/a/8/0a8a333c1ff47c13f1779272c91e97f8.png)
![](http://upload.wikimedia.org/wikipedia/zh/math/4/a/8/4a8a08f09d37b73795649038408b5f33.png)
是图像的累计归一化直方图。
我们创建一个形式为
![](http://upload.wikimedia.org/wikipedia/zh/math/5/a/3/5a3c1809e94f981704e5fba50f33ee84.png)
的变化,对于原始图像中的每个值它就产生一个
![](http://upload.wikimedia.org/wikipedia/zh/math/4/1/5/415290769594460e2e485922904f345d.png)
,这样
![](http://upload.wikimedia.org/wikipedia/zh/math/4/1/5/415290769594460e2e485922904f345d.png)
的累计概率函数就可以在所有值范围内进行线性化,转换公式定义为:
![](http://upload.wikimedia.org/wikipedia/zh/math/0/0/4/0046096de84d8c45cac4c8ead147da42.png)
注意 T 将不同的等级映射到
![](http://upload.wikimedia.org/wikipedia/zh/math/6/1/1/611557b179db4406a7fb86302c275426.png)
域,为了将这些值映射回它们最初的域,需要在结果上应用下面的简单变换:
图像对比度增强的方法可以分成两类:一类是直接对比度增强方法;另一类是间接对比度增强方法。直方图拉伸和直方图均衡化是两种最常见的间接对比度增强方法。直方图拉伸是通过对比度拉伸对直方图进行调整,从而“扩大”前景和背景灰度的差别,以达到增强对比度的目的,这种方法可以利用线性或非线性的方法来实现;直方图均衡化则通过使用累积函数对灰度值进行“调整”以实现对比度的增强。
直方图均衡化处理的“中心思想”是把原始图像的灰度直方图从比较集中的某个灰度区间变成在全部灰度范围内的均匀分布。直方图均衡化就是对图像进行非线性拉伸,重新分配图像像素值,使一定灰度范围内的像素数量大致相同。直方图均衡化就是把给定图像的直方图分布改变成“均匀”分布直方图分布。
(源自:维基百科)
纵览
这种方法通常用来增加许多图像的全局对比度,尤其是当图像的有用数据的对比度相当接近的时候。通过这种方法,亮度可以更好地在直方图上分布。这样就可以用于增强局部的对比度而不影响整体的对比度,直方图均衡化通过有效地扩展常用的亮度来实现这种功能。这种方法对于背景和前景都太亮或者太暗的图像非常有用,这种方法尤其是可以带来X光图像中更好的骨骼结构显示以及曝光过度或者曝光不足照片中更好的细节。这种方法的一个主要优势是它是一个相当直观的技术并且是可逆操作,如果已知均衡化函数,那么就可以恢复原始的直方图,并且计算量也不大。这种方法的一个缺点是它对处理的数据不加选择,它可能会增加背景噪声的对比度并且降低有用信号的对比度。
实现
我们来看一个灰度图像,让![](http://upload.wikimedia.org/wikipedia/zh/math/f/7/5/f75ef7544498f247df440d828aee41aa.png)
表示灰度
![](http://upload.wikimedia.org/wikipedia/zh/math/8/6/5/865c0c0b4ab0e063e5caa3387c1a8741.png)
出现的次数,这样图像中灰度为
![](http://upload.wikimedia.org/wikipedia/zh/math/8/6/5/865c0c0b4ab0e063e5caa3387c1a8741.png)
的像素的出现概率是
![](http://upload.wikimedia.org/wikipedia/zh/math/1/f/4/1f4dc118da909b84580ca1c96c32b26d.png)
![](http://upload.wikimedia.org/wikipedia/zh/math/d/2/0/d20caec3b48a1eef164cb4ca81ba2587.png)
是图像中所有的灰度数,
![](http://upload.wikimedia.org/wikipedia/zh/math/7/b/8/7b8b965ad4bca0e41ab51de7b31363a1.png)
是图像中所有的像素数,
![](http://upload.wikimedia.org/wikipedia/zh/math/8/3/8/83878c91171338902e0fe0fb97a8c47a.png)
实际上是图像的直方图,归一化到
![](http://upload.wikimedia.org/wikipedia/zh/math/9/8/3/9835875175f2407b5ac053ce3c7a6cba.png)
。
把
![](http://upload.wikimedia.org/wikipedia/zh/math/4/a/8/4a8a08f09d37b73795649038408b5f33.png)
作为对应于
![](http://upload.wikimedia.org/wikipedia/zh/math/8/3/8/83878c91171338902e0fe0fb97a8c47a.png)
的累计概率函数, 定义为:
![](http://upload.wikimedia.org/wikipedia/zh/math/0/a/8/0a8a333c1ff47c13f1779272c91e97f8.png)
![](http://upload.wikimedia.org/wikipedia/zh/math/4/a/8/4a8a08f09d37b73795649038408b5f33.png)
是图像的累计归一化直方图。
我们创建一个形式为
![](http://upload.wikimedia.org/wikipedia/zh/math/5/a/3/5a3c1809e94f981704e5fba50f33ee84.png)
的变化,对于原始图像中的每个值它就产生一个
![](http://upload.wikimedia.org/wikipedia/zh/math/4/1/5/415290769594460e2e485922904f345d.png)
,这样
![](http://upload.wikimedia.org/wikipedia/zh/math/4/1/5/415290769594460e2e485922904f345d.png)
的累计概率函数就可以在所有值范围内进行线性化,转换公式定义为:
![](http://upload.wikimedia.org/wikipedia/zh/math/0/0/4/0046096de84d8c45cac4c8ead147da42.png)
注意 T 将不同的等级映射到
![](http://upload.wikimedia.org/wikipedia/zh/math/6/1/1/611557b179db4406a7fb86302c275426.png)
域,为了将这些值映射回它们最初的域,需要在结果上应用下面的简单变换:
![](http://upload.wikimedia.org/wikipedia/zh/math/a/6/5/a6553a9b0be9554850178df8c3f5f471.png)
相关文章推荐
- 数字图像的直方图均衡化(C/C++源代码)
- 数字图像处理--直方图均衡化
- 【数字图像处理】直方图均衡化详解及编程实现
- 直方图均衡化(色调均化)(一)
- opencv-直方图均衡化
- 图像直方图均衡化和直方图匹配的理解
- 直方图均衡化(python实现)
- Python OpenCV -- 直方图均衡化(十三)
- 直方图均衡化
- 直方图均衡化(cvEqualizeHist)
- 基于matlab的直方图均衡化代码
- 直方图均衡化
- 图像增强对比度的方法——直方图均衡化
- 直方图均衡化
- 趣谈直方图均衡化和规定化
- 关于图像对比度【3】——直方图均衡化的改进
- cvEqualizeHist() 直方图均衡化(多通道彩图)
- Matlab图像处理转灰度图,绘制直方图,直方图均衡化
- 直方图均衡化
- 直方图均衡化原理