原创 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陷波器的设计方法:
图可进帖子看。其实就是本博客中另一篇“陷波器”中的一个内容。
---------------------------------------------
PARTNER CONTENT

文章评论0条评论)

登录后参与讨论
EE直播间
更多
我要评论
0
9
关闭 站长推荐上一条 /3 下一条