【图像处理】图像滤波

图像噪声主要来源有以下三种:
第一种是系统设备外部的电气设备发出电磁干扰等因素引起的噪声。
第二种是由外部环境光线不均匀所引起的噪声,这种噪声容易在图像上形成明暗不均的区域或条纹。加装辅助照明可有效减小该噪声。
第三种是由检测系统内部设备电路、元器件本身或光电基本性质引起的噪声。如CMOS相机在采集图像过程中所造成的噪声。

中值滤波

1、中值滤波原理
中值滤波是一种非线性平滑方法,其含义是以邻域内像素的中值来代替所求像素值。中值滤波邻域内像素的中值不受孤立噪声影响,被广泛认为是“边缘保持”,因此它在一定程度上既对去除椒盐噪声非常有效,又保证了边缘特征较满意的复原。
在这里插入图片描述
2、中值滤波函数

void cv::medianBlur ( InputArray src,OutputArray dst,int ksize)

  • src:待中值滤波的图像,可以是单通道,三通道和四通道,数据类型与滤波器的尺寸相关,当滤波器尺寸为3或5时,图像可以是CV_8U,CV_16U或CV_32F类型,对于较大尺寸的滤波器,数据类型只能是CV_8U。
  • dst:输出图像,与输入图像src具有相同的尺寸和数据类型。
  • ksize: 滤波器尺寸,必须是大于1的奇数,例如:3、5、7…

高斯滤波

高斯滤波器是线性滤波器,主要使用了高斯函数,因此对高斯噪声有很好的处理能力,用于模糊图像,去除细节和噪声。
1、高斯滤波原理
在这里插入图片描述
通过高斯分布函数求出模板系数,例如一个3*3的模板:以模板的中心位置为坐标原点进行取样,其中模板各个坐标位置如下图,x轴水平向右,y轴垂直向下,(x,y)表示:
在这里插入图片描述
σ的意义及选取
通过上述的实现过程,不难发现,高斯滤波器模板的生成最重要的参数就是高斯分布的标准差σ。标准差代表着数据的离散程度,如果σ较小,那么生成的模板的中心系数较大,而周围的系数较小,这样对图像的平滑效果就不是很明显;反之,σ较大,则生成的模板的各个系数相差就不是很大,比较类似均值模板,对图像的平滑效果比较明显。

于是我们有如下结论:σ越小分布越瘦高,σ越大分布越矮胖。

σ越大,分布越分散,各部分比重差别不大,于是生成的模板各元素值差别不大,类似于平均模板;
σ越小,分布越集中,中间部分所占比重远远高于其他部分,反映到高斯模板上就是中心元素值远远大于其他元素值,于是自然而然就相当于中间值的点运算。

为了计算权重矩阵,需要设定σ的值。假定σ=1.5。将各个位置的坐标代入二维零均值高斯分布函数,计算出来的模板有两种形式:整数模板和小数模板
小数模板:
将坐标和σ带入高斯分布函数后得到:
在这里插入图片描述
这9个点的权重总和等于0.4787147,如果只计算这9个点的加权平均,还必须让它们的权重之和等于1,因此上面9个值还要分别除以0.4787147,得到最终的权重矩阵。
在这里插入图片描述
整数模板:
在这里插入图片描述

得到如下模板:
在这里插入图片描述
计算高斯模糊:
假设现有9个像素点,灰度值(0-255)如下:
在这里插入图片描述
每个点乘以自己的权重值:
在这里插入图片描述
得到:
在这里插入图片描述
将这9个值加起来,就是中心点的高斯模糊的值。

对所有点重复这个过程,就得到了高斯模糊后的图像。如果原图是彩色图片,可以对RGB三个通道分别做高斯模糊。

2、高斯滤波函数

void GaussianBlur(InputArray src, OutputArray dst, Size ksize, double sigmaX, double sigmaY=0, intborderType=BORDER_DEFAULT)

  • 参数src:可以有任意通道,深度为CV_8U, CV_16U, CV_16S, CV_32F or CV_64F。
  • 参数dst:和原图一样的大小和类型。
  • 参数ksize:宽,高可以不一样,但必须是正、奇数,当为0时由sigma计算出。
  • 参数sigmaX:X方向的标准差。
  • 参数sigmaY:Y方向的标准差,如果为0,则将其设置为和sigmaX相等,如果sigmaX,sigmaY均为0,则大小由ksize计算出。
  • borderType –像素外推方法(borderInterpolate()有关详细信息,请参见link )。
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值