离散傅里叶变换(DFT)

离散信号的傅里叶变换DTFT,它是Ω\OmegaΩ的连续周期函数,尽管在理论上有重要意义,但在实际中往往难于计算,尤其在数字计算机上实现有困难。为此我们需要一种时域和频域都离散的傅里叶变换对,这就是离散傅里叶变换(Discrete Fourier Transformation),简称DFT。DFT的导出有多种方法,比较方便同时物理意义也比较明确的是从离散傅里叶级数(DFS)着手。由于时域和频域都是离散的,因而这种傅里叶变换对有其特殊性质,这些性质使DFT在实际应用中有时会产生误解。DFT有快速计算方法,即快速傅里叶变换(FFT)。

从离散傅里叶级数(DFS)到离散傅里叶变换(DFT)

考虑有限长序列x(n)(0≤n≤N−1)x(n)(0\leq n\leq N-1)x(n)(0≤n≤N−1),将其按周期N进行延拓,得到周期序列
xp(n)=∑rx(n+rN)(r为任意整数)x_p(n)=\sum_{r}x(n+rN) \quad (r为任意整数) xp​(n)=r∑​x(n+rN)(r为任意整数)
我们把x(n)x(n)x(n)称为主值序列,它也是周期序列xp(n)x_p(n)xp​(n)的主值区间序列。由于xp(n)x_p(n)xp​(n)是周期为N的周期序列,可以展开成离散傅里叶级数DFS
Xp(kΩ0)=1N∑n=0N−1xp(n)e−jkΩ0nk=0,1,2,⋯,N−1X_p(k\Omega_0)=\frac{1}{N}\sum_{n=0}^{N-1}x_p(n)e^{-jk\Omega_0 n} \quad k=0,1,2,\cdots,N-1 Xp​(kΩ0​)=N1​n=0∑N−1​xp​(n)e−jkΩ0​nk=0,1,2,⋯,N−1
Xp(kΩ0)X_p(k\Omega_0)Xp​(kΩ0​)是周期为N的,离散的,它的反变换为
xp(n)=∑k=0N−1Xp(kΩ0)ejkΩ0nx_p(n)=\sum_{k=0}^{N-1}X_p(k\Omega_0)e^{jk\Omega_0 n} xp​(n)=k=0∑N−1​Xp​(kΩ0​)ejkΩ0​n
虽然它也是离散的、周期为N的序列。由于Xp(kΩ0)X_p(k\Omega_0)Xp​(kΩ0​)的周期性,我们也可以取它的一个周期为主值区间(0≤k≤N−1)(0\leq k\leq N-1)(0≤k≤N−1),主值区间的Xp(kΩ0)X_p(k\Omega_0)Xp​(kΩ0​)记为X(kΩ0)X(k\Omega_0)X(kΩ0​)。当xp(n)x_p(n)xp​(n)和Xp(kΩ0)X_p(k\Omega_0)Xp​(kΩ0​)都取主值区间序列时,显然有
X(kΩ0)=1N∑n=0N−1x(n)e−jkΩ0nk=0,1,2,⋯,N−1(8)X(k\Omega_0)=\frac{1}{N}\sum_{n=0}^{N-1}x(n)e^{-jk\Omega_0 n} \quad k=0,1,2,\cdots, N-1 \tag{8} X(kΩ0​)=N1​n=0∑N−1​x(n)e−jkΩ0​nk=0,1,2,⋯,N−1(8)

