news 2026/4/16 16:58:59

FIR滤波器深入介绍

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
FIR滤波器深入介绍

FIR 滤波器是数字信号处理中非常重要的一类滤波器,它具有无条件稳定严格线性相位的特性,这使其在许多应用中非常受欢迎。


🧐 FIR 滤波器基础

FIR 滤波器通过将输入信号与滤波器的冲激响应进行卷积来实现滤波功能。

  • 冲激响应 (Impulse Response):它的长度是有限的,因此得名“有限冲激响应”。
  • 结构类型:FIR 滤波器属于非递归系统(Non-recursive System),这意味着它的输出只依赖于当前的输入和过去的输入样本,而不依赖于过去的输出样本。

y [ n ] = ∑ k = 0 M b k ⋅ x [ n − k ] y[n] = \sum_{k=0}^{M} b_k \cdot x[n-k]y[n]=k=0Mbkx[nk]

其中:

  • y [ n ] y[n]y[n]是时刻n nn的输出信号。
  • x [ n ] x[n]x[n]是时刻n nn的输入信号。
  • b k b_kbk是滤波器的系数(通常称为“抽头”或“Taps”),它们就是滤波器的冲激响应h [ k ] h[k]h[k]
  • M MM是滤波器的阶数,滤波器的长度(抽头数)为N = M + 1 N = M + 1N=M+1

🏛️ FIR 滤波器的典型架构:直接形式 I (Direct Form I)

最常见和最直观的 FIR 滤波器架构是直接形式 I,也称为横向结构(Transversal Structure)。

这种结构由以下基本单元组成:

  1. 延迟单元 (Delay Elements,z − 1 z^{-1}z1):用于存储输入信号的过去M MM个样本。在数字实现中,这通常是一个移位寄存器环形缓冲区
    • 在时刻n nn,移位寄存器存储了输入信号的{ x [ n ] , x [ n − 1 ] , … , x [ n − M ] } \{x[n], x[n-1], \dots, x[n-M]\}{x[n],x[n1],,x[nM]}这些样本。
  2. 乘法器 (Multipliers):每个延迟的输入样本x [ n − k ] x[n-k]x[nk]都与相应的滤波器系数b k b_kbk相乘。
  3. 加法器 (Summers/Accumulators):所有乘法的结果被累加起来,产生最终的输出样本y [ n ] y[n]y[n]

架构特点总结:

  • 简单直观:这种结构直接对应于 FIR 滤波器的卷积求和公式。
  • 计算量:对于一个N NN阶(M = N − 1 M=N-1M=N1)的滤波器,每个输出样本需要N NN次乘法和N − 1 N-1N1次加法。
  • 存储需求:需要存储N NN个输入样本和N NN个系数b k b_kbk

📐 线性相位 FIR 滤波器的对称结构

FIR 滤波器的一个最大优点是可以轻松设计成严格线性相位。线性相位意味着滤波器的群延迟是常数,不会引起信号的相位失真(即信号中不同频率分量的延迟时间相同)。

当滤波器系数满足对称反对称关系时,即可实现线性相位:

  • 对称:b k = b M − k b_k = b_{M-k}bk=bMk
  • 反对称:b k = − b M − k b_k = -b_{M-k}bk=bMk

利用这种对称性,可以设计出简化的结构减少乘法器的数量,从而降低计算复杂度并节省硬件资源。

简化结构原理:

以对称系数为例,如M = 4 M=4M=4的滤波器:
y [ n ] = b 0 x [ n ] + b 1 x [ n − 1 ] + b 2 x [ n − 2 ] + b 3 x [ n − 3 ] + b 4 x [ n − 4 ] y[n] = b_0 x[n] + b_1 x[n-1] + b_2 x[n-2] + b_3 x[n-3] + b_4 x[n-4]y[n]=b0x[n]+b1x[n1]+b2x[n2]+b3x[n3]+b4x[n4]
因为b 0 = b 4 b_0=b_4b0=b4b 1 = b 3 b_1=b_3b1=b3,可以重写为:
y [ n ] = b 0 ( x [ n ] + x [ n − 4 ] ) + b 1 ( x [ n − 1 ] + x [ n − 3 ] ) + b 2 x [ n − 2 ] y[n] = b_0 (x[n] + x[n-4]) + b_1 (x[n-1] + x[n-3]) + b_2 x[n-2]y[n]=b0(x[n]+x[n4])+b1(x[n1]+x[n3])+b2x[n2]

  • 操作变化:变为先进行加法,然后用一个系数进行乘法
  • 优势:乘法次数从N NN次(5次)减少到大约N / 2 N/2N/2次(3次)。

