some filters

最近在做图像处理方面的一些工作,和几个滤波器打了不少交道,这里做个总结。滤波器是信号处理上的概念,但是信号处理那套理论的应用范围很广,我主要用的是在图像处理上的应用。这篇文章主要讲滤波器的功能和matlab中的使用方法,至于原理,我也不太懂...

图像常常被强度随机信号所污染.一些常见的噪声有椒盐(Salt & Pepper)噪声、脉冲噪声、高斯噪声等。椒盐噪声含有随机出现的黑白强度值,而脉冲噪声则只含有随机的白强度值(正脉冲噪声)或黑强度值(负脉冲噪声)。与前两者不同,高斯噪声含有强度服从高斯或正态分布的噪声。

(1)高斯低通滤波器

高斯滤波器是响应脉冲为高斯形状的滤波器,对于图像来说,高斯滤波器是利用高斯核的一个2维的卷积算子,用于图像模糊化(平滑,去除细节和噪声)。在matlab中可以利用函数w=fspecial('gaussian',[5 5],0.8)产生一个高斯核,在这个函数中,第二个参数是窗的大小,第三个参数高斯函数中的那个标准差。下面这个图展示了这个高斯窗和其二维分布:

可以看出是个高斯函数的样子。这个过滤器的过滤结果就是每个像素的值变成窗内邻居像素的加权和,如果看灰度直方图的话,可以明显的看出直方图会变平滑。用此滤波器进行滤波在matlab里面也非常简单:g=imfilter(f,w);

(2)均值滤波器

均值滤波器也很简单,就是像素的值用它窗内邻居的平均值来代替。w=fspecial('average',5)。主要应用于平滑噪声,但是跟上面的高斯滤波器比,它的平滑手段显然更粗暴些,邻域的值不管远近一律平等,高斯滤波器还至少根据远近有些区分。

(3)中值滤波器

中值滤波器就是用窗内的中间值代替该像素的值,也多用于减少噪声,特别对于椒盐噪声有很好的效果。中值滤波器在matlab里的实现与上面两个有些不同,它的用法是

g=medfilt2(f ,[r c])。

(4)维纳滤波器

相对上面的四个滤波器维纳滤波器比较复杂一点,它经常用在复原信号上,因此也是图像去噪的方法之一,和高斯噪声和均值噪声一样,能起到平滑的效果,效果还会更好一点,因为它能估计这个像素最应该的值的是什么。这个滤波器原理比较复杂,不在多述,找到相关资料再补充。

maltab已经实现了这个滤波器:g=wiener2(f,[r c])。

 

引用中提到了filter()方法,它可以创建一个新数组,返回的是所有匹配元素组成的数组。该方法的语法是arr.filter(callback(item, index, array))。其中callback是一个回调函数,用来对数组中的每个元素进行判断,如果返回值为true,则将该元素添加到新数组中。参数item表示当前的元素,index表示当前元素的索引,array表示原始数组。 引用给出了一个例子,使用filter()方法在数组中根据搜索条件来过滤内容。在这个例子中,首先定义了一个fruits数组,然后定义了一个filterItems函数,该函数接受一个查询条件作为参数。在函数内部,使用filter()方法对fruits数组进行过滤,判断每个元素是否包含查询条件。最后返回符合条件的元素组成的新数组。 所以,arr.filter()表示对数组arr进行过滤操作,根据条件来筛选出符合条件的元素,并返回一个新的数组。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* *3* [数组filter()方法](https://blog.csdn.net/passWordEnterX/article/details/120462133)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"] - *2* [js操作数组的一些Array.some() 、Array.filter(),](https://blog.csdn.net/YZ_ZZZ24/article/details/124488978)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"] [ .reference_list ]
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值