x(n)=∑k=0N−1X(kΩ0)ejkΩ0nk=0,1,2,⋯,N−1(9)x(n)=\sum_{k=0}^{N-1}X(k\Omega_0)e^{jk\Omega_0 n} \quad k=0,1,2,\cdots,N-1 \tag{9} x(n)=k=0∑N−1​X(kΩ0​)ejkΩ0​nk=0,1,2,⋯,N−1(9)
同DTFT一样,非周期序列的傅里叶变换是信号的频谱密度,所以将式(8)乘以N,同时考虑到离散的频谱可用序列来表示,所以定义长度为N的有限长序列x(n)x(n)x(n)的离散傅里叶变换(DFT)X(k)X(k)X(k)为
X(k)=NX(kΩ0)=∑n=0N−1x(n)e−jkΩ0nk=0,1,2,⋯,N−1(10)X(k)=NX(k\Omega_0)=\sum_{n=0}^{N-1}x(n)e^{-jk\Omega_0 n} \quad k=0,1,2,\cdots, N-1 \tag{10} X(k)=NX(kΩ0​)=n=0∑N−1​x(n)e−jkΩ0​nk=0,1,2,⋯,N−1(10)
并由式(9)和式(10),可得X(k)X(k)X(k)的DFT反变换
x(n)=1N∑k=0N−1NX(kΩ0)ejkΩ0n=1N∑k=0N−1X(k)ejkΩ0nn=0,1,2,⋯,N−1(11)x(n)=\frac{1}{N}\sum_{k=0}^{N-1}NX(k\Omega_0)e^{jk\Omega_0 n}=\frac{1}{N}\sum_{k=0}^{N-1}X(k)e^{jk\Omega_0 n} \quad n=0,1,2,\cdots,N-1 \tag{11} x(n)=N1​k=0∑N−1​NX(kΩ0​)ejkΩ0​n=N1​k=0∑N−1​X(k)ejkΩ0​nn=0,1,2,⋯,N−1(11)
同样,把满足式(10)和式(11)的x(n)x(n)x(n)和X(k)X(k)X(k)称为离散傅里叶变换(DFT)对,简记为
x(n)↔DFTX(k)x(n)\overset{DFT}{\leftrightarrow}X(k) x(n)↔DFTX(k)
只要从DFS变换对截取序列的主值,就构成了DFT变换对。但是它们在本质意义上还是有区别的,DFS是按傅里叶分析严格定义的,而DFT是一种”借用“的形式,因为我们知道,有限长序列x(n)x(n)x(n)是非周期性的,故它的傅里叶变换是连续的、周期性的,现在,我们人为地把x(n)x(n)x(n)按周期延拓成离散的、周期性的序列xp(n)x_p(n)xp​(n),得到离散的、周期性的频率函数Xp(kΩ0)X_p(k\Omega_0)Xp​(kΩ0​),然后利用x(n)x(n)x(n)是xp(n)x_p(n)xp​(n)的主值序列,借用取主值的方法,得出DFT的定义,这样处理的结果相当于把原来x(n)x(n)x(n)的连续的、周期性的频谱离散化了。事实上,我们完全可以从非周期性序列的傅里叶变换DTFT出发,按采样间隔Ω0=2πN\Omega_0=\frac{2\pi}{N}Ω0​=N2π​实现原连续频域函数X(Ω)X(\Omega)X(Ω)离散化,来得到离散傅里叶变换DFT。

