图像低通滤波
Posted x1angzeeD.
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了图像低通滤波相关的知识,希望对你有一定的参考价值。
1、图像强度值变化慢的区域只包含低频率,而图像强度变化快的区域产生高频率。
2、图象是二维的,因此频率分为两种,及垂直频率(垂直方向的变化)和水平频域(水平方向的变化)。
低通滤波器
作用:消除图像中的高频部分,目的是减少图像变化的幅度。
1、cv::blur 归一化框过滤器,他将每个像素的值替换成该像素邻域的平均值(邻域是矩形的),从而使图像更加平滑。
2、cv::GaussianBlur 高斯滤波让邻域内较近的像素具更高的重要度。即计算加权平均值,即较近的像素比较远的像素具有更大的权重。
只要知道模板的大小和高斯函数的方差sigma,由二维高斯函数的表达式很容易计算出高斯核,只要在归一化就可以了。
一般而言:取dim = 1 + 2 * ((int) (3.0 * sigma))
我们可以使用matlab中的函数直接计算出高斯核,例如3x3的高斯模板:filter=fspecial('gaussian',3,1),其中sigma=1
3、cv::boxFilter 方框滤波器是一种矩形的且滤波器中的所有值全部相等。
实现原理:
1、如果一种滤波器是用邻域像素的加权累加值来替换像素值,我们就说这种滤波器是线性的。
这里使用了均值滤波器,即将矩形邻域内的全部像素累加,除以该邻域的数量(即求平均值),然后用这个平均值来代替原像素的值相当于把邻域内内个像素*1然后进行累加。也可以把邻域中每个像素位置对应的放大系数存放在一个矩阵中,用这个矩阵表示滤波器的不同权重。
应用一个线性滤波器相当于将卷积核(内核/掩膜/掩码)移动到图像的每个像素上,并将每个对应像素乘以他的权重,该过程即为卷积,规范写法如下:
在这个双重求和的过程中,位于(x,y)的当前像素与卷积核的中心点对齐,并假定它位于坐标(0,0)处。
2、对于高斯滤波器,像素对应的权重与他到中心像素之间的距离成正比。
,其中高斯滤波器宽度(决定着平滑程度)是由参数σ表征,σ越大高斯滤波器的频带就越宽,平滑程度就越好。
注意:均值滤波并未完全消除图像中全部的高频信息。
高斯滤波器为一种可分离滤波器,即二维内核可拆成两个一维滤波器,来过滤水平方向的频率再过滤垂直方向的频率。
以上是关于图像低通滤波的主要内容,如果未能解决你的问题,请参考以下文章