理解DFT(离散傅里叶变换)

DFT做什么?

  • 给出每个分量的频率, 幅值和相位

在这里插入图片描述

  • 信号可以看成由三角函数叠加而成, 而DFT就可以得到每个成分的幅值, 相位, 频率

DFT怎么做到这个的呢?

  • 假设我对一个余弦信号在两个周期内采样了40次

假设是cos wt, 那么w=2Π/T, t对应的是第n个点的时间, 那么40个点对应2T, t=(n/40)*2T, 化简后就是下面的式子

在这里插入图片描述

但是我现在问计算机一个问题, 这个信号在40个点震动了几个周期它, 它必须通过代数求解

  • 首先选择40个基信号, 40就是信号长度

比如下面的, 一开始是40个点0个周期, 第二个是1个周期, 然后一直到39个, 后面39和1重合不是说它们一样, 而是一个间隔就已经包含一个周期了, 信号采不到

在这里插入图片描述

  • 然后我们就可以把原信号和上面的40个信号进行相关程度的比较, 使用相关函数, 越大相关程度越高如下图:

在这里插入图片描述

详细查看配对过程

第一个就是原信号, 第二个就是第8个信号, 下图有些错误, 因为0是第一个, 当然了这里第一个计算机是不知道函数的, 只是知道有这么多点, 然后就是计算相关性, 把逐次比较的结果记到X这个序列里面

在这里插入图片描述

通过我们逐个的计算得到和40s内振动两个周期及40s内振动38个周期的相关性最大, 其他的基信号比较结果是0

在这里插入图片描述

这个时候就可以把X数组画出来了

在这里插入图片描述

把得到X的公式明确一下

  • 把40 换成N, 代表这个对比的采样信号可以不只是40个点, 把原来的函数写成x[n]

在这里插入图片描述

DFT的公式

在这里插入图片描述

欧拉公式展开后如图:

在这里插入图片描述

  • 前一项是一样的, 后面的是什么呢?

是为了保留相位信息

  • 假如现在原信号向左移, 如下:

在这里插入图片描述

  • 然后再进行一次相关性计算的话会得到下面的值, 最近的地方不是20而是10了

在这里插入图片描述

  • 这样其实会和原信号的一半混淆, 损失了相位

在这里插入图片描述

如何解决相位问题

  • 和正弦基向量去比较

在这里插入图片描述

  • 经过比较可以得到X[2]和X[38]的值应该是相反的, 下图不太对, X[38]是负的

在这里插入图片描述

  • 这时候可以合并上之前的结果

在这里插入图片描述

在这里插入图片描述

现在看看这个复数代表啥了呢?

  • 它的模代表的是20, 相位是 π / 3 \pi / 3 π/3 , 就可以重建出原信号

在这里插入图片描述

具体重建过程

  • 首先需要给定采样频率

举个例子, 假如说采样频率为100hz, 采样了40个点, 40个点中采样到的信号有两个周期, 那么被采样信号的频率就是5Hz。

具体来说, 40个点的持续时间是40*1/100 = 0.4s, 所以信号的每个周期就是0.2s, 1/0.2 = 5

再一般化一下, 我们知道X[k]记录的是信号和第K个基信号的相关程度,假如对应的k值比较高, 即包含的第k个频率的基信号要更多。那么 这第K个的频率应该怎么算呢? , 参见下图:

在这里插入图片描述

  • 给定采样频率 f s f_s fs N N N 个点的持续时间是 N ∗ 1 f s N*\frac{1}{f_s} Nfs1 , 假如在这个时间内有k个周期, 那么每个周期的时间就是 N ∗ 1 f s ∗ k N*\frac{1}{f_s*k} Nfsk1 , 倒数就是第k个基波信号的频率

  • 此时对于X[K] 代表的频率也十分清楚了:

在这里插入图片描述

举前面的例子

例1

在这里插入图片描述

  • 假设采样率是4k Hz, N是40, X[2]就代表 2*4K/40 = 200 Hz, 之前相关程度最大的是X[2] 和X[38], X[38]对应的是 38*100Hz, 当然后者根据采样定理是需要舍弃的, 因为采样定理规定, 只有采样频率大于等于原信号的一半频率时, 才能保证不发生频谱的混叠, 所以其实在查看X[k]时, 我们只需要关注它的一半就好了

  • 采样频率是原信号的两倍也可以理解成对于原来信号的一个周期至少需要采样两次, 假如是40个点那么存在20个周期恰好满足一个周期采样两次, 再后面就不可以了

例2
  • 现在的信号是多个信号聚再一块, 假如采样了100个点, 共1s, 也就是采样频率是100Hz, 可以把原来信号改写为离散的形式, t的地方就对应 n / 100 n/100 n/100 :

在这里插入图片描述

  • 经过DFT后变为如下所示, 下面标错了, 应该是98, 96, 95:

