网站大量收购独家精品文档,联系QQ:2885784924

11第十一讲_快速傅里叶变换.ppt

  1. 1、本文档共32页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
11第十一讲_快速傅里叶变换

第3章 快速傅里叶变换 第十一讲 快速傅里叶变换 3.1 引言 3.2 直接计算DFT的问题及改进的途径 3.3 按时间抽取(DIT)的基2-FFT算法 3.4 按频率抽取(DIF)的基2-FFT算法 3.1 引 言 快速傅里叶变换(FFT)并不是一种新的变换, 而是离散傅里叶变换(DFT)的一种快速算法。  由于有限长序列在其频域也可离散化为有限长序列(DFT),因此离散傅里叶变换(DFT)在数字信号处理中是非常有用的。例如,在信号的频谱分析、 系统的分析、 设计和实现中都会用到DFT的计算。 但是,在相当长的时间里, 由于DFT的计算量太大,即使采用计算机也很难对问题进行实时处理,所以并没有得到真正的运用。 直到1965年首次发现了DFT运算的一种快速算法以后,情况才发生了根本的变化。人们开始认识到DFT运算的一些内在规律,从而很快地发展和完善了一套高速有效的运算方法, 这就是现在人们普遍称之为快速傅里叶变换(FFT)的算法。 FFT出现后使DFT的运算大大简化,运算时间一般可缩短一二个数量级之多,从而使DFT的运算在实际中真正得到了广泛的应用。 3.2 直接计算DFT的问题及改进的途径 3.2.1 直接计算DFT的运算量问题 设x(n)为N点有限长序列,其DFT为 k=0, 1, …, N-1 反变换(IDFT)为 n=0, 1, …, N-1 共需要4N2次实数乘法和2N(2N-1)次实数加法。 直接计算DFT,乘法次数和加法次数都是和N2成正比的,当N很大时,运算量是很可观的,有时是无法忍受的。 3.2.2 改善途径 利用系数WNnk的以下固有特性,就可减少运算量:  (1) WNnk的对称性 (2) WNnk的周期性 (3) WNnk的可约性 另外 利用这些特性,使DFT运算中有些项可以合并,并能使DFT分解为更少点数的DFT运算。DFT的运算量是与N2成正比的,因而小点数序列的DFT比大点数序列的DFT的运算量要小。  快速傅里叶变换算法正是基于这样的基本思想而发展起来的。 它的算法形式有很多种,但基本上可以分成两大类,即按时间抽取(DecimationinTime,缩写为DIT)法和按频率抽取(DecimationinFrequency, 缩写为DIF)法。 3.3 按时间抽取(DIT)的基 -2 FFT算法 3.3.1 算法原理 设序列x(n)长度为N,且满足N=2M,M为正整数。按n的奇偶把x(n)分解为两个N/2点的子序列: 式中,X1(k)与X2(k)分别是x1(r)及x2(r)的N/2点DFT: (3-6) (3-7) 一个N点DFT可分解成两个N/2点DFT的组合成,但X1(k),X2(k)只有N/2个点,即k=0, 1, …, N/2-1。而X(k)却有N个点,即k=0, 1, …, N-1, 故计算得到的只是X(k)的前一半的结果。 可得到X1(k)的后半部分: 同理可得X2(k)的后半部分: 后半部分k值(N/2≤k≤N-1)所对应的X1(k),X2(k)分别等于前半部分k值(0≤k≤N/2-1)所对应的X1(k),X2(k)。 要用X1(k),X2(k)来表达全部的X(k)值,还必须应用系数的周期性, 即 考虑到WkN 的性质: X(k)可表达为前后两部分: 前半部分 后半部分 图 3-1 时间抽取法蝶形运算流图符号 图 3-2 按时间抽取将一个N点DFT分解 为两个N/2点DFT(N=8) 一个N点DFT分解为两个N/2点DFT,每一个N/2点DFT只需(N/2)2=N2/4次复数乘法,N/2(N/2-1)次复数加法。两个N/2点DFT共需2×(N/2)2=N2/2次复数乘法和N(N/2-1)次复数加法。此外,把两个N/2点DFT合成为N点DFT时,有N/2个蝶形运算,还需要N/2次复数乘法及2×N/2=N次复数加法。因而通过第一步分解后,总共需要(N2/2)+(N/2)=N(N+1)/2≈N2/2次复数乘法和N(N/2-1)+N=N2/2次复数加法。由此可见,通过这样分解后运算工作量差不多节省了一半。  既然这样分解是有效的,由于N=2M,因而N/2仍是偶数,可以进一步把每个N/2点子序列再按其奇偶部分分解为两个N/4点的子序列。 进一步把每个N/2点子序列再按其奇偶部分分解为两个N/4点的子序列。 且 式中: 图3-3给出N=8时,将一个N/2点DFT分解成两个N/4点DFT, 由这两个N/4点DFT组合成一个N/2

文档评论(0)

yan698698 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档