欢迎来到天天文库
浏览记录
ID:51085629
大小:2.45 MB
页数:60页
时间:2020-03-18
《食品热加工的控制要求.ppt》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、离散傅里叶变换快速算法(FFT)问题的提出基2时间抽取FFT算法基2频率抽取FFT算法IFFT算法的实际应用学习要求掌握基2时间抽取FFT算法的基本思想和方法。掌握基2频率抽取FFT算法的基本思想和方法。掌握实序列FFT计算,以及由N点序列FFT计算2N点序列FFT的方法。掌握利用FFT计算IDFT的过程,以及IFFT实现的原理。重点和难点本章的重点是基2时间/频率抽取FFT算法的基本原理,FFT蝶形运算流图本章的难点是由短序列的DFT表达相应长序列的DFT的基本原理及方法FFT:FastFourierTransformFFT不是一种新的变换!!!它
2、只是DFT的快速算法离散傅里叶变换快速算法直接计算DFT的问题及改进途径N点有长序列x[k]DFTIDFT两者的差别仅在指数的符号和因子1/N.一、DFT的计算工作量通常x[k]和WNkm都是复数,所以计算一个X[m]的值需要N次复数乘法运算和N-1次复数加法运算。一个X[m]数值计算的工作量,如X[1]1111乘法次数N加法次数N-11111所有的X[m]就要N2次复数乘法运算,N(N-1)次复数加法运算。当N很大时,运算量将是惊人的,如N=1024,则要完成1048576次(一百多万次)运算。这样,难以做到实时处理。小结运算量复数乘法复数加法一个
3、X[m]NN–1N个X[m](N点DFT)N2N(N–1)实数乘法实数加法一次复乘42一次复加2一个X[m]4N2N+2(N–1)=2(2N–1)N个X[m](N点DFT)4N22N(2N–1)二.改进的途径1.WNkm的对称性和周期性对称性周期性2.WNkm的可约性和特殊值可约性特殊值利用上述特性,可以将有些项合并,并将DFT长序列分解为短序列,从而降低运算次数,提高运算速度。1965年,库利(cooley)和图基(Tukey)首先在《机器计算傅里叶级数的一种算法》文章中提出FFT算法。对于N点DFT,仅需(N/2)log2N次复数乘法运算。例如N
4、=1024=210时,需要(1024/2)log2210=512*10=5120次。5120/1048576=4.88%,速度提高20倍FFT算法分类:时间抽取法DIT:Decimation-In-Time频率抽取法DIF:Decimation-In-Frequency利用系数的特性,合并DFT运算中的某些项,把长序列DFT短序列DFT,从而减少其运算量。FFT算法的基本思想:经过WNkm的周期性与对称性简化之后,容易发现DFT运算中存在着不必要的重复计算,避免这种重复,是简化运算的关键。DFT的运算量与点数N有关!3.1按时间抽取(DIT)的基-
5、2FFT算法—库利-图基算法一.算法原理序列长度N为2的整数幂的FFT算法称基-2FFT算法。设序列点数N=2L,L为整数。若不满足,则补零将序列x[k]按k的奇偶分成两组:x[0]x[1]x[2r]x[2r+1]x[2r+2]x[N-2]x[N-1]x1[0]x1[r]x1[r+1]x2[1]x2[r]请注意,这里m取值范围!对于如何求?利用系数周期性请注意,这里m取值范围!综合上述,已知:前半部分X[m]后半部分X[m]求未知的X[m],分成两个部分-1X[m]前半部分后半部分碟形运算*X1[m]X2[m]例如N=8时的DFT,可以分解为两个N/
6、2=4点的DFT。具体步骤如下:(1).k为偶数时,即x[0],x[2],x[4],x[6]分别记作:m=0,1,2,3(2).k为奇数时,即x[1],x[3],x[5],x[7]分别记作:m=0,1,2,3m=0,1,2,3碟形运算(3).对X1[m]和X2[m]进行蝶形运算,前半部为X[0]~X[3],后半部分为X[3]~X[7]。整个过程如下图所示:N/2点DFTx1[0]=x[0]x1[1]=x[2]x1[2]=x[4]x1[3]=x[6]N/2点DFTx2[0]=x[1]x2[1]=x[3]x2[2]=x[5]x2[3]=x[7]X1[0]
7、X1[1]X1[2]X1[3]X2[0]X2[1]X2[2]X2[3]-1X[0]X[4]W80-1X[1]X[5]W81-1X[2]X[6]W82-1X[3]X[7]W83由于N=2L,所以N/2仍为偶数,可以进一步把每个N/2点的序列再按其奇偶部分分解为两个N/4的子序列。例如,k为偶数时的N/2点分解为:进一步分解N/2N/4点DFT进行N/4点的DFT,得到(偶中偶)(偶中奇)从而可得到:后N/4的X1[m]前N/4的X1[m](奇中偶)(奇中奇)同样对k为奇数时,N/2点分为两个N/4点的序列进行DFT,则有:例如,N=8时的DFT可分解
8、为四个N/4的DFT,具体步骤如下:(1)将原序列x[k]的“偶中偶”部分:构成N/4点DFT,从而得到X3
此文档下载收益归作者所有