lzth.net
当前位置:首页 >> mAtlAB调用滤波器函数 >>

mAtlAB调用滤波器函数

用filter函数,比如 [B,A]=butter(N,Wn); y=filter(B,A,x); plot(x,y)

数字滤波是Matlab信号处理中的常用功能.具体步骤为:step1:设计好滤波器系数,b和a.其中b,a存储了滤波器响应传递函数的分子和分母系数.step2:产生输入信号x step3:实现滤波y=filter(b,a,x),画出输出波形y.下面来看Matlab例程.

看你用Fdatool设计的是FIR滤波器还是IIR.若是前者,则需要在Fdatool界面的File下选择Export,注意输出的变量名默认为Num,此时需要这样设置,b=Num,a=1;而后滤波,filteredA=filter(b,a,A); 若是后者,同样选择Export,并注意输出变量名(注意大小写),并调用[b,a]=sos2tf(SOS,G);而后滤波,filteredA=filter(b,a,A);

Y = FILTER(B,A,X) filters the data in vector X with the filter described by vectors A and B to create the filtered data Y. 打help filter自己看下 那得看你得到的是什么滤波器了Ws>Wp是低通,Wp>Ws是高通

用于频域滤波:function H = hpfilter(type, M, N, D0, n) if nargin == 4 n = 1; end hlp = lpfilter(type, M, N, D0, n); H = 1 - hlp;

函数fftfilt的调用格式为 y=fftfilt(b,x) 该格式是利用基于FFT的重叠相加法对数据进行滤波,这种频域滤波技术只对FIR滤波器有效.该函数是通过向量b描述的滤波器对x数据进行滤波.x是等待滤波的信号;b是FIR滤波器的H(z)的分子多项式系数

在主界面敲入fdatool,在出来的界面上输入你的设置值,这样做比编程方便.

wp中的2*30/fs 那个30就是通带截止频率 那个改成2000 把fs再改大一点大于4000就可以了

function [B] = hw7_b(file_name, block_size) % EE 8541 % HW 1 Problem #7b % Performs a median filter on gray image given by file_name. % Works on a block of of size

你得到系数a,b后,你信号也知道吧,假设是x,然后你就用y=filter(b,a,x);我当时学时也很困惑怎么用,后来我做的尝试,我给你一个例子看看吧,是我学习时自己写的设计一个高通滤波器,并检验它的性能采样率为10kHZ阻带边缘为1.5Khz,

9647.net | fkjj.net | qhgj.net | nwlf.net | gyzld.cn | 网站首页 | 网站地图
All rights reserved Powered by www.lzth.net
copyright ©right 2010-2021。
内容来自网络,如有侵犯请联系客服。zhit325@qq.com