行业资讯

行业资讯

通过我们的最新动态了解我们

box滤波器(emⅰ滤波器)

发布时间:2023-05-11
阅读量:129

本文目录一览:

我在家里墙壁上发现一个黑色盒子,盒子外面标着filter fuse box.我拆开拍了照片,

此黑色接线盒州大运是供电局户外册梁架空线进户保险盒,由此出线到用户计量的大火表。此盒属供电部门专用限用电量电仿段箱。私人不可启封,防更改熔丝而影响户外正常配电和供电。

OpenCV 中的滤波函数

也称为 box filter、均值滤波器,就是简单地将每个像素的值替换成邻域平均值。

如果用 kernel (也称为 mask) 表示,就是

如果采用积分图的方法,可以更快的计算这种 box filter 的结果。

在积分图中,只需要三次加法运算,一次乘法运算即可,即通过积分图,算出 kernel 内部区域的像素和,然后取平均。

积分图中每一点 的值是原图中对应位置左上角区域所有值的和:

积分图的计算可以很高效:

每次计算只需要新增一个像素值,其他值都是之前已经计算出来的。

积分图一旦计算出来,对任意矩形区域内 像素和 的计算都可以在常数时间(即计算时间固定,与区域的大小无关)内完成,例如:

在高斯滤波器中,当前像素值取邻域的 加权平均 ,离当前像素越近,权重越大,权重服从高斯分布。

在实际应用中,几乎总是首选高斯滤波器,很少直接用 box filter.

上述命令中,最后两个参数 kernel size 和 如果只设置一个,则另一个可以通过以下公式推出:

第二个式子很好理解,就是借助高斯函数的性质(距离均值 3 个标准差范围内的取值占总数的 99.7%),因此窗口大小就是 3 倍的 *2 (两边)然后再加上 1 (自身)。

第一个式子与第二个非常近似,但是又做了一些微调。

上述高斯滤波器内部实际上是先调用如下函数,产生服从高斯分布的一系列权重:

上述 9 个权重是经过归一化的,即和为 1,其公式为

其中 满足归一化的要求,ksize 必须是奇数。如果要生成二维的高斯矩阵权重,则是先产生一个权重列向量,然后令该列向量与自身的转置相乘,得到高斯矩阵权重,最后再统一进行归一化,保证矩阵所有元素和为 1。

另外,还可以分别产生两个不同的高斯权重向量,对应行和列方向上的高斯模糊权重,然后把它们相乘得到高斯矩阵。由于满足这种分离的性质,高斯滤波器被称为可分离的滤波器。

前边在进行滤波操作时,都只包含线性操作(算数平均、加权平均)。

另外还可以采用非线性操作,对应非线性滤波器。非线性滤波器不能表示成 kernel 矩阵卷积枝渣操作的形式。

中值滤波器是一种非线性滤波器。它把当前像素和邻域像素组成一个集合,排序之后,选择中间值(即排序中间位置猛粗悄的数值)替换当前像素值。

椒盐噪声 :像素随机替换成白色或者黑点。在通讯时,如果部分像素值丢失,就会产生这种噪声。

中值滤波器可以有效的消除椒盐噪声,因为这些噪声点在排序时很难成为中间值,因此全都被剔除了。

Sobel 也是线性滤波器,只不过采用了特殊的 kernel 矩阵:

分别针对水平方向和垂直方向的操作。

用上述 kernel 进行操作,就是计算水平或者垂直方向像素值的差分,近似反映了像素值水平和垂直变化的速度,合在一起就是图像梯度的近似。

在默认情况下,差分运算的结果很可能超过 [0,255] 这个范围,而且有正有负,应该用 CV_16S 数据类型表示。经过上述缩放和偏移之后,才勉强适合用 CV_8U 表示,但还是需要饱和截断操作。

在分别得到横向、纵向变化率之后,可以整合起来计算梯度的大小

一般如果要显示最后的 sobel 边缘检测的结果,还需要把凳颂上述模值转化到 [0,255] 范围内。

sobel 实际上包含了平滑和求导两个操作,其中邻域像素累加相当于高斯平滑,距离越近的像素权重越高。

sobel 的 kernel size 可以选择 1, 3, 5 和 7,其中 1 代表 1×3 或者 3×1,此时是没有高斯平滑的。

