您现在的位置是:首页» windows系统» opencv学习难不难,opencv最详细入门

opencv学习难不难,opencv最详细入门

2024-07-13 04:06:56
本内容由系统网小编为大家分享,Windows系统安装教程、办公系统、软件怎么使用、软件使用教程、办公软件攻略等信息。图像变换(16):直方图均衡化一,直方图均衡化的简单理解;二,直方图均衡化的概念和特点;三,实现直方图均衡化:equaliz

本内容由系统网小编为大家分享,Windows系统安装教程、办公系统、软件怎么使用、软件使用教程、办公软件攻略等信息。

图像变换(16):直方图均衡化

一,直方图均衡化的简单理解;

二,直方图均衡化的概念和特点;

三,实现直方图均衡化:equalizeHist()函数;

四,示例程序:直方图均衡化;

一,直方图均衡化的简单理解

很多时候,我们用相机拍摄的照片的效果往往会不尽人意。这时,可以对这些图像进行一些处理,来扩大图像的动态范围。这种情况下最常用到的技术就是直方图均衡化。未经均衡化的图片范例如图7.41、7.42所示。

在图7.41中,我们可以看到,左边的图像比较淡,因为其数值范围变化比较小,可以在这幅图的直方图(图7.42)中明显地看到。因为处理的是8位图像,其亮度值是从О到255,但直方图值显示的实际亮度却集中在亮度范围的中间区域。为了解决这个问题,就可以用到直方图均衡化技术,先来看看其概念。

二,直方图均衡化的概念和特点

直方图均衡化是灰度变换的一个重要应用,它高效且易于实现,广泛应用于图像增强处理中。图像的像素灰度变化是随机的,直方图的图形高低不齐,直方图均衡化就是用一定的算法使直方图大致平和的方法。均衡化效果示例如图7.43、7.44所示。

简而言之,直方图均衡化是通过拉伸像素强度分布范围来增强图像对比度的一种方法。均衡化处理后的图像只能是近似均匀分布。均衡化图像的动态范围扩大了,但其本质是扩大了量化间隔,而量化级别反而减少了,因此,原来灰度不同的象素经处理后可能变的相同,形成了一片相同灰度的区域,各区域之间有明显的边界,从而出现了伪轮廓。在原始图像对比度本来就很高的情况下,如果再均衡化则灰度调和,对比度会降低。在泛白缓和的图像中,均衡化会合并一些象素灰度,从而增大对比度。均衡化后的图片如果再对其均衡化,则图像不会有任何变化。如图7.45、7.46所示。

通过图7.46可以发现,经过均衡化的图像,其频谱更加舒展,有效地利用了0一255的空间,图像表现力更加出色。

三,实现直方图均衡化:equalizeHist()函数

在OpenCV中,直方图均衡化的功能实现由 equalizeHist函数完成。我们一起看看它的函数描述。

第一个参数,InputArray类型的src,输入图像,即源图像,填Mat类的对象即可,需为8位单通道的图像。第二个参数,OutputArray类型的 dst,函数调用后的运算结果存在这里,需和源图片有一样的尺寸和类型。采用如下步骤对输入图像进行直方图均衡化。

1)计算输入图像的直方图H。2)进行直方图归一化,直方图的组距的和为255。

3)计算直方图积分:

4)以H`作为查询表进行图像变换:

言而言之,由 equalizeHist()函数实现的灰度直方图均衡化算法,就是把直方图的每个灰度级进行归一化处理,求每种灰度的累积分布,得到一个映射的灰度映射表,然后根据相应的灰度值来修正原图中的每个像素。

四,示例程序:直方图均衡化

代码如下:

运行结果:

XTw.com.Cn系统网专业应用软件下载教程,免费windows10系统,win11,办公软件,OA办公系统,OA软件,办公自动化软件,开源系统,移动办公软件等信息,解决一体化的办公方案。

免责声明:本文中引用的各种信息及资料(包括但不限于文字、数据、图表及超链接等)均来源于该信息及资料的相关主体(包括但不限于公司、媒体、协会等机构)的官方网站或公开发表的信息。内容仅供参考使用,不准确地方联系删除处理!

联系邮箱:773537036@qq.com

标签: 学习 opencv