快速傅立叶变换FFT课件.ppt
- 【下载声明】
1. 本站全部试题类文档,若标题没写含答案,则无答案;标题注明含答案的文档,主观题也可能无答案。请谨慎下单,一旦售出,不予退换。
2. 本站全部PPT文档均不含视频和音频,PPT中出现的音频或视频标识(或文字)仅表示流程,实际无音频或视频文件。请谨慎下单,一旦售出,不予退换。
3. 本页资料《快速傅立叶变换FFT课件.ppt》由用户(三亚风情)主动上传,其收益全归该用户。163文库仅提供信息存储空间,仅对该用户上传内容的表现方式做保护处理,对上传内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知163文库(点击联系客服),我们立即给予删除!
4. 请根据预览情况,自愿下载本文。本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
5. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007及以上版本和PDF阅读器,压缩文件请下载最新的WinRAR软件解压。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 快速 傅立叶 变换 FFT 课件
- 资源描述:
-
1、第四章第四章 快速傅立叶变换快速傅立叶变换(FFT)4.1 引言引言FFT是是DFT的快速算法的快速算法提出与发展提出与发展由库利由库利(J.K.Cooly) 和图基和图基(J.K Tuky)相继出现了桑得相继出现了桑得(G.Sand)-图基等快速算法图基等快速算法价值价值使运算效率提高了使运算效率提高了12个数量级个数量级推动了数字信号处理技术的应用和发展推动了数字信号处理技术的应用和发展分裂基分裂基FFTFFTFFT是是DFTDFT的一类快速算法的一类快速算法4.2 基基2 FFT算法算法4.2.1 直接计算直接计算DFT的问题及改进的方法的问题及改进的方法4.2.2 时域抽取法基时域抽取
2、法基2 FFT基本原理基本原理4.2.3 DIT-FFT算法运算量算法运算量4.2.4 DIT-FFT的运算规律及编程思想的运算规律及编程思想4.2.5 频域抽取法频域抽取法FFT(DIF-FFT)4.2.6 IDFT的高效算法的高效算法( (实验实验: :要求购买数字信号处理实习指导书要求购买数字信号处理实习指导书, ,熟熟悉悉MATLABMATLAB语言等语言等) )4.2 基基2 FFT算法算法4.2.1 直接计算直接计算DFT的问题及改进的方法的问题及改进的方法DFT的定义的定义两者形式类似,差别只在于的指数符号不两者形式类似,差别只在于的指数符号不同,及常数因子。同,及常数因子。运算
3、量是相同的运算量是相同的10 ,)(1)(10 ,)()(1010NnWkXNnxNkWnxkXNknkNNnnkN(1)正变换的运算量)正变换的运算量10 ,)()(10NkWnxkXNnnkN每计算一个每计算一个X(k)需要需要N次复数乘法次复数乘法, (N-1)次复数加法次复数加法计算计算 N 点点X(k),则需要则需要N2次复数乘法,次复数乘法,N(N-1)次复数加法次复数加法即即:计算量正比于计算量正比于N2,这也是产生快速算法的思这也是产生快速算法的思想由来想由来.因为因为 均为复数均为复数)(,),(kXWnxnkN注意注意:指数运算指数运算(2)减少运算量的途径)减少运算量的途
4、径(利用利用DFT的性质的性质)对称性对称性周期性周期性nkNnkNWW)(kNnNjkNnNnkNeWW)(2)(nkNW具有如下特性:旋转因子具有如下特性:旋转因子*()mN mNNWWmNNmNWW2利用这些特性:利用这些特性:1.使使DFT运算中的有些项可以合并。运算中的有些项可以合并。2.可将长序列的可将长序列的DFT分解为短序列的分解为短序列的DFT。mpNmpNjpmNjpmNWeeW/22更加有用的性质更加有用的性质 FFT的基本思想在于的基本思想在于, 将原有的将原有的N点序列点序列分分成两个较短成两个较短的序列的序列,这两个序列的这两个序列的DFT组合组合起来起来,得出原序
5、列的得出原序列的DFT。剩下的问题是怎。剩下的问题是怎么分么分?:前后分或抽取分前后分或抽取分.?4.2.2 时域抽取法基时域抽取法基2 FFT基本原理基本原理FFT算法分为两大类算法分为两大类时域抽取法时域抽取法(DIT)频域抽取法频域抽取法(DIF)此处可以说明基此处可以说明基2 2的由来的由来设设MN2M为自然数为自然数将长度为将长度为N的序列的序列x(n)按按n的奇偶分成两组的奇偶分成两组) 12/(, 1 , 0),12()() 12/(, 1 , 0),2()(21NrrxrxNrrxrx则则x(n)的的DFT为为12/02212/02112/0)12(12/02)()() 12(
6、)2()()()(NrkrNkNNrkrNNrrkNNrkrNnnknNknNWrxWWrxWrxWrxWnxWnxkX偶数奇数一、时域抽取法基本原理时域抽取法基本原理由于由于krNkrNjkrNjkrNWeeW2/22222所以所以12/02/212/02/1)()()(NrkrNkNNrkrNWrxWWrxkX)()(21kXWkXkN10Nk时域抽取法基本原理时域抽取法基本原理式中,式中,12/02/12/02/11)2()()(NrkrNNrkrNWrxWrxkX12/02/12/02/22) 12()()(NrkrNNrkrNWrxWrxkX是是x(2r)与与x(2r+1)的的N/2
7、点点DFT(因为长度因为长度,求求和范围和和范围和W均是针对均是针对N/2的。的。时域抽取法基本原理时域抽取法基本原理10)()()(21NkkXWkXkXkN)()()()(2211rxDFTkXrxDFTkX其中上式可见,一个上式可见,一个N点点DFT已分解为两个已分解为两个N/2点的点的DFT X1(k)与与X2(k)的组合。此的组合。此时计算量已经变化。为使这种计算量变时计算量已经变化。为使这种计算量变化更明显地表现出来化更明显地表现出来:把把 分成两部分来求,此时分成两部分来求,此时必须应用旋必须应用旋转因子的周期性:转因子的周期性:)(kX22()()222222NNjrkjr k
8、r krkNNNNWeeW时域抽取法基本原理时域抽取法基本原理由于由于)()2()()()2(22112/0)2(2/11kXNkXkXWrxNkXNrNkrN12/0)()()(21NkkXWkXkXkN分成两部分来求:分成两部分来求:)2()2()2(221NkXWNkXNkXNkN)(kX()222Nr krkNNWWX (k)的后半部分为:的后半部分为:)2()2()2(221NkXWNkXNkXNkN时域抽取法基本原理时域抽取法基本原理再考虑到再考虑到旋转因子的特性旋转因子的特性:所以所以120)()()2()()()(2121NkkXWkXNkXkXWkXkXkNkN只要求出只要求
9、出0N/2-1区间上区间上X1(k)与与X2(k)的值,的值,即可得到即可得到0N-1区间内所有区间内所有X (k)的值。的值。222()()2NNkjkjkkNNNNWeeW 时域抽取法基本原理时域抽取法基本原理X (k)的运算可用蝶形信号流图表示的运算可用蝶形信号流图表示)(1kX)(2kX)()(21kXWkXkN)()(21kXWkXkNkNW1简记为下图形式:简记为下图形式:)(1kX)(2kXkNW)()(21kXWkXkN)()(21kXWkXkNN点点DFT一次时域抽取分解图(一次时域抽取分解图(N=8)N/2点点DFTN/2点点DFT)0(x)2(x)4(x)6(x) 1 (
10、x)3(x)5(x)7(x)0(1X) 1 (1X)2(1X)3(1X)0(2X) 1 (2X)2(2X)3(2X0NW1NW2NW3NW)0(X) 1 (X)2(X)3(X)4(X)5(X)6(X)7(X)0(1x) 1 (1x)2(1x)3(1x)0(2x) 1 (2x)2(2x)3(2x时域抽取法基本原理时域抽取法基本原理时域抽取法基本原理时域抽取法基本原理计算量分析计算量分析:分成两部分分成两部分 (1)DFT (2)蝶形运算蝶形运算(1)每个每个N/2点的点的DFT需要需要(N/2)2次复数乘,次复数乘,N/2(N/2-1)次复数加。次复数加。两个两个N/2点的点的DFT需要需要N2
11、/2次复数乘,次复数乘,N (N/2-1)次次复数加。复数加。(2)计算一个蝶形,需要计算一个蝶形,需要1次复乘,次复乘,2次复加。次复加。将两个将两个N/2点的点的DFT合并成合并成N点点DFT,有,有N/2个蝶形个蝶形运算,还需要运算,还需要N/2次复数乘及次复数乘及N次复数加。次复数加。总计算量总计算量:计算计算N点点DFT共需要共需要 N2/2 N/2 N2/2 次次复数乘,复数乘, N (N/2-1)N N2/2次复数加。次复数加。只分解一次运算量就减少一半。只分解一次运算量就减少一半。这种分解方法可一直进行到这种分解方法可一直进行到左侧为两点左侧为两点DFT为止。为止。时域抽取法基
12、本原理时域抽取法基本原理与第一次分解相同,将与第一次分解相同,将x1(r)按按r的奇偶分成的奇偶分成两个长为两个长为N/4的子序列:的子序列:)14/(, 1 ,0,)12()()2()(1413Nllxlxlxlx14, 1 , 0, )()()()() 12()2()(42314/044214/04314/0)12(2114/02211NkkXWkXWlxWWlxWlxWlxkXkNNlklNkNNlklNNllkNNlklN且且14, 1 , 0, )()()4(4231NkkXWkXNkXkN时域抽取法基本原理时域抽取法基本原理x2(r) 也可以进行同样的处理,得到也可以进行同样的处理
13、,得到X2(k)14, 1 , 0, )()()(6252NkkXWkXkXkN14, 1 , 0, )()()4(6252NkkXWkXNkXkN其中,其中,14/014/046222614/014/0452225)() 12()()()2()(NlNlklNklNNlNlklNklNWlxWlxkXWlxWlxkX将旋转因子统一为将旋转因子统一为 ,则,则一个一个N点点DFT就可分解为就可分解为4个个N/4点的点的DFT.kNkNWW22) 1 () 0 () 1 () 0 () 1 () 0 () 1 () 0 (66554433XXXXXXXX) 3() 2() 1 () 0() 3(
14、) 2() 1 () 0(22221111XXXXXXXX)7()3()5() 1 ()6()2()4()0(xxxxxxxx) 7 () 6 () 5 () 4 () 3 () 2 () 1 () 0 (XXXXXXXX0NW2NW2NW0NW3NWN点点DIT-FFT运算流图运算流图N/4点点DFTN/4点点DFTN/4点点DFTN/4点点DFT时域抽取法基本原理时域抽取法基本原理最后剩下的是最后剩下的是2点点DFT,当,当N=8时,其输出为:时,其输出为:1 , 0)(),(),(),(6543kkXkXkXkX以以X4(k)为例,为例,1 , 0,)()()(1024140444kWl
15、xWlxkXlklNlklN)6()2()(6()2() 1 ()0()0(040244xxxWxxWxXN因为因为022121NjWeW)6()2( )6()2() 1 ()0() 1 (041244xxxWxxWxXN即即x(2),x(6)通过蝶形运算得到通过蝶形运算得到X4(k)7()6()5()4()3()2() 1 ()0(AAAAAAAA)7()6()5()4()3()2() 1 ()0(AAAAAAAA)7()6()5()4()3()2() 1 ()0(AAAAAAAA)7()3()5() 1 ()6()2()4()0(xxxxxxxx) 7 () 6 () 5 () 4 ()
16、3 () 2 () 1 () 0 (XXXXXXXX0NW0NW0NW0NW0NW2NW2NW0NW3NWN点点DIT-FFT运算流图运算流图N点点DIT-FFT运算流图运算流图N点DIT-FFT运算流图N=8 此图的重要性:理解FFT算法实质;分析计算量; 设计FFT算法程序等当当MN2时,可分解为时,可分解为M级蝶形,每级级蝶形,每级都有都有N/2个蝶形运算。个蝶形运算。(基基2由来由来)每一级每一级N / 2次复数乘;次复数乘;N 次复数加。次复数加。则则M级级NNMN2log22次复数乘次复数乘NNMN2log次复数加次复数加与直接计算与直接计算DFT的运算量之比的运算量之比NNN22
17、log)2/(4.2.3 DIT-FFT算法运算量算法运算量与直接计算与直接计算DFT的运算量之比的运算量之比计算速度的提高是巨大的计算速度的提高是巨大的: 例例如如P101 图图4.2.54.2.3 DIT-FFT算法运算量算法运算量1、原位计算(就地算法)、原位计算(就地算法)4.2.4 DIT-FFT的运算规律及编程思想的运算规律及编程思想3、蝶形运算规律及编程思想、蝶形运算规律及编程思想2、旋转因子的变化规律、旋转因子的变化规律4、倒位序规律、倒位序规律5、倒位序实现、倒位序实现DIT-FFT的运算规律及编程思想的运算规律及编程思想1. 原位计算(就地算法)原位计算(就地算法)用同一地
展开阅读全文