DSP - DFT 线性滤波

DFT 为时域卷积提供了一种替代方法。它可用于在频域中执行线性滤波。

因此,$Y(\omega) = X(\omega).H(\omega)\longleftrightarrow y(n)$

这种频域方法的问题是,$Y(\omega)$、$X(\omega)$ 和 $H(\omega)$ 是 ω 的连续函数,这对于计算机上的数字计算没有用。然而,DFT 提供了这些波形的采样版本来解决该问题。

其优点是,有了 FFT 等更快的 DFT 技术的知识,与时域方法相比,可以开发出一种计算效率更高的数字计算机计算算法。

考虑一个有限持续时间序列,$[x(n) = 0,\quad for,n<0\quad and\quad n\geq L]$(广义方程),激发一个具有脉冲响应的线性滤波器 $[h(n) = 0,\quad forn<0\quad and\quad n\geq M]$。

$$x(n)y(n)$$ $$output = y(n) = \sum_{k = 0}^{M-1}h(k).x(n-k)$$

从卷积分析中可以清楚地看出,y(n) 的持续时间是L+M−1。

在频域中,

$$Y(\omega) = X(\omega).H(\omega)$$

现在,$Y(\omega)$是ω的连续函数,它在一组离散频率上采样,其不同样本数必须等于或超过$L+M-1$。

$$DFT\quad size = N\geq L+M-1$$

当$\omega = \frac{2\pi}{N}k$时,

$Y(\omega) = X(k).H(k)$,其中k=0,1,….,N-1

其中,X(k)和H(k)分别是x(n)和h(n)的N点DFT。$x(n)\& h(n)$ 用零填充,直到长度为 N。它不会扭曲连续频谱 $X(\omega)$ 和 $H(\omega)$。由于 $N\geq L+M-1$,输出序列 y(n) 的 N 点 DFT 足以在频域中表示 y(n),这些事实推断出 X(k) 和 H(k) 的 N 点 DFT 相乘,然后计算 N 点 IDFT 必须得到 y(n)。

这意味着,x(n) 和 H(n) 的 N 点循环卷积加上零填充,等于 x(n) 和 h(n) 的线性卷积。

因此,DFT 可用于线性滤波。

注意 − N 应始终大于或等于 $L+M-1$。否则,混叠效应会破坏输出序列。