可以得到模值和相位, 模除去 N / 2 N/2 N/2 就是幅值

在这里插入图片描述

在这里插入图片描述

  • 41
    点赞
  • 259
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 5
    评论
### 回答1: 离散傅里叶变换DFT)是指将一个离散的信号序列转换为其频域表示的过程。它把一个有限长的离散序列映射到一个有限长的频域序列。 离散傅里叶变换是傅里叶变换在离散输入上的推广。它将一个长度为N的离散序列转换为一个长度为N的频域序列。在时域上,输入序列可以表示为离散时间的采样点集合。在频域上,它表示了输入信号的不同频率成分的幅度和相位。 离散傅里叶变换的计算过程包括两个步骤:首先,通过线性组合计算正弦和余弦函数的离散采样来表示信号;然后,再次对这些离散采样应用傅里叶变换公式以得到频域表示。 离散傅里叶变换广泛应用于信号处理和图像处理等领域。它可以用于频域滤波、快速傅里叶变换(FFT)、频谱分析等。通过DFT,我们能够将一个时域上的信号转换为其频域表示,从而能够更好地理解和处理信号的频率特性。 尽管离散傅里叶变换可以通过直接计算实现,但其计算复杂度较高,特别是对于较长的输入序列。快速傅里叶变换(FFT)是一种高效的算法,能够在O(NlogN)时间复杂度内计算离散傅里叶变换,其被广泛应用于实际应用中。 总之,离散傅里叶变换是将离散序列转换为其频域表示的过程,通过DFT我们可以了解信号的频率特性,并在信号处理中得到广泛应用。 ### 回答2: 离散傅里叶变换DFT)是将离散时间域信号转换成频域信号的一种数学变换方法。在信号处理和图像处理领域中广泛应用。 DFT的基本原理是将一个离散时间域信号分解为一系列复数的正弦和余弦函数分量,表示信号在不同频率上的振幅和相位信息。通过DFT,我们可以得到信号的频率特性,如频谱图、频率分量以及它们在时间上的实现方式。 DFT的计算是通过对输入信号的N个离散采样点进行离散傅里叶变换公式的运算得到的。公式可以描述为: X[k] = Σ(n=0 to N-1) x[n] * W^(-kn) 其中,X[k]表示输出频域信号的第k个频率分量,x[n]表示输入的时间域信号的第n个采样点,N表示信号的采样点数,W为复数旋转因子,定义为W = e^(-j2π/N)。 DFT计算的复杂度是O(N^2),这意味着当信号的采样点数增加时,计算所需的时间也会呈平方倍数增长。为了提高计算效率,可以使用快速傅里叶变换(FFT)算法,将计算复杂度降低到O(NlogN)的级别。 通过DFT,我们可以从时域的输入信号中得到其频域的频谱信息,进而可以进行频域滤波、频谱分析、频率特征提取等一系列信号处理操作。此外,DFT还广泛应用于音频处理、图像处理、通信系统等领域中。 ### 回答3: 离散傅里叶变换(Discrete Fourier Transform,DFT)是一种将离散序列(通常是时域上的信号)转换为频域上的表示的数学工具。它是傅里叶变换在离散信号上的推广。 DFT将一个长度为N的离散序列X={x_0, x_1, x_2, ..., x_{N−1}}转换为其频域表示X'={X_0, X_1, X_2, ..., X_{N−1}}。其中,X_k是X的第k个频谱系数,k=0,1,2,...,N−1。DFT的数学公式是: X_k = ∑_{n=0}^{N−1} x_n * exp(−2πikn/N),k=0,1,2,...,N−1。 DFT将一个信号分解为一系列正弦和余弦波的和,这些波的频率从0到N-1,每个波的振幅由X_k决定。相反地,逆DFT(IDFT)可以从频域表示恢复出原始的时域序列。 DFT的应用十分广泛。对于信号处理,DFT可以用于频域滤波、谱分析和频谱合成等。在通信系统中,DFT被广泛应用于正交频分复用(OFDM)技术,其中信号在频域上被划分为多个子载波进行传输,利用DFT实现时域与频域之间的转换。此外,DFT还被应用于图像处理、声音合成、压缩和音频编码等领域。 尽管DFT是一种强大的工具,它的计算复杂度较高,特别是对于大规模的输入序列。为了解决这个问题,人们发展出了快速傅里叶变换(Fast Fourier Transform,FFT)算法,它通过利用DFT的对称性和周期性,将计算复杂度从O(N^2)降低到O(NlogN)。FFT广泛应用于实际工程中,提高了计算效率。 总结来说,DFT是将离散序列转换为频域表示的数学工具,广泛应用于信号处理、通信系统、图像处理等领域。它的计算复杂度较高,但通过FFT等算法可以得到高效的计算方法,为实际应用提供了便利。
评论 5
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

live_for_myself

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值