离散信号(七)| 离散傅里叶变换(DFT)推导相关推荐

  1. 模拟信号与离散信号之间的频率关系(由模拟信号采样得到的离散信号)

    先看看模拟信号与离散信号之间的关系,这里的离散信号是指由模拟信号采样得到的离散信号(这是得到离散信号的方式之一),我想看看它们频率之间的关系? 以正弦信号为例: 从上面的手稿中可以看出,由模拟信号经过 ...

  2. 数字信号处理学习笔记[1] 离散信号 奇异信号 抽样定理

    文章目录 2 离散信号和抽样定理 2.1 离散信号 奇异信号 2.2 连续信号的离散化,正弦波的抽样问题 2.3 带限信号与奈奎斯特频率 用卷积考察抽样定理 2.4 离散信号的频谱和抽样定理 2 离散 ...

  3. MATLAB产生离散信号

    Matlab产生离散信号 常见离散信号 冲击信号 n = -5:5; x = n == 0;% 当n为0时,x的值为1 stem(n, x, 'filled'); axis([-5 5 0 1.1*m ...

  4. 傅里叶级数FS,连续时间傅里叶变换CTFT,离散时间傅里叶变换DTFT,离散傅里叶变换DFT,推导与联系(一)

    本文主要从傅里叶级数 FS,连续时间傅里叶变换 CTFT,离散时间傅里叶变换 DTFT,以及离散傅里叶变换 DFT 之间的区别与联系进行了比较详细的讨论,主要注重于公式形式上的推导,略去了相关的图像示 ...

  5. 傅里叶级数FS,连续时间傅里叶变换CTFT,离散时间傅里叶变换DTFT,离散傅里叶变换DFT,推导与联系(二)

    由于本文公式所占用的字符比较多,无法在一篇博客中完整发布,所以将其分为两篇博客.本篇主要介绍了离散傅里叶变换 DFT 的内容,以及相关的总结.对于前置内容,包括傅里叶级数 FS,连续时间傅里叶变换 C ...

  6. 【六更完结!由于字数限制开新文章继续】零基础信号与系统学习笔记:复指数信号、傅里叶级数的系数推导、三角函数正交性、离散傅里叶变换、相位补偿、z变换表、逆变换表、常见序列及其作用

    零基础信号与系统学习笔记:复指数信号.傅里叶变换.三角函数正交性 基础1:复指数信号 复指数信号基础知识 复指数信号推导1 虚指数信号 虚指数信号特性和作用 直流信号 基础2:傅里叶级数 推导傅里叶级 ...

  7. 离散傅里叶变换 (DFT)、快速傅里叶变换 (FFT)

    目录 离散傅里叶变换 (DFT) 离散傅里叶变换的基 离散傅里叶变换 快速傅里叶变换 (FFT) 卷积 线性时不变系统 傅里叶级数 参考文献 离散傅里叶变换 (DFT) 离散傅里叶变换的基 对于周期为 ...

  8. 傅里叶变换、离散傅里叶变换(DFT)、快速傅里叶变换(FFT)详解

    前置知识 以下内容参考<复变函数与积分变换>,如果对积分变换有所了解,完全可以跳过忽略 复数的三角表达式如下 Z=r(cosθ+isinθ)Z=r(cos\theta+isin\theta ...

  9. 【算法】离散傅里叶变换(DFT)

    真实的系统是会离散的,时变的.理想者将瞬时态看成时线性的系统,将时变系统分成了不同阶段.离散在围观层面是连续的,但从表层感受时,变化是迅猛的,可以忽略不计变化的过程,因而成为了离散. 一.离散系统 离 ...

  10. OpenCV示例学习(七):离散傅里变换(DFT)算子:getOptimalDFTSize(),copyMakeBorder(),magnitude(),log(),normalize()

    OpenCV示例学习(七):离散傅里变换(DFT)算子:getOptimalDFTSize(),copyMakeBorder(),magnitude(),log(),normalize() #incl ...

最新文章

  1. Ubuntu解决开机屏幕默认亮度偏低问题
  2. 用Vue来实现图片上传多种方式
  3. python如何从一个dataframe提取相应的行组成一个新的dataframe_从Excel到Python:最常用的36个Pandas函数!最完整的Pandas教程!...
  4. 使用Nginx搭建简单的音视频直播平台RTMP协议
  5. boost::all_clustering_coefficients用法的测试程序
  6. oracle的等保,Oracle等保测评相关指令
  7. 部署php项目到linux
  8. Mono项目的新进展
  9. TSC工业型条码打印机的价格的影响因素有哪些呢?
  10. git+vue项目实战
  11. 210页的《pandas官方文档中文版》.pdf
  12. vue 下载插件downloadjs
  13. 滴滴开源 Booster:移动APP质量优化框架
  14. 《嵌入式 - 语音识别TWen-ASR-ONE开发笔记》第2章 TWen-ASR-ONE开发环境搭建与使用
  15. 2020年电商行业的前景
  16. 3月13日云栖精选夜读 | Serverless 风暴来袭,前端工程师如何应对?
  17. Linux gpg命令
  18. python第三方库的下载、安装与升级(包含whl,zip,tra.gz格式)
  19. Xmanager快速连接Linux图形界面教程
  20. freemarker 页面静态化技术

热门文章

  1. 从 MVC 到使用 ASP.NET Core 6.0 的Minimal API
  2. mysql8更改区分大小写_mysql 8 大小写修改问题
  3. 在网页中打开展示pdf文件
  4. C#使用FFmpeg实现视频压缩优化的探索
  5. 波形发生器c语言编程,C语言_源代码-波形发生器_程序清单.doc
  6. Java内存泄漏检测工具 JRockit Memory Leak Detector
  7. php 三个点的用法 function fun (...$arr){}
  8. 双十一,程序员可太难了
  9. 2020年度CSDN博客之星评选——【Mr.郑先生_】感谢各位朋友的支持与陪伴!
  10. 工程与建设杂志工程与建设杂志社工程与建设编辑部2022年第3期目录