1、统计一帧中各个灰阶值[0~255]各自的个数;
2、从0~255 灰阶排序,计算累加个数,后一个等于前几个之和hist_acc;
3、分别计算各个累加和的概率; hist_acc[i]/Size ,其中i = 0~255
4、映射个灰阶值: hist_value[i] =255*hist_acc[i]/Size; 其中i = 0~255
5、输出映射值 NewData = hist_value[data_i];
一下为参考资料:
直方图均衡化的数学原理
https://blog.csdn.net/superjunenaruto/article/details/52431941直方图均衡化处理的“中心思想”是把原始图像的灰度直方图从比较集中的某个灰度区间变成在全部灰度范围内的均匀分布。直方图均衡化就是对图像进行非线性拉伸,重新分配图像像素值,使一定灰度范围内的像素数量大致相同。直方图均衡化就是把给定图像的直方图分布改变成“均匀”分布直方图分布【1】。有关直方图均衡化的深入介绍,可以参考作者的另一篇博客直方图匹配的数学原理。
下图为直方图均衡化的过程,体现了“均衡”的含义:(概率密度的均匀)
网上可以查阅到关于直方图均衡化的各种解释、用法、程序、优缺点,这里只关注直方图均衡化的数学原理(可以参阅【1】)。
我们知道直方图变换其实是一种灰度变换,灰度变换的变换函数决定了输入随机变量与输出随机变量之间的关系,也就是两个随机变量的关系;一副图像是二维离散的数据,不利于使用数学的工具进行处理,在数字图像处理中,我们通常是采用连续的变量进行推导,最后在推广到离散的情况。
以下我们介绍:1.图像直方图的定义 2.直方图变换的理论基础(为什么介绍它?直方图变换是直方图均衡化的基础)3.概率知识-随机变量的函数分布 4.直方图均衡化的理论基础 5.离散形式的直方图均衡化。
一、图像直方图的定义
1.定义(1):
2.定义(2):
3.比较:
二、直方图变换的理论基础
注意:T(r)为单值单调增加(此为数字图像处理-冈萨雷斯-第二版中的表述),在第三版中有一些变化,具体的可以查阅此书的对应章节。
三、概率论的知识-随机变量的函数的分布
这一块涉及了概率论的知识-随机变量的函数的分布:
四、直方图均衡化的理论基础
五、离散形式的直方图均衡化
六、例子
---------------------------------------------------------------------------------------------------------------------------------
https://www.2cto.com/kf/201602/488456.html
对于彩色图像而言,你可能会想到分别对R、G、B三个分量来做处理,这也确实是一种方法。但有些时候,这样做很有可能导致结果图像色彩失真。因此有人建议将RGB空间转换为HSV之后,对V分量进行直方图均衡处理以保存图像色彩不失真。下面我们来做一些对比实验。待处理图像是标准的图像处理测试用图couple图,如下所示。
首先,我们分别处理R、G、B三个分量,为了简便我们直接使用matlab中的函数histeq()。
1
2
3
4
5
|