function [output] = myfilter(singal,low,high,Fs)
%Author:Justice_Wby 2023.22
%singal 待滤波信号 [low,high]通带区间 Fs信号采样频率
wp=[low/(Fs/2) high/(Fs/2)];
N=128;
b=fir1(N,wp,blackman(N+1));
output = filtfilt(b,1,singal);
end可用 效果还不错
我的目的为了取0.94这一阶模态


附上通过Matlab可以自己构造滤波器的过程


需要手动在matlab里进行卷积进行调用,而不是通过函数
该函数myfilter使用fir1设计了一种线性相位FIR滤波器,结合blackman窗函数,对输入信号singal进行滤波。通带范围为[low,high],采样频率为Fs。通过filtfilt进行双递归滤波,以达到无损滤波效果,特别是针对0.94这一阶模态的应用。
4233

被折叠的 条评论
为什么被折叠?



