原创
matlab 中哪个命令可以实现维纳滤波器的功能
2011-6-14 14:58
7997
9
9
分类:
测试测量
http://www.chinavib.com/forum/thread-45566-1-1.html
[I,map]=imread('eight.tif');
J1=imnoise(I,'gaussian',0,0.02); % 受高斯噪声干扰,结果如图3-17(b)所示
[K noise]=wiener2(J1, [5 5]);%自适应维纳滤滤
subplot(131),imshow(I);title('原图l')
subplot(132),imshow(J1);title('噪声干扰图')
subplot(133),imshow(K);title('滤波后图像')
自适应维纳滤滤波示例,仅供参考。
更具体的用法参wiener2帮助文档....
---------------------------------------
设计方法很多:冲击响应不变法,双线性Z变换法等
具体步骤:(1) 将数字滤波器性能指标变换成模拟滤波器指标
(2) 归一化到低通滤波器的设计指标
(3) 设计模拟低通滤波器
(4) 转换成所需的模拟滤波器转移函数
(5) 将所得的转移函数数字化得到需要的数字滤波器
说明:此方法适合与带通、带阻、高通滤波器的设计
以上每个步骤都有相应的实现函数,不再一一列出
函数butter(巴特沃数字斯滤波器)
函数chey1(切比雪夫1型数字斯滤波器)
可以实现上边的5个步骤;
更详细的请参看文献《数字信号处理》 清华大学出版社 胡广书
最后一点建议:你的这些都可以在书上找得到,算是很基础的东西。
与其在这里问,还不如好好看下书本.....
----------------------------------------------
以下给出IIR陷波器的设计方法:
图可进帖子看。其实就是本博客中另一篇“陷波器”中的一个内容。
---------------------------------------------
文章评论(0条评论)
登录后参与讨论