在进行对比之前,先把FT、FS、DTFT、DFS、DFT的公式列出来。

公式加载不出来刷新一下即可。

FT : X(j\Omega ) = \int_{-\infty }^{+\infty} x(t) e^{-j\Omega t} dt FS : X(k \Omega _{0} ) = \frac{1}{T} \int_{-\frac{T}{2} }^{\frac{T}{2}} x(t) e^{-jk\Omega _{0} t} dt DTFT : X(e^{j\omega } ) = \sum_{-\infty }^{+\infty} x(n) e^{-j \omega n } DFS : X(k) = \sum_{0 }^{N-1} x(n) e^{-j \frac{2\pi }{N} n k} DFT : X(k) = \sum_{0 }^{N-1} x(n) W_{N}^{kn}

再放一张图,让大家对时域和频率的图像有一个直观的认识。

下图是我总结的这五种变换的关系图。之后我将详细地讨论。

FT和FS区别

(1)FT对应非周期,FS对应周期; (2)FS“无穷多”正弦 指取基波频率\Omega _{0}整数倍的正弦;FT是在\Omega 上连续取值的正弦; (3)X(k \Omega _{0}) 取值离散,X(j \Omega)取值连续;

DFS和DFT区别

显然,从定义公式上就可以看出:DFT并不是一个新的傅里叶变换形式,它实际上来自DFS,只不过仅在频域上取一周期就得到DFT。

DTFT和DFT区别

DTFT在频域上采样得到DFT。

DTFT和DFS区别

当输入序列为离散周期序列时,DTFT也是离散的。此时DTFT和DFS的包络线一致,不同之处在于DFS是冲击序列,而DTFT为有限值。

FT和DFT区别

我将从连续信号抽样到DFT变换这个完整流程来解释DFT对FT的近似。

由上图。当我们得到一个模拟信号xa(t),要分析它的频谱,需要通过时域连续的傅里叶变换(FT)变换到频域然后分析,于是有了模拟信号的频谱,如图1最上方。

但是此时时域和频域都是都是连续的,计算机无法处理。因此,我们需要对模拟信号进行采样,以Ts为采样周期对xa(t)进行时域采样得到离散信号xa(n),此时对这个离散信号做时域离散的傅里叶变换(DTFT),结果如图1第三幅图片所示。

但是我们注意到此时DTFT的结果频域是连续的,对于计算机依旧无法在频域内对信号进行处理。刚刚我们对时域进行了采样,得到了时域离散信号。那么现在我们能否对频域也进行采样呢?这样不就可以得到频域离散的信号了吗?是的,这就是上面提到的DTFT和DFT的区别。

但是,我们大部分情况需要一致对时域信号进行处理,最终得到离散的频域信号。所以我们更需要对x(n)信号进行处理,我们先对xa(n)这个无限长的信号进行做截短处理,得到x(n)。假设此时x(n)的长度为M,根据DFT的要求,我们要对x(n)做N点均匀抽样(N >= M),得到xN(n)。此时对xN(n)信号做DFT变换就可以得到频域也是离散的信号,如图1第五张图所示。

我们可以发现,从xa(t)到xN(n),也即从FT到DFT,隐含了频域和时域的两次周期延拓。第一次是对xa(t)信号进行采样时,我们选用了采样周期Ts,这一步对应了FT在频域的周期延拓Xa(e^{j\Omega } ) |_{w=\Omega T_{s} } = \frac{1}{T_{s}}{ \sum_{l=-\infty }^{\infty} Xa(j\Omega- jl\Omega s)}。第二次是进行IDFT时,得到的X_N(n)Xa(t)的近似关系。这实际上是由X(n)= \sum X_N(n+lN)的时域周期延拓所造成的。显然N取的越大,混叠越轻,X_N(n)Xa(t)的近似效果越好。(这里我省略了关于IDFT的讨论,详情可以看这篇博客)。

最后说明一下,本文主要参考了胡广书的《数字信号处理导论》(第二版)这本书,相比于其他教材,我认为这本书真的是在讲人话,而且对问题的讨论也是深入浅出,以上内容参考p135-p139内容,原书讲的更清楚,我水平还不够,上面写的磕磕绊绊的,以后应该还会再做改动,感兴趣的可以去看看原文。

参考资料

[1] 《数字信号处理导论》胡广书.

Last modification:October 25th, 2020 at 02:56 pm
如果觉得我的文章对你有用,请随意赞赏