低通滤波的神器工具,推荐你试试HICUT.m,在 MATLAB 里跑起来还挺顺。它做的事也不复杂,就是把输入向量里超过某个频率阈值的成分砍掉,留下平滑干净的部分,蛮适合做信号降噪或者平滑的。

MATLAB自带一些滤波器设计工具没错,比如fir1butter这些都好用,但有时候你就想快速上手,那HICUT就比较轻量,直接调用也方便。

用法也简单,解压hicut.zip,把HICUT.m丢到你的工作目录,在命令窗口敲help hicut看看,基本上就是传个向量,再加个阈值,它就给你搞定。

我平时做图像平滑、语音降噪都会拿这个用一用,响应也快,效果也还不错。你要是搞时间序列的平滑趋势,也适合。

嗯,对了,如果你还想研究更深入的设计思路,像是基于窗函数的 FIR 或者 IIR 滤波器设计,也可以看看它的源码,说不定还能学点新招。

如果你对滤波器设计挺感兴趣,推荐你也瞅瞅这些:

如果你经常用 MATLAB 搞信号,可以把HICUT.m放工具箱里,省得下次又找。