图像处理-光照规整-直方图均衡化

来源:互联网 发布:贫穷 知乎 编辑:程序博客网 时间:2024/04/25 23:10

好吧。。。~~~先说直方图均衡化(Histogram Equalization),没想到这个东西,虽然经常用,但是,却搞了几个小时。。。。。。


优缺点,原理以及公式可以参考维基百科:

http://zh.wikipedia.org/wiki/%E7%9B%B4%E6%96%B9%E5%9B%BE%E5%9D%87%E8%A1%A1%E5%8C%96

使用条件很重要,还是抄过来吧:

这种方法对于背景和前景都太亮或者太暗的图像非常有用”!:意思是,如果图像本身质量很好,可能就不适合用,设置产生负功!!



matlab中实现:


如果需要对RGB图像进行均衡化,可以分3通道进行。

结果如下:



好吧,看似很简单,是不?

应该是的~~~

那为什么我会搞了好几个小时。。。

因为我没想懂,第一个直方图怎么变到直方图的。。。?

然后相当于把均衡化实现了一遍。。。用小的数据测试,然后,还是没懂。。。

然后,突然懂了,因为均衡化相当于把原来的直方图拉宽了嘛~~~估计大家没看懂。。。


那为什么原来没值的地方都出现这么多呢?例如,0,原图就“没有”(很小罢了),现在却这么多?这个得从直方图均衡化的原理-变换公式说起:

 c(i) = \sum_{j=0}^i p_x(j)

y_i = T(x_i) = c(i)

y_i' = y_i \cdot(max - min) + min

原图中的灰度级0-20出现的频率都为0,即px(0)-px(20)都为0,根据公式,转换后的值都为0,所以,变换后的直方图0值的p'x(0)这么高。


希望对你有用~

不知说清了没。。。。

或者本来是懂的,被我说模糊了。。。抱歉

我会尽量提高我的表达能力

如果有什么问题,或者想讨论的,可以email:1241159842@qq.com

原创粉丝点击