对于大的 size,这种平滑更明显。此时,sobel 不是高通滤波器,而是带通滤波器,既消除了部分高频,又消除了部分低频。

与 Sobel 算子类似的还有其他几个计算梯度的算子,只是采用不同的 kernel.

上述所有的滤波器都是近似计算图像函数的一阶导数,像素变化大的区域计算得到的值较大,平坦的区域计算值较小。

sobel 算子通过对图片函数求导,那些数值绝对值较高的点对应了边界区域:

如果继续求二阶导,则导数较大的点对应了过零点:

因此,也可以通过搜索二阶导的过零点来检测边界点。

Laplacian 算子的定义 :

对照 Hessian 矩阵:

Laplacian 算子实际上就是 Hessian 矩阵的 Trace。

具体到图像操作中,二阶导有如下表达式:

所以最终 Laplacian 算子表达式为:

在具体实现中,可以用以下 kernel 进行卷积操作:

Laplacian 算子具有旋转 90 度不变性,即一幅图旋转 90 度及其倍数,对应的 Laplacian 算子操作结果相同。

为了得到更好的旋转不变性,可以将 Laplacian 算子 kernel 扩展为如下形式:

这样就具有了旋转 45 度及其倍数的不变性。

Laplacian 算子对噪声比较敏感,因此一般在进行 Laplacian 之前先进行高斯平滑滤波。

两个步骤合并称为 LoG (Laplacian of Gaussian)。

在具体实现中,我们并不需要先高斯再拉普拉斯,而是两步并作一步:将拉普拉斯算子作用在高斯 kernel 上,得到新的 kernel,再与 image 做卷积:

最后作用在 位置上的卷积权重为

同样也是通过 设定滤波范围。

对高斯函数取拉普拉斯算子操作是什么样子的?

二维情况下得到的曲面很像“墨西哥草帽”。

的大小决定了检测的粗粒度:

Difference of Gaussians

为了减少 LoG 计算量,用两个不同 的高斯做差,来近似 LoG

上图中两个 的取值好像反了。。。

均值滤波,中值滤波和高斯滤波的异同

高斯滤波

由于高斯函数的傅立叶变换仍是高斯函数, 因此高斯函数能构成一个在频域具有平滑性能的低通滤波器。可以通过在频域做乘积来实现高斯滤波。均值滤波是对是对信号进行局部平均, 以平均值来代表该像素点的灰度值。矩形滤波器(Averaging Box Filter)对这个二维矢量的每一个分量进行独立的平滑处理。通过计算和转化 ,得到一幅单位矢量图。这个 512×512的矢量图被划分成一个 8×8的小区域 ,再在每一个小区域中 ,统计这个区域内的主要方向 ,亦即将对该区域内点方向数进行统计,最多的方向作为区域的主方向。于是就得到了一个新的64×64的矢量图。基汪这个新的矢量图还可以采用一个 3×3模板进行进一步的平滑。

均值滤波

把每个像素都用周围的8个像素来做均值操作。可以平滑图像,速度快,算法简单。但是无法去掉噪声,这能微弱的减弱它。

中值滤波

常用的非线性滤波方法 ,也是图像处理技术中最常用的预处理技术。它在平滑脉冲噪声方面非常有效,同时它可以保尘锋晌护图像尖锐的边缘。加权中值滤波能够改进中值滤波的边缘信号保持效果。但对方向性很强的指纹图像进行滤波处理时 ,有必要引入方向信息,即利用指纹方向图来指导中值滤波的进行。

最小均方差滤波器

亦称维纳滤波器,其设计思想是使输入信号乘响应后的输出,与期望输出的均方误差为最小。

Gabor滤波

Gabor变换是英国物理学派锋家 Gabor提出来的,由“测不准原理”可知,它具有最小的时频窗,即Gabor函数能做到具有最精确的时间-频率的局部化;另外, Gabor函数与哺乳动物的视觉感受野相当吻合,这一点对研究图像特征检测或空间频率滤波非常有用。恰当的选择其参数, Gabor变换可以出色地进行图像分割、识别与理解。如文献提出的基于Gabor滤波器的增强算法。

图像的滤波与增强

(如果您觉得文档不错,能不能麻烦动动小手点个赞啊)

1. 滤波实际上是信号处理得一个概念,图像可以看成一个二维信号,其中像素点的 灰度值 代表 信号的强弱 ;

