用matlab设计低通滤波器

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了用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实现fir滤波器(低通、高通,带通)

FIR滤波器的Matlab设计(含低通,高通,带通和带阻)

滤波器设计基于matlab GUI窗函数法高通+低通+带通带阻FIR滤波器设计含Matlab源码 072期