图像处理中常用的降噪滤波器都有哪些? 它们分别适用于哪些场合?

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了图像处理中常用的降噪滤波器都有哪些? 它们分别适用于哪些场合?相关的知识,希望对你有一定的参考价值。

不同的滤波器用于不同的噪声,很难说某一个降噪滤波器能符所有的噪声。
首先,说一下噪声的类型吧,噪声的分类和该噪声的分布符合什么模型有关,常见的噪声有高斯白噪声、椒盐噪声、泊松分布噪声、指数分布噪声等。
其次,采用的滤波器有空域滤波器,比如均值滤波器、中值滤波器、低通滤波器、高斯滤波等;频域滤波器,比如小波变换、傅里叶变换、余弦变换等;形态学滤波器,主要是通过膨胀和腐蚀等形态学操作进行去噪。
第三,对应场合。一般平时见的比较多是是高斯白噪声,像用均值滤波、中值滤波、高斯滤波可以去噪。还有在低照度下,比如晚上拍照时的图像,一般属于泊松分布的噪声,可以采用一些3d去噪算法,比如效果不错的BM3D算法。像椒盐噪声,一般用中值滤波基本可以去噪。
大概了解就这么多了,如果你还想深入了解的话,可以找一些图像专业方面的书籍,或者找一些去噪方面的综述性的论文看看。
参考技术A 图像处理中常用的降噪滤波器有:
(1):电感滤波器;
(2):电容滤波器;
(3):L型即电感与电容组成的滤波器;
(4)π型:LCπ型滤波器,RCπ型滤波

其中可适用于:
(1):由光和电的基本性质所引起的噪声。如电流的产生是由电子或空穴粒子的集合,定向运动所形成。因这些粒子运动的随机性而形成的散粒噪声;导体中自由电子的无规则热运动所形成的热噪声;根据光的粒子性,图像是由光量子所传输,而光量子密度随时间和空间变化所形成的光量子噪声等。 
(2):电器的机械运动产生的噪声。如各种接头因抖动引起电流变化所产生的噪声;磁头、磁带等抖动或一起的抖动等。   
(3):器材材料本身引起的噪声。如正片和负片的表面颗粒性和磁带磁盘表面缺陷所产生的噪声。随着材料科学的发展,这些噪声有望不断减少,但在目前来讲,还是不可避免的。   
(4):系统内部设备电路所引起的噪声。如电源引入的交流噪声;偏转系统和箝位电路所引起的噪声等。

基于维纳滤波的图像运动模糊还原matlab仿真

1.算法描述

        在信号处理中,维纳滤波是常用的降噪方法,它能够把实际信号从带有噪声的观测量中提取出来,无论是在语言信号还是图像信号中,维纳滤波都有重要的应用。维纳滤波是一种线性最小均方误差(LMMSE)估计,线性指的是这种估计形式是线性的,最小方差则是我们后面构造滤波器的优化准则,也就是说实际信号与估计量的差 yy^ 要有最小的方差。而维纳滤波就是要构造一种滤波器,使得观测信号通过滤波器后能够得到的输出是实际信号的最小均方误差估计。最后说明一下,本文讲述的维纳滤波都是基于离散时间域的,一方面是因为在实际中一般需要处理的都是离散的情况,另一方面是对于连续域的情况分析较为复杂抽象故这里不予讨论。

 

        维纳滤波(wiener filtering) 一种基于最小均方误差准则、对平稳过程的最优估计器。这种滤波器的输出与期望输出之间的均方误差为最小,因此,它是一个最佳滤波系统。它可用于提取被平稳噪声污染的信号。从连续的(或离散的)输入数据中滤除噪声和干扰以提取有用信息的过程称为滤波,这是信号处理中经常采用的主要方法之一,具有十分重要的应用价值,而相应的装置称为滤波器。根据滤波器的输出是否为输入的线性函数,可将它分为线性滤波器和非线性滤波器两种。维纳滤波器是一种线性滤波器。

 

 

 

 

       对原始图像进行维纳滤波的算法是首先估计出每个像素点的M*N邻域内的平均值和方差值。有如下两个表达式计算:

 

 

 

 

        用如下的表达式计算输出的灰度值。其中a(n1,n2)是调整前的灰度值,b(n1,n2)是调整后的灰度值。

 

 

 

 

         维纳滤波的基本原理是:设观察信号yt)含有彼此统计独立的期望信号xt)和白噪声ω(t)可用维纳滤波从观察信号yt)中恢复期望信号xt)。从噪声中提取信号波形的各种估计方法中,维纳(Wiener)滤波是一种最基本的方法,适用于需要从噪声中分离出的有用信号是整个信号(波形),而不只是它的几个参量。设维纳滤波器的输入为含噪声的随机信号。期望输出与实际输出之间的差值为误差,对该误差求均方,即为均方误差。因此均方误差越小,噪声滤除效果就越好。为使均方误差最小,关键在于求冲激响应。如果能够满足维纳-霍夫方程 ,就可使维纳滤波器达到最佳。

 

