matlab 滤波

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了matlab 滤波相关的知识,希望对你有一定的参考价值。

想设计一个巴特沃斯低通滤波器,想求matlab代码,从原信号m,得滤波后的信号x。觉得找了好几个参考书,设计滤波器时参数设计不一致,而且不会怎么用此滤波器。
已知:fp=80,fs=100,rp=0.92,rs=20.采样频率Fs=500.

请不要粘贴无关内容,望高手赐教。
高手,我想知道最后怎么滤波,就是得到滤波器后,从原信号m到处理得到x,所需要的代码。望不吝赐教!

参考技术A %请在7.0以上版本使用,版权所有:Matlab中文论坛

Fs = 500; % Sampling Frequency

Fpass = 80; % Passband Frequency
Fstop = 100; % Stopband Frequency
Apass = 0.92; % Passband Ripple (dB)
Astop = 20; % Stopband Attenuation (dB)
match = 'stopband'; % Band to match exactly

% Construct an FDESIGN object and call its BUTTER method.
h = fdesign.lowpass(Fpass, Fstop, Apass, Astop, Fs);
Hd = butter(h, 'MatchExactly', match);

%回答你的问题补充

y = filter(Hd,x)本回答被提问者和网友采纳

用matlab设计低通滤波器

偶是一菜鸟,刚刚学习数字信号处理,要用matlab设计一个低通滤波器,请问哪位高手会做,给小弟一点指点吧,多谢了,最好是能给出源代码,在下的邮箱是wangxingyue1987@163.com,有什么可以发到我的邮箱里面,谢谢了!!

matlab 低通滤波器设计步骤:
根据数字滤波器的技术指标先设计过渡模拟滤波器得到系统函数ha(s),然后将ha(s)按某种方法(本实验采用双线性变换法)转换成数字滤波器的系统函数h(z)。具体为:
(1)确定巴特沃斯数字低通滤波器的技术指标:通带边界频率ωp,阻带截止频率ωs,通带最大衰减аp,阻带最小衰减аs。
(2)将数字滤波器的技术指标转换为模拟滤波器的技术指标。这里指ωp和ωs的变换而аp和аs保持不变。本题采用双线性变换法,其转换公式为:
  (3)根据技术指标ωp、ωs、ωp和ωs用下面公式求出滤波器的阶数。
  (4)根据n由表1.4求出归一化极点kp和归一化低通原型系统函数ga(p)。
  
  低通滤波器简介:
  低通滤波器概念有许多不同的形式,其中包括电子线路(如音频设备中使用的hiss 滤波器)、平滑数据的数字算法、音障(acoustic barriers)、图像模糊处理等等,这两个工具都通过剔除短期波动、保留长期发展趋势提供了信号的平滑形式。
  低通滤波器在信号处理中的作用等同于其它领域如金融领域中移动平均数(moving average)所起的作用;
  低通滤波器有很多种,其中,最通用的就是巴特沃斯滤波器和切比雪夫滤波器。
参考技术A IIR butterworth的,fdatool产生的:

function Hd = test1
%TEST1 Returns a discrete-time filter object.

%
% M-File generated by MATLAB(R) 7.0.4 and the Signal Processing Toolbox 6.3.
%
% Generated on: 25-Jun-2009 15:15:00
%

% Butterworth Lowpass filter designed using FDESIGN.LOWPASS.

% All frequency values are in Hz.
Fs = 48000; % Sampling Frequency

Fpass = 9600; % Passband Frequency
Fstop = 12000; % Stopband Frequency
Apass = 1; % Passband Ripple (dB)
Astop = 80; % Stopband Attenuation (dB)
match = 'stopband'; % Band to match exactly

% Construct an FDESIGN object and call its BUTTER method.
h = fdesign.lowpass(Fpass, Fstop, Apass, Astop, Fs);
Hd = butter(h, 'MatchExactly', match);

% [EOF]本回答被提问者采纳

以上是关于matlab 滤波的主要内容,如果未能解决你的问题,请参考以下文章

求助关于matlab滤波功能

基于matlab数字滤波器的性能分析

用matlab设计低通滤波器

怎样用MATLAB实现中值和均值滤波

matlab 低通滤波器设计

3.15matlab 高斯滤波,快速滤波