《快速傅里叶变换发展史.docVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
《快速傅里叶变换发展史

快速傅立叶变换(FFT) 个人日记 2010-04-16 12:24:48 阅读163 评论0 字号:大中小 订阅 近十多年来数字信号处理技术同数字计算机、大规模集成电路等先进技术一样,有了突飞猛进的发展,日新月异,已经形成了一门具有强大生命力的技术科学。由于它本身具有一系列的优点,所以能有效地促进各工程技术领域的技术改造和学科发展,应用领域也更加广泛、深入,越来越受到人们的重视。 在数字信号处理中,离散傅里叶变换(Discrete Fourier Transform,DFT)是常用的变换方法,它在各种数字信号处理系统中扮演着重要的角色。傅里叶变换已有一百多年的历史了,我们知道频域分析常常比时域分析更优越,不仅简单,且易于分析复杂信号。但用较精确的数字方法,即DFT进行谱分析,在FFT出现以前是不切实际的。这是因为DFT计算量太大。直到1965年出现了DFT]运算的一种快速方法以后,情况才发生了根本的变化。快速傅里叶变换〔Fast Fourier Transfonn,FFT〕并不是与离散傅里叶变换不同的另一种变换,而是为了减少DFT计算次数的一种快速有效的算法。 当时Garwin在自己的研究中极需要一个计算傅立叶变换的快速方法,而L.W.Tukey正在写有关傅里叶变换的文章,Tukey概括地对Garwin介绍了一种方法,它实质上就是后来著名的Cooley-Tukey算法。在Garwin的迫切要求下,1963年,IBM公司的Cooley根据Tukey的想法编写了第一个FFT算法程序。在FFT算法中,Tukey主要利用了旋转因子的周期性和对称性。这两个性质使DFT运算中的某些项可以合并,使DFT运算尽量分解为更少点数的DFT运算。因为DFT的运算量与Pow(N,2)成比例,所以如果将一个大点数的DFT分解为若干个小点数的DFT的组合,将有效地减少运算量。Cooley在计算机上实现该算法时,为节省存储空间和减少寻址时间,采用了3维标号映射方法和在算法内部的循环结构,这些结构和技巧对后来的FFT算法研究及实现同样产生了很大影响。1965年,Cooley和Tukey在《计算数学》上发表了著名的论文,并立即引起了广泛注意。FFT算法将运算量从O (N2)减少为2O( N logN),运算时间减少1-2个数量级,从理论上解决了数字信号处理运算量大的问题,是数字信号处理发展史上的—块里程碑。以计算l024点的序列为例,FFT将计算时间缩短为原来的1/100,从而使数字信号处理从一个计算数学的分支变为一门应用科学,逐步走向实用技术. 在Cooley-Tukey算法提出之后,Sande提出了按照频率抽取的FFT算法,它可以作为按照时间抽取的Cooley-Tukey算法的对偶形式。Bergland提出了采用高基数结构的算法,如基-4或基-8算法能够达到更高的计算效率。增大基数虽然可以减少计算量,但同时每个计算单元的结构也更复杂。基4算法比基2算法所需的乘法次数减少了约1/4。当采用高于4的基数r时,虽然总的乘法次数更少,但比基4算法中所需的复乘次数减少得并不显著,并且r点的DFT中将包含乘法运算,因此实际应用中多采用基4算法。Bergland对任意因子的FFT算法也作了研究,提出了统一的FFT方法,即任意因子的FFT运算都可以由r(r是基数)点的DFT运算和与旋转因子相乘的运算来实现,Cooley-Tukey算法和Sande-Tukey算法都可以看作统一的FFT算法的特例,即基数r都相同。对于输入数据是实数情况,可以将N点的DFT运算转换为N/2点的DFT运算,或者同时计算两个实序列的DFT,都可以采用FFT算法。 从七十年代中期开始,基于素因子分解的FFT算法重新得到了重视。事实上,在Cooley-Tukey算法提出之前,Good就提出用点数互素的短点数DFT运算组合来实现长点数DFT运算,并且这种实现方式不会引入附加的乘旋转因子的运算。在素因子算法中利用了数论中的中国余数定理,将一维DFT运算映射为标准的多维DFT运算,而各素因子的DFT运算可以通过循环卷积算法完成。在素因子算法中,由于避免了乘旋转因子的运算,因此比Cooley-Tukey算法的乘法运算次数要少得多,而加法次数与之相当。基于素因子分解的另一种快速算法是由IBM公司的Winograd博士提出的,可以称为WFTA算法。WFTA算法有两个主要思想:一是用Rader提出的方法将小N点DFT转换为循环卷积,利用多项式理论使卷积计算具有尽可能少的乘法次数;二是将小N点DFT运算进行嵌套来完成大N点的DFT运算。WFTA算法比素因子算法的乘法次数更少,而加法次数差别不大。 但WFTA算法也有一些突出的问题,如算法不能采用原位运算,需要占用较大的存储空间,更重要的是,随着变换点数

文档评论(0)

haha85864 + 关注
实名认证
文档贡献者

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

1亿VIP精品文档

相关文档