优点:适应面较广,无论平稳随机过程是连续的还是离散的,是标量的还是向量的,都可应用。对某些问题,还可求出滤波器传递函数的显式解,并进而采用由简单的物理元件组成的网络构成维纳滤波器。

 

缺点:要求得到半无限时间区间内的全部观察数据的条件很难满足,同时它也不能用于噪声为非平稳的随机过程的情况,对于向量情况应用也不方便。因此,维纳滤波在实际问题中应用不多。

 

2.仿真效果预览

matlab2022a仿真结果如下:

 

 

 

 

 

 

 

 

3.MATLAB核心程序

 

%***********************维娜复原程序********************
figure(2);
subplot(231),imshow(I),title(\'原始图像\');
 
LEN = 20;
THETA =10;
PSF = fspecial(\'motion\',LEN,THETA);
 
Blurred = imfilter(I,PSF,\'circular\');
subplot(232),imshow(Blurred),title(\'生成的运动的模糊的图像\');
 
noise = 0.1*randn(size(I));
subplot(233),imshow(im2uint8(noise)),title(\'随机噪声\');
 
BlurredNoisy=imadd(Blurred,im2uint8(noise));
subplot(234),imshow(BlurredNoisy),title(\'添加了噪声的模糊图像\');
 
Move=deconvwnr(Blurred,PSF);
subplot(235),imshow(Move),title(\'还原运动模糊的图像\');
 
nsr = sum(noise(:).^2)/sum(im2double(I(:)).^2);
wnr2 = deconvwnr(BlurredNoisy,PSF,nsr);
subplot(236),imshow(wnr2),title(\'还原添加了噪声的图像\');
 
%*************************维纳滤波应用于边缘提取****************************
N = wiener2(I,[3,3]);%选用不同的维纳窗在此修改
M = I - N;
My_Wedge = im2bw (M,5/256);%化二值图像
BW1 = edge(I,\'prewitt\');
BW2 = edge(I,\'canny\');
BW3 = edge(I,\'zerocross\');
BW4 = edge(I,\'roberts\');
 
figure(3)
subplot(2,4,[3 4 7 8]),imshow(My_Wedge),title(\'应用维纳滤波进行边沿提取\');
subplot(241),imshow(BW1),title(\'prewitt\');
subplot(242),imshow(BW2),title(\'canny\');
subplot(245),imshow(BW3),title(\'zerocross\');
subplot(246),imshow(BW4),title(\'roberts\');
 
%*************************维纳滤波应用于图像增强***************************
for i = [1 2 3 4 5]
    K = wiener2(I,[5,5]);
end
 
  K = K + I;

 

  

 

以上是关于图像处理中常用的降噪滤波器都有哪些? 它们分别适用于哪些场合?的主要内容,如果未能解决你的问题,请参考以下文章

基于维纳滤波的图像运动模糊还原matlab仿真

单片机控制ADC的常用方法都有哪些

OpenCV 例程200篇100. 自适应局部降噪滤波器

基于MATLAB的平滑滤波降噪系统(通信毕业设计)

JAVA目前比较常用的缓存都有哪些? 集中式缓存与分布式缓存有何区别? 它们应用场景是?

面试突击Mysql:Mysql都有哪些特性?分别适用于哪些场景?