⚡ 快速 FIR 滤波:利用 FFT

对于非常高阶的 FIR 滤波器,直接形式或对称形式的实时实现可能需要大量的乘法运算。在这种情况下,可以利用快速傅里叶变换 (FFT)来实现滤波,基于时域卷积相当于频域相乘的原理:

y [ n ] = x [ n ] ∗ h [ n ] ⇔ Y [ k ] = X [ k ] ⋅ H [ k ] y[n] = x[n] * h[n] \quad \Leftrightarrow \quad Y[k] = X[k] \cdot H[k]y[n]=x[n]h[n]Y[k]=X[k]H[k]

实现步骤 (重叠相加法/重叠保留法):

  1. 将长输入信号x [ n ] x[n]x[n]分割成较短的块。
  2. 对输入信号块x b l o c k [ n ] x_{block}[n]xblock[n]和滤波器冲激响应h [ n ] h[n]h[n]进行FFT得到X b l o c k [ k ] X_{block}[k]Xblock[k]H [ k ] H[k]H[k]
  3. 在频域将它们相乘得到Y b l o c k [ k ] = X b l o c k [ k ] ⋅ H [ k ] Y_{block}[k] = X_{block}[k] \cdot H[k]Yblock[k]=Xblock[k]H[k]
  4. Y b l o c k [ k ] Y_{block}[k]Yblock[k]进行IFFT得到输出信号块y b l o c k [ n ] y_{block}[n]yblock[n]
  5. 将输出块进行适当的重叠处理(取决于使用重叠相加还是重叠保留),以形成最终的输出信号y [ n ] y[n]y[n]

优势:当滤波器阶数N NN非常大时,FFT 算法的复杂度(O ( N log ⁡ N ) O(N \log N)O(NlogN))通常远低于直接卷积(O ( N 2 ) O(N^2)O(N2)O ( N ) O(N)O(N)forM MMlength filter),可以显著提高运算速度


版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/4/16 12:13:25

5大隐藏技巧:NVIDIA显卡优化工具深度解锁游戏性能提升

想要彻底释放NVIDIA显卡的隐藏潜力吗?NVIDIA Profile Inspector这款专业的显卡优化工具,能够让你突破官方控制面板的限制,实现显著的游戏性能提升。不同于常规设置,它深入驱动程序内部,提供众多未公开的高级选项&#…

作者头像 李华
网站建设 2026/4/16 12:39:43

BetterNCM终极个性化定制:从零打造专属网易云音乐深度改造方案

BetterNCM终极个性化定制:从零打造专属网易云音乐深度改造方案 【免费下载链接】BetterNCM-Installer 一键安装 Better 系软件 项目地址: https://gitcode.com/gh_mirrors/be/BetterNCM-Installer 想要彻底告别千篇一律的音乐播放器界面吗?Better…

作者头像 李华
网站建设 2026/4/16 12:40:40

实验室操作台,选这家技术强!

实验室操作台实验台:选择北京大度空间科技有限公司的技术优势引言在现代科学研究和工业生产中,实验室操作台实验台扮演着至关重要的角色。选择一个技术强大的供应商不仅能提高实验效率,还能确保实验安全和数据准确性。北京大度空间科技有限公…

作者头像 李华
网站建设 2026/4/16 12:40:42

LobeChat部署常见问题汇总及解决方案(2024最新版)

LobeChat部署常见问题汇总及解决方案(2024最新版) 在构建私有化AI助手的浪潮中,越来越多开发者面临一个共同挑战:如何将强大的大语言模型能力,以安全、高效且用户友好的方式呈现出来?直接调用OpenAI或Claud…

作者头像 李华
网站建设 2026/4/16 7:56:21

终极解决方案:用符号链接技术实现Windows应用无缝迁移

终极解决方案:用符号链接技术实现Windows应用无缝迁移 【免费下载链接】FreeMove Move directories without breaking shortcuts or installations 项目地址: https://gitcode.com/gh_mirrors/fr/FreeMove 你是否曾经面对C盘不断变红的警告而感到无助&#x…

作者头像 李华