离散时间傅立叶变换(DTFT)
离散时间傅里叶变换 (DTFT) 是傅里叶变换的进一步发展。然而,傅立叶变换将时间视为连续的,而离散时间傅立叶变换,顾名思义,将时间视为单个时刻的离散列表。但是为什么我们需要 DTFT?傅立叶变换在告诉我们日常非重复信号中存在的频率方面不是已经做了一件令人钦佩的工作吗?DTFT 有什么特别之处,它是如何工作的?
傅立叶变换的问题在于它包含太多的无穷大而无法实际使用,其固有的无穷大共有三个
- 无限积分——信号被整合在整个的时间
- 连续频率——信号由无数个相邻频率组成
- 连续时间信号——信号在每个时刻都包含一个值,即一个无限的时刻数量
变换公式
离散时间傅立叶变换并没有摆脱无穷大 1 和 2,但它确实消除了无穷大 3。下面比较一下比较傅立叶变换和离散时间傅立叶变换的公式
复指数,傅立叶变换和 DTFT 都将信号乘以复指数,但我们用来表示时间的符号略有不同。
连续时间t被DTFT的n代替> 这里的复指数意思可参看如下欧拉公式,将信号乘以复指数时,首先将其乘以余弦波,然后乘以正弦波。虚数i 只是为了确保我们将两组结果分开。
离散时间极大地减少了记录信号所需的无数次测量。不是在每个时间点都测量信号,而是在其持续时间内仅测量信号有限的次数
连续时间信号x(t)
离散时间信号x(n),n是负无穷到正无穷的整数### 案例:
为了尝试了解 DTFT 的工作原理,对给定离散时间信号执行 DTFT。由于 DTFT 中还有一些无穷大,这里做一些简化
DTFT 要求测试无数个频率。资源有限,只测试一个频率:10Hz。
DTFT 在整个时间段内查看信号。资源有限,我使用的信号除下图中包含的短时间外,其他所有时间都为零。
通过DTFT来解答三个关于信号的问题。
信号中是否存在 10Hz 的正弦波?
它对信号的贡献有多大?(它的幅值是多少?)
它什么时候出现在信号中?(它的相位是什么?)
首先,给定一个连续信号x(t)
然后通过采样离散化x(n)
绘制一个离散的10赫兹的离散余弦信号(绿色虚线)
用10赫兹的离散余弦信号与之前构建原始离散信号相乘得到如下结果:
将所有相乘的结果相加,得到离散时间傅里叶变换的结果为16.04,不为零,证明信号包含 10Hz 的余弦波。
下一阶段将对对正弦波做同样相乘,再累加得到的结果是-27.79,这也不是零,这意味着在该频率处也存在正弦分量。同时这个特定频率具有相移。
### 计算上面提到三个问题的结果
该信号包含10Hz的余弦和正弦分量。余弦分量的幅值为 16.04,正弦分量的幅值为 -27.79。因此,信号确实包含频率为 10Hz 的正弦波。知道正弦和余弦的贡献再利用勾股定理,很容易得到10Hz总贡献32.09
另外要找到相位P, 对实数执行反正切
因此,DTFT 为我的问题提供了以下答案:
信号中确实存在 10Hz 的正弦波
它的幅值为 32.09
相位为-60°
频率周期
在实际运用傅立叶变换算法时,我们经常在频谱图上观察到对称/或周期的波峰,例如上面的信号的频谱图
信号包含一组大约 10Hz 的频率,这是信号中的主要频率。然而,在190、210Hz处也存在频率,如果我们在时域中再次查看信号,我们可以看到的最高频率波是 10Hz 的波。但这些更高的“鬼”频率从何而来?
在信号上放置一个 10Hz 余弦波,与原始信号匹配非常好然后再放大看190hz的频率与原始信号
看看离散时间信号的点确实完美地落在190Hz余弦波上。因此该频率的得分将不为零,DTFT 会认为该频率存在于信号中因此,即使我们在时域中有非重复信号,使用 DTFT,我们也会在频域中获得重复频谱。频谱将每时每刻重复R赫兹,其中R就是采样率,换句话说,是每秒进行的测量次数。我以 200 个样本/秒的速度对这个信号进行采样。因此频谱自身重复的速率是 200Hz。(注意采样频率:每个点的时间间隔是0.005秒,1/0.005=200)
综上所述
因此,DTFT 已经在某种程度上将傅立叶变换变成了实用工具。然而,还有两个无穷大需要摆脱。
无限积分—— 信号在整个时间内积分
连续频率——信号由无数个相邻频率组成