归一化滤波,高斯滤波,非线性滤波及图像金字塔介绍与应用

本文介绍了图像处理中的滤波器,包括低频滤波器的归一化块滤波器、高斯滤波器,以及非线性滤波的中值滤波器。高斯滤波器通过高斯曲线权重平滑图像,中值滤波器则有效消除高斯白噪声。此外,文章还探讨了图像金字塔在尺寸变换中的应用,防止高频组件失真。
摘要由CSDN通过智能技术生成

一、滤波器简介

         滤波器是信号和图像处理的最基础的处理。用于删除噪声,突出感兴趣的区域,允许图像重采样等等。滤波是在信号与系统原理中发现的,比较重要的概念就是频域,高频是指变化比较快的像素,低频是变化相对慢的像素。例如一个图像中,变化微弱的蓝天白云就是低频,而拥挤的街道,还有很多小物体,颜色变化复杂,就属于高频。因此,对图像的频域处理是不同于空域的另一种处理方法。

       频域分析将图像分解为从低频到高频分布,低频表示强度变化缓慢,高频表示强度变化快。有很多常见的变换方法,比如傅里叶变换,余弦变换。图像是二维的,所以包括垂直和水平的频域。

       频域分析作用于图像上就是增强一部分频带和减弱一部分频带,比如低频滤波器消除高频带,相对应的,高频滤波器消除低频带。具体滤波器的处理实际作用在下面将讨论。

二、低频滤波器

      在这一节中,我们将介绍一些基本的低频滤波器。从上面的介绍,我们知道这样的滤波器作用是减少图像像素的振幅变化。一个简单的实现方法是将像素用相邻像素的平均值代替,通过这种处理,变化快的像素将被过渡像素代替,而变得平滑。

2.1 归一化块滤波器

      opencv中提供了函数cv::blur,是将像素用以像素为中心的矩形内的相邻像素平均值代替来平滑图像。

      函数头文件:#include <opencv2/imgproc/imgproc.hpp>

      函数定义:

CV_EXPORTS_W void blur( InputArray src, OutputArray dst,
                        Size ksize, Point anchor=Point(-1,-1),
                        int borderType=BORDER_DEFAULT );
      例子:cv::blur(image,result,cv::Size(3,3));

      解释:这个类型的滤波器又称归一化块滤波器,选择3x3的核大小进行滤波。

      ,将像素用以像素为中心,权值如核内标的数字,想乘再相加代替。

2.2 高斯滤波器

      在有些时候,我们想将离处理像素近的像素设置的权值大一点,这样滤波器效果更加接近源图像,因此这里提供了高斯滤波器cv::GaussianBlur。权重的选择来源于高斯曲线。通过函数参数确定高斯曲线的曲率。../../../../_images/Smoothing_Tutorial_theory_gaussian_0.jpg

        函数定义:

CV_EXPORTS_W void GaussianBlur( InputArray src,
                                               OutputArray dst, Size ksize,
                                               double sigmaX, double sigmaY=0,
                                               int borderType=BORDER_DEFAULT );
       函数实例:
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值