一、基本知识
图像对比度是指:一副图像中明暗区域最亮的白和最暗的黑之间不同亮度层级的测量,差异范围越大代表对比度越大;一般来说图像对比度越大,图像越清晰醒目,色彩也越鲜明艳丽;对比度小让整个画面都灰蒙蒙;
图像饱和度是指:图像的鲜艳程度,也是色彩的纯度。饱和度取决于图像中该色中含色成分和消色成分的比例;纯的颜色饱和度都大;
图像的亮度是指:图像的明暗程度;
直方图均衡化以及灰度拉伸都是属于图像对比度增强的方法;
二、灰度拉伸
灰度拉伸是通过对对比度拉伸达到对对比度进行增强的目的;
公式为:
三、直方图均衡化及直方图匹配:
首先直方图均衡化是采用累积函数的方式来实现的;至于为什么选用累积函数来实现均衡化在于
1. 像素不论怎么映射,一定要保证图像中原来的大小关系不变,较亮的区域依然较亮,较暗的区域依然较暗,只是对比度增加,不改变图像明暗特征;
2. 映射过去的函数不能越界;
而累积函数分布函数是单调增函数且值域在0到1符合条件;一副图像的灰度级可看成是区间[0,L-1]内的随机变量;
其中w是积分的假变量,公式右边是随机变量r的累积分布函数。在由莱布尼茨准则
则
可以转化为
对于离散的图像来说
四、一个例子来说明到底如何进行直方图匹配的过程:
假设一副图像的大小为64*64像素(M*N=4096)的3比特图像(L=2^3=8)的灰度分布表
则根据上表就可以算出S0~S7
就可以得到均衡化后的直方图
这样可以得到均衡化后的直方图只有5个不同的灰度及,r0被映射到了s0=1;r1被映射到了s1=3;r2被映射到了s2=5;r3、r4被映射到了S=6;r5 6 7都被映射到了S=7;如下图就是均衡后的直方图:
接下来我们看需要待直方图匹配;
我们先得到了S0=1;S1=3;S2=5;S3=6;S4=6;S5=7;S6=7;S7=7 。 接下来我们需要对规定直方图进行同样的均衡化;
通过计算的结果发现G函数并不是严格单调的,违反了条件的一一对应关系,所以找到Zq的最小值与SK最接近作为对应标准;例如S0=1;与G(Z3)=1就是完美匹配,因此S0对应Z3,也就是直方图均衡后的图像每个值为1的像素映射为直方图规定话后图像的值为3的像素;最后结果如下图:
以上例子节选来自《数字图像处理第三版》内容;
五、实际opencv例子结果
程序的源代码如下图所示:
测试原图为:
由于选取图像不是很特别,只是用来验算的。从结果上面来看整体目标是实现了,灰度拉伸只是线性的拉宽对比度,对图像的整体影响不大。而灰度直方图均衡化却对图像的整体效果有影响,对直方图的改变也比较大;
-
图像
+关注
关注
2文章
1083浏览量
40444 -
函数
+关注
关注
3文章
4325浏览量
62529
原文标题:图像处理中直方图匹配以及灰度拉伸
文章出处:【微信号:Imgtec,微信公众号:Imagination Tech】欢迎添加关注!文章转载请注明出处。
发布评论请先 登录
相关推荐
评论