滤波器的设计(低通、带通、高通)的matalb代码 |
您所在的位置:网站首页 › matlab简单低通滤波器 › 滤波器的设计(低通、带通、高通)的matalb代码 |
这是之前用到的几个简单的滤波器的程序,滤波器的设计比较简单。可以直接使用matlab里的FDA,导出滤波器系数即可。 再就是参考数字信号处理课本里面三种滤波器设计的方法,由过渡带和所选的窗函数推导出滤波器阶数,进一步根据firl和filter函数编写即可。 下面给出三种滤波器的简单代码: 低通:用的hanning窗 function [y]=fir_lpf(x,Fs,fs,fp) %该函数采用hanning窗实现低通滤波 %x为输入信号,fs,为采样频率 %fs,fp分别为阻带截至频率和通带截至频率 %20150615 by boat %求对应角频率 ws=fs*2*pi/Fs; wp=fp*2*pi/Fs; %求滤波器的最小阶数 B=ws-wp; %过渡带宽取二者中较小的 N=ceil(6.2*pi/B); %计算滤波器系数 wc=(ws+wp)/2; hn=fir1(N-1,wc,hanning(N)); y=filter(hn,1,x); freqz(hn)
带通:这里用的布拉克曼窗 function [y]=fir_bpf(x,fs,fs2,fp2,fp1,fs1) %该函数采用blackman窗实现带通滤波 %x为输入信号,fs,为采样频率 %fs2,fp2分别为阻带上截至频率和通带上截至频率 %fp1,fs1分别为通带下截止频率和阻带下截至频率 %ps:输入时以上四个滤波参数按从大到小输入即可 |
今日新闻 |
推荐新闻 |
CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3 |