赞
踩
参考资料:
直方图均衡化:https://blog.csdn.net/weixin_40163266/article/details/113802909
膨胀与腐蚀:https://blog.csdn.net/Fishmemory/article/details/53113746
顶帽和黑帽:https://blog.csdn.net/qq_55025358/article/details/124221743
图像预处理是指在图像分析和处理之前对图像进行的一些预处理操作,旨在提高图像处理的效果和精度。
主要的图像预处理方式如下:
图像的灰度直方图就描述了图像中灰度分布情况, 能够很直观的展示出图像中各个灰度级所占的多少。图像的灰度直方图是灰度级的函数, 描述的是图像中具有该灰度级的像素的个数: 其中, 横坐标是灰度级, 纵坐标是该灰度级出现的率。如下图所示
下图是四种常见的直方图的灰度分布规律
如果需要将上图中灰度偏暗、偏亮或偏集中的直方图调整为灰度均匀分布的直方图,就需要用到直方图均衡化算法。
直方图均衡化(Histogram Equalization)是一种增强图像对比度(Image Contrast)的方法,其主要思想是将一副图像的直方图分布通过累积分布函数变成近似均匀分布,从而增强图像的对比度。为了将原图像的亮度范围进行扩展, 需要一个映射函数, 将原图像的像素值均衡映射到新直方图中, 这个映射函数有两个条件:
①不能打乱原有的像素值大小顺序, 映射后亮、 暗的大小关系不能改变;
② 映射后必须在原有的范围内,即像素映射函数的值域应在0和255之间;
综合以上两个条件,累积分布函数是个好的选择,因为累积分布函数是单调增函数(控制大小关系),并且值域是0到1(控制越界问题),所以直方图均衡化中使用的是累积分布函数。
①依次扫描原始灰度图像的每一个像素, 计算出图像的灰度直方图;
②计算灰度直方图的累积分布函数;
③根据累积分布函数和直方图均衡化原理得到输入与输出之间的映射关系。
④最后根据映射关系得到结果进行图像变换
结构A被结构B腐蚀的定义为,
可以理解为,移动结构B,如果结构B与结构A的交集完全属于结构A的区域内,则保存该位置点,所有满足条件的点构成结构A被结构B腐蚀的结果。
(结构A腐蚀后的图,好像应该没有最上面那个方块)
结构A被结构B膨胀的定义为,
可以理解为,将结构B在结构A上进行卷积操作,如果移动结构B的过程中,与结构A存在重叠区域,则记录该位置,所有移动结构B与结构A存在交集的位置的集合为结构A在结构B作用下的膨胀结果。
图示中红色框内的区域表示结构A在结构B的作用下膨胀的结果。
先腐蚀后膨胀的操作称之为开操作。它具有消除细小物体,在纤细处分离物体和平滑较大物体边界的作用。
采用上图的结构B对原件进行开操作,
先膨胀后腐蚀的操作称之为闭操作。它具有填充物体内细小空洞,连接邻近物体和平滑边界的作用。
采用上图的结构对原件进行闭操作,
之所以称为形态学梯度是因为一般的获得边缘方式是通过sobel算子计算梯度获得,而这种获得梯度的方式是通过膨胀减腐蚀获得边缘,是通过形态学操作的方式获得边缘。
顶帽操作是用原图像减去开运算的图像
一般用于提取图象中的高亮部分,因为开操作会消除高亮部分,用原图像减去开操作后的图像就会得到高亮部分的图像
黑帽操作是用闭运算的图像减去原图像
一般用于提取低亮部分的图像,因为闭操作会消去细小的低亮部分,用低亮部分的图像减去原图像获得低亮部分的图像
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。