数字信号处理---FFT

北战南征 提交于 2019-12-30 01:22:14

FFT---快速傅里叶变换

基于离散傅立叶变换(DFT),以获取信号的频域特征。传统的DFT算法能够获取信号频域特征,但是算法计算量大,耗时长,不利于计算机实时对信号进行处理,在工程中无法应用,作为DFT的一种快速实现算法,FFT很好的解决了这个问题。

 

   DFT变换公式,由此公式,每计算一个频率点X(k)均需要进行N次复数乘法和N-1次复数加法,计算N各点的X(k)共需要N^2次复数乘法和N*(N-1)次复数加法。当x(n)为实数的情况下,计算N点的DFT需要2*N^2次实数乘法,2*N*(N-1)次实数加法。计算量很大

正所谓“有需求就会有市场”,前人伟大的智慧,给出了一下几种解决方法

1.基-2 FFT ---DFT点数为N = 2^M(M为整数)时的FFT,可以分为两类:按时间抽取法(DIT-FFT)和按频率抽取法FFT(DIF-FFT)

DIT-FFT

  把长为N = 2^M点的时域序列x(n)按序号的奇偶逐级分解,最终得到N/2个2点时域序列。通过迭代计算2点的DFT,使DFT计算量减少(假设采样序列点数为N=2^L,L为整数,如果不满足这个条件可以人为地添加若干个0以使采样序列点数满足这一要求)

X'(k’)为偶数项分支的离散傅立叶变换,X''(k’’)为奇数项分支的离散傅立叶变换,对于N点的FFT计算需要总共的实数乘法数量为:2×N×log2(N);总的复数加法次数为:2xNxlog2(N)。

快速计算方法的流程:1.对于输入数据序列进行倒位序变换。2.蝶形运算的循环结构。 3.浮点到定点转换需要注意的关键问题 4.计算过程中的溢出问题

 

 

 

  

 

标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!