Matlab中的filter函数和butter函数

最近在用MATLAB处理数据时,需要用到Butterworth滤波器,网上查找了一些资料,这里罗列了MATLAB中butter函数的具体使用说明。

butter函数是求Butterworth数字滤波器的系数,在求出系数后对信号进行滤波时用filter函数。

设计滤波器就是设计滤波器系数[B,A]。
[B,A] = BUTTER(N,Wn,'high') ---用来设计高通滤波器
[B,A] = BUTTER(N,Wn,'low') designs a lowpass filter.--低通滤波器
[B,A] = BUTTER(N,Wn)--带通滤波器

N是滤波器的阶数,不熟的话,大概取个整数就可以了。Wn的确定跟你的采样频率Fs有关。

对于原始信号x。
比如说你的采样频率Fs=1000Hz,设计一个8阶、通带为100-200Hz的带通滤波器:
[b,a]=butter(8,[0.2 0.4])=butter(8,[100/(1000/2) 200/(1000/2) ])
这里Fa=Fs/2,Fa是分析频率
得到滤波器系数后,就可以直接用了。
y=filter(B,A,x)

参考链接:http://www.ilovematlab.cn/thread-57684-1-1.html


你可能感兴趣的:(41,学术科研)