glwh 发表于 2010-11-24 17:01:18

滤波器的参数取值问题

想问一下,=butter(n,wn,'high')中滤波器阶数n如何确定?归一化截止频率wn怎么求的?
    对一个具体问题,这些参数怎么取才合适?
    以前没接触过这些问题,做大论文急用啊,在线等!

ljelly 发表于 2010-11-24 17:21:08

本帖最后由 ljelly 于 2010-11-24 17:22 编辑

看看matlab的help中关于这个函数的使用说明,介绍的很详细
= butter(n,Wn) designs an order n lowpass digital Butterworth filter with normalized cutoff frequency Wn. It returns the filter coefficients in length n+1 row vectors b and a, with coefficients in descending powers of z.

= butter(n,Wn,'ftype') designs a highpass, lowpass, or bandstop filter, where the string 'ftype' is 'high', 'low', or 'stop',

然后再看一下给的例子,思考一下你就明白了
n = 6; Wn = /500e6;
ftype = 'bandpass';

% Transfer Function design
= butter(n,Wn,ftype);
h1=dfilt.df2(b,a);      % This is an unstable filter.

% Zero-Pole-Gain design
= butter(n,Wn,ftype);
=zp2sos(z,p,k);
h2=dfilt.df2sos(sos,g);

% Plot and compare the results
hfvt=fvtool(h1,h2,'FrequencyScale','log');
legend(hfvt,'TF Design','ZPK Design')

glwh 发表于 2010-11-24 19:02:06

那在具体问题中阶数n取多少合适呢?

zhouyang664 发表于 2010-11-25 00:01:03

数字信号处理课本中都有讲的啊,通过一个式子计算出来的!
页: [1]
查看完整版本: 滤波器的参数取值问题