自适应滤波器输入向量和迭代
Adaptive Filter input vectors and iteration
我正在尝试实现用于噪声消除的自适应滤波器,特别是用于从信号中去除运动伪影的 RLS 滤波器。为此,我正在阅读一些文献,有一件事我不明白,我发现的每一本书或每一篇文章都假设我现在已经这样做了。
我有一个参考信号,表示为 Python 中包含大约 8000 个元素或样本的列表。我需要将其输入到 RLS 过滤器,但我发现的每个算法总是将输入向量讨论为
X[n] = [x1[n], x2[n], x3[n], ........, xM[n]]T
其中X是输入向量,n是一个时刻。这就是我迷路的地方。如果 n 是一个时刻,则意味着 x[n] 是列表中的一个元素,一个样本。但如果是这样的话,x1, x2, ...., xM是什么???。
我意识到这不是一个严格的编码问题,但我希望有人能提供帮助!
谢谢...
你的解释是正确的。 X 输入向量递归地乘以滤波器系数。自从我编写自适应滤波器以来已经有一段时间了,但如果我没记错的话,您正在将 M
滤波器系数乘以最新的 M
输入值以获得更新。
所以M
是你滤波器的阶数,或者说滤波器系数的个数,n
是你要滤波的信号长度。正如您所注意到的,您的递归过滤器将为每个过滤输出计算查看这些输入值的 'window'。
我正在尝试实现用于噪声消除的自适应滤波器,特别是用于从信号中去除运动伪影的 RLS 滤波器。为此,我正在阅读一些文献,有一件事我不明白,我发现的每一本书或每一篇文章都假设我现在已经这样做了。
我有一个参考信号,表示为 Python 中包含大约 8000 个元素或样本的列表。我需要将其输入到 RLS 过滤器,但我发现的每个算法总是将输入向量讨论为
X[n] = [x1[n], x2[n], x3[n], ........, xM[n]]T
其中X是输入向量,n是一个时刻。这就是我迷路的地方。如果 n 是一个时刻,则意味着 x[n] 是列表中的一个元素,一个样本。但如果是这样的话,x1, x2, ...., xM是什么???。
我意识到这不是一个严格的编码问题,但我希望有人能提供帮助!
谢谢...
你的解释是正确的。 X 输入向量递归地乘以滤波器系数。自从我编写自适应滤波器以来已经有一段时间了,但如果我没记错的话,您正在将 M
滤波器系数乘以最新的 M
输入值以获得更新。
所以M
是你滤波器的阶数,或者说滤波器系数的个数,n
是你要滤波的信号长度。正如您所注意到的,您的递归过滤器将为每个过滤输出计算查看这些输入值的 'window'。