2. 高频 :图像上变化剧烈的部分;

3. 低频 :图像灰度值变化缓慢,平坦的地方;

4.根据图像高低频,设置高通和低通滤波器。高通滤波器可以检测变化尖锐,明显的地方,低通可以让图像变得平滑,消除噪培野声;

5. 滤波作用 : 高通滤波器 用于 边缘检测 , 低通滤波器 用于图像 平滑去噪 ;

6. 线性滤波 :方框滤波/均值滤波/高斯滤波;

7. 非线性滤波 :中值滤波/双边滤波;

利用给定像素周围的像素值决定此像素的最终输出值的一种算子;

一种常用的领域算子,像素输出取决于输入像素的加权和:

 方框滤波(box Filter)被封装在一个名为boxFilter的函数中,即boxFilter函数的作用是使用方框滤波器(box filter)来模糊一张图片,从src输入,从dst输出;方框滤波核:

normalize = true 与均值滤波相同       normalize = false 很容易发扰帆生溢出

函数:

cv2.boxFilter(src,depth,ksize,normalize)

参数说明:

参数1:输入图像

参数2:目标图像深度

参数3:核大小

参数4:normalize

均值滤波是一种最简单缓中雹的滤波处理,它取的是卷积核区域内元素的均值,用cv2.blur()实现

函数 :cv2.blur(src, ksize)

参数说明:

参数1:输入原图

参数2:kernel的大小,一般为奇数

高斯滤波是一种线性平滑滤波,适用于消除高斯噪声,广泛应用于图像处理的减噪过程。高斯滤波的卷积核权重并不相同,中间像素点权重最高,越远离中心的像素权重越小。其原理是一个2维高斯函数)

高斯滤波相比均值滤波效率要慢,但可以有效消除高斯噪声,能保留更多的图像细节,所以经常被称为最有用的滤波器。

函数:

cv2.Guassianblur(src, ksize, std)表示进行高斯滤波,

参数说明:

参数1:输入原图

参数2:高斯核大小

参数3:标准差σ,平滑时,调整σ实际是在调整周围像素对当前像素的影响程度,调大σ即提高了远处像素对中心像素的影响程度,滤波结果也就越平滑。

中值滤波是一种非线性滤波,是用 像素点邻域灰度值的中指代替该点的灰度值,中值滤波可以去除椒盐噪声和斑点噪声。

函数:

cv2.medianBlur(img,ksize)

参数说明:

参数1:输入原图

参数2:核大小

双边滤波是一种非线性的滤波方法,是结合图像的空间邻近度和像素值相似度的一种折中处理,同时考虑空间与信息和灰度相似性,达到保边去噪的目的,具有简单、非迭代、局部处理的特点。

函数 :cv2.bilateralFilter(src=image, d, sigmaColor, sigmaSpace)

参数说明:

参数1:输入原图

参数2:像素的邻域直径

参数3:灰度值相似性高斯函数标准差

参数4:空间高斯函数标准差

目的

直方图均衡化是将原图像通过某种变换,得到一幅灰度直方图为均匀分布的新图像的方法。

基本思想

对在图像中像素个数多的灰度级进行展宽,而对像素个数少的灰度级进行缩减。从而达到清晰图像的目的。

函数

cv2.equalizeHist(img)

参数1:待均衡化图像

步骤

统计直方图中每个灰度级出现的次数;

计算累计归一化直方图;

重新计算像素点的像素值

Gamma变换是对输入图像灰度值进行的非线性操作,使输出图像灰度值与输入图像灰度值呈指数关系:

目的:

Gamma变换就是用来图像增强,其提升了暗部细节,通过非线性变换,让图像从暴光强度的线性响应变得更接近人眼感受的响应,即将漂白(相机曝光)或过暗(曝光不足)的图片,进行矫正。

r 0图像变暗, r 0图像变亮

关键词:均值滤波器 高斯滤波器 box滤波器

相关新闻

一点销电子网

Yidianxiao Electronic Website Platform

Tel:0512-36851680
E-mail:King_Zhang@Lpmconn.com
我们欢迎任何人与我们取得联系!
请填写你的信息,我们的服务团队将在以您填写的信息与您取得联系。
*您的姓名
*电话
问题/建议
承诺收集您的这些信息仅用于与您取得联系,帮助您更好的了解我们。