matlab信号相位概率密度函数_matlab的滤波函数filter与filtfilt比较(matlab)

matlab信号相位概率密度函数_matlab的滤波函数filter与filtfilt比较(matlab)_第1张图片

matlab的滤波函数filter与filtfilt比较

摘要

滤波器应用非常广泛,例如根据位置数据对机器人速度和加速度进行估计时,差分运算会放大噪声,滤波环节是必不可少的。 filter滤波器称为一维数字滤波器。filtfilt滤波器称为零相位数字滤波。其滤波算法是基于filter而来的。只是filtfilt实现了零相位。其基本实现过程为先让信号用filter滤波,再将信号时域反转再次通过filter滤波,这样两次滤波后相位实现了零相位。filter滤波有明显的延迟,filtfilt几乎没有延迟。

filter与filtfilt函数比较

(1)设置三种频率(10Hz,20Hz,30Hz)构成的信号y1

f1

(2)设计滤波参数,分别用filter滤波器和filtfilt滤波器把30Hz的信号滤掉。

%滤波

(3)绘制滤波效果图和FFT频谱分析图,对比滤波效果。

matlab信号相位概率密度函数_matlab的滤波函数filter与filtfilt比较(matlab)_第2张图片

如图所示,第1个时域图可以发现经过filter滤波的信号比原始信号明显有延迟,而经过filtfilt滤波后的信号几乎没有延迟。第2频谱图可以发现,按照设计的参数,两个滤波器都能把频率为30Hz的信号滤除了。 以上分析的完整matlab代码如下:

%滤波器比较

## 参考资料 matlab filter函数滤波器系数设计

你可能感兴趣的:(matlab数字信号频谱图)