过滤器的阶数和长度之间的差异

信息处理 过滤器 有限脉冲响应 术语
2022-02-18 05:25:48

让通道被建模为阶数为 的 FIR 模型L数学上,(1)yn=k=1Lhkunk在哪里u是输入到通道的数据,h是通道系数。在统计学中,该模型y被称为带有 order 的移动平均过程L在信号处理中,L称为长度。考虑一个有 3 个系数的例子,即。h1,h2,h3

困惑1:我的困惑是,这个例子的顺序是什么?有 3 个系数,所以顺序应该是 3。我对这些术语感到困惑 - 顺序、长度和延迟。

困惑2:有人可以澄清这个例子的顺序是什么吗?请纠正我在哪里犯了任何错误。

在 Matlab 中,我实现了方程(1),如下所示:

N = 1000;
u = rand(1,N);
for n = 3 : N
    y(n) = h(1)*u(n) + h(2)*u(n-1) + h(3)*u(n-2);
end
1个回答

在您的示例中,订单是2长度是3.

它更多地与惯例有关。考虑一个多项式x

anxn+an1xn1+...a0x0
这个多项式的阶是n,而系数的数量是n+1. 在你的情况下,一个 FIR 滤波器的顺序L, 是你写成的多项式:
hLδ(nL)+hL1δ(nL+1)+...h0δ(n)
z-其中的变换是:
hLzL+hL1zL+1+...+h1z1+h0z0
请注意这个你可能还没有研究过的变换,它只是将移位放在δ(n)在电源上z,例如,z0δ(n)对应于无延迟,只是缩放输入信号。z1δ(n1)对应顺序1和一个延迟。

我认为真正的混乱来自 MATLAB,因为它不允许0作为第一个索引值。您不能在 MATLAB 中编写 x(0)。第一个索引是1. 因此,我们必须从 x(1) 开始。