目录
前言
本系列最后一篇,记一下FIR滤波器的原理以及Matlab中的使用方法,以及对应使用Matlab中的Filter designer模块设计FIR和IIR滤波器。
1. 窗函数法设计FIR滤波器
按照上一篇的介绍,推导出了对于一串输入信号,其某时刻的响应是输入信号和响应函数的卷积/加权和:
(1)
基于这个想法,如果我们把输入信号u(t)看成是带噪音的原始信号x(t),想要得到降噪后的信号y(t),就可以通过卷积一个响应函数h(t)来做到,
(2)
卷积符合交换律,写成第二个等式这样便于之后推导理解
n代表第n个采样点,N是阶数,即对y(n)展开的层数
而这个h(t)就是我们下面要用的所谓的FIR滤波器(Finite impluse response),理想情况下,它的频域表达式应该是这样(牢记频域相乘等于时域卷积,时域相乘等于频域卷积):
(3)
也就是只希望在系统允许的频率范围到
的频率产生作用,对其做逆傅里叶变换,回到时域就长成了这样: