版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
快速傅里叶变换本章目录直接计算DFT的问题及改进的途径按时间抽取的基2-FFT算法
Matlab实现2本章目录直接计算DFT的问题及改进的途径按时间抽取的基2-F5.1引言
DFT在实际应用中很重要:可以计算信号的频谱、功率谱和线性卷积等。直接按DFT变换进行计算,当序列长度N很大时,计算量非常大,所需时间会很长。FFT并不是一种与DFT不同的变换,而是DFT的一种快速计算的算法。
35.1引言DFT在实际应用中很重要:可以计算信号的频谱5.2直接计算DFT的问题及改进的途径
设复序列x(n)长度为N点,其DFT为k=0,,…,N-1(1)计算一个X(k)值的运算量复数乘法次数:N复数加法次数:N-145.2直接计算DFT的问题及改进的途径DFT的运算量设5.2.1DFT的运算量(2)计算全部N个X(k)值的运算量复数乘法次数:N2复数加法次数:N(N-1)(3)对应的实数运算量55.2.1DFT的运算量(2)计算全部N个X(k)值的运一次复数乘法:4次实数乘法2次实数加法+一个X(k):4N次实数乘法+2N+2(N-1)=2(2N-1)次实数加法所以整个N点DFT运算共需要:N×2(2N-1)=2N(2N-1)实数乘法次数:4N2实数加法次数:6一次复数乘法:4次实数乘法2次实数加法+一个X(k)DFT运算量的结论N点DFT的复数乘法次数举例NN2NN76结论:当N很大时,其运算量很大,对实时性很强的信号处理来说,要求计算速度快,因此需要改进DFT的计算方法,以大大减少运算次数。7DFT运算量的结论N点DFT的复数乘法次数举例NN2NN22
主要原理是利用系数的以下特性对DFT进行分解:(1)对称性(2)周期性(3)可约性另外,85.2.2减少运算工作量的途径主要原理是利用系数5.3按时间抽取的基2-FFT算法
算法原理按时间抽取基-2FFT算法与直接计算DFT运算量的比较按时间抽取的FFT算法的特点按时间抽取FFT算法的其它形式流程图95.3按时间抽取的基2-FFT算法算法原理95.3.1算法原理
r=0,1,…,则105.3.1算法原理设N=2L,将x(n)按n的奇偶分式中,X1(k)和X2(k)分别是x1(n)和x2(n)的N/2的DFT。另外,式中k的取值范围是:0,1,…,N/2-1。11式中,X1(k)和X2(k)分别是x1(n)和x2(n)的N因此,只能计算出X(k)的前一半值。后一半X(k)值,N/2,N/2+1,…,N?利用可得到同理可得12因此,考虑到因此可得后半部分X(k)及前半部分X(k)k=0,1,…,N/2-1k=0,1,…,N/2-113考虑到因此可得后半部分X(k)及前半部分X(k)k=蝶形运算蝶形运算式蝶形运算信号流图符号因此,只要求出2个N/2点的DFT,即X1(k)和X2(k),再经过蝶形运算就可求出全部X(k)的值,运算量大大减少。14蝶形运算蝶形运算式蝶形运算信号流图符号因此以8点为例第一次按奇偶分解以N=8为例,分解为2个4点的DFT,然后做8/2=4次蝶形运算即可求出所有8点X(k)的值。15以8点为例第一次按奇偶分解以N=8为例,分解为2个4点的DF蝶形运算量比较复数乘法次数:
分解一次后所需的运算量=2个N/2的DFT+N/2蝶形:因此通过一次分解后,运算工作量减少了差不多一半。
16蝶形运算量比较复数乘法次数:N2复数加法次数:N(N-1进一步按奇偶分解由于N=2L,因而N/2仍是偶数,可以进一步把每个N/2点子序列再按其奇偶部分分解为两个N/4点的子序列。以N/2点序列x1(r)为例
17进一步按奇偶分解由于N=2L,因而N/2仍是且k=0,1,…,由此可见,一个N/2点DFT可分解成两个N/4点DFT。同理,也可对x2(n)进行同样的分解,求出X2(k)。18且k=0,1,…,由此可见,一个N/2点DFT可分解成两个以8点为例第二次按奇偶分解19以8点为例第二次按奇偶分解19算法原理对此例N=8,最后剩下的是4个N/4=2点的DFT,2点DFT也可以由蝶形运算来完成。以X3(k)为例。k=0,1即这说明,N=2M的DFT可全部由蝶形运算来完成。20算法原理对此例N=8,最后剩下的是4个N/4以8点为例第三次按奇偶分解N=8按时间抽取法FFT信号流图21以8点为例第三次按奇偶分解N=8按时间抽取法FFT信号流图5.3.2按时间抽取基2-FFT算法与直接计算DFT运算量的比较
N2N(N-1)直接计算DFT与FFT算法的计算量之比为M23这样级运算总共需要:L复数乘法:复FFT算法与直接DFT算法运算量的比较NN2计算量之比MNN2计算量之比M2414.836.641644..0864125.13.816256328.0204..64372.1.424FFT算法与直接DFT算法运算量的比较NN2计算量之比M5.3.3按时间抽取的FFT算法的特点序列的逆序排列同址运算(原位运算)蝶形运算两节点间的距离的确定255.3.3按时间抽取的FFT算法的特点序列的逆序排列25序列的逆序排列由于x(n)被反复地按奇、偶分组,所以流图输入端的排列不再是顺序的,但仍有规律可循:因为N=2M,对于任意n(0≤n≤N-1),可以用M个二进制码表示为:
n反复按奇、偶分解时,即按二进制码的“0”“1”分解。序列的逆序排列26序列的逆序排列由于x(n)被反复地按奇倒位序的树状图(N=8)
自然顺序n二进制数倒位序二进制数倒位序顺序数111728码位的倒位序(N=8)自然顺序n二进制数倒位序二进制数倒倒位序的变址处理(N=8)29倒位序的变址处理(N=8)29同址运算(原位运算)某一列任何两个节点k和j的节点变量进行蝶形运算后,得到结果为下一列k、j两节点的节点变量,而和其他节点变量无关。这种原位运算结构可以节省存储单元,降低设备成本。运算前运算后例同址运算(原位运算)30同址运算(原位运算)某一列任何两个节点k和观察原位运算规律31观察原位运算规律31蝶形运算两节点间的距离
以N=8为例:第一级蝶形,距离为:第二级蝶形,距离为:第三级蝶形,距离为:规律:对于共L级的蝶形而言,其m级蝶形运算的节点间的距离为124蝶形运算两节点间的距离
算法原理再把输出X(k)按k的奇偶分组先把输入按n的顺序分成前后两半设序列长度为N=2L,L为整数前半子序列x(n)后半子序列
0≤n≤0≤n≤345.4按频率抽取的基2-FFT算法算法原理再把输出X(5.4.1算法原理由DFT定义得k=0,1,…,N355.4.1算法原理由DFT定义得k=0,1,…,N35由于所以则k=0,1,…,N36由于所以则k=0,1,…,N36然后按k的奇偶可将X(k)分为两部分r=0,1,…,则式可转化为37然后按k的奇偶可将X(k)分为两部分r=0,1,…,则式令n=0,1,…,代入r=0,1,…,可得为2个N/2点的DFT,合起来正好是N点X(k)的值。38令n=0,1,…,代入r=0,1,…,可得为2个N/蝶形运算将称为蝶形运算与时间抽选基2FFT算法中的蝶形运算符号略有不同。39蝶形运算将称为蝶形运算与时间抽选基2FFT算法中的蝶形运算符例按频率抽取(N=8)
例按频率抽取,将N点DFT分解为两个N/2点DFT的组合(N=8)40例按频率抽取(N=8)例按频率抽取,将N点DFT分与时间抽取法的推导过程一样,由于N=2L,N/2仍然是一个偶数,因而可以将每个N/2点DFT的输出再分解为偶数组与奇数组,这就将N/2点DFT进一步分解为两个N/4点DFT。N=841与时间抽取法的推导过程一样,由于N=2L,5.4.2频率抽取法与时间抽取法的异同
频率抽取法输入是自然顺序,输出是倒位序的;时间抽取法正好相反。频率抽取法的基本蝶形与时间抽取法的基本蝶形有所不同。频率抽取法运算量与时间抽取法相同。频率抽取法与时间抽取法的基本蝶形是互为转置的。
425.4.2频率抽取法与时间抽取法的异同频率抽取法输入是自5.5快速傅里叶逆变换(IFFT)算法IDFT公式DFT公式比较可以看出,IDFT多出M个1/2可分解到M级蝶形运算中。435.5快速傅里叶逆变换(IFFT)算法IDFT公式DFT例频率抽取IFFT流图(N=8)
快速傅里叶变换本章目录直接计算DFT的问题及改进的途径按时间抽取的基2-FFT算法
Matlab实现55本章目录直接计算DFT的问题及改进的途径按时间抽取的基2-F5.1引言
DFT在实际应用中很重要:可以计算信号的频谱、功率谱和线性卷积等。直接按DFT变换进行计算,当序列长度N很大时,计算量非常大,所需时间会很长。FFT并不是一种与DFT不同的变换,而是DFT的一种快速计算的算法。
565.1引言DFT在实际应用中很重要:可以计算信号的频谱5.2直接计算DFT的问题及改进的途径
设复序列x(n)长度为N点,其DFT为k=0,,…,N-1(1)计算一个X(k)值的运算量复数乘法次数:N复数加法次数:N-1575.2直接计算DFT的问题及改进的途径DFT的运算量设5.2.1DFT的运算量(2)计算全部N个X(k)值的运算量复数乘法次数:N2复数加法次数:N(N-1)(3)对应的实数运算量585.2.1DFT的运算量(2)计算全部N个X(k)值的运一次复数乘法:4次实数乘法2次实数加法+一个X(k):4N次实数乘法+2N+2(N-1)=2(2N-1)次实数加法所以整个N点DFT运算共需要:N×2(2N-1)=2N(2N-1)实数乘法次数:4N2实数加法次数:59一次复数乘法:4次实数乘法2次实数加法+一个X(k)DFT运算量的结论N点DFT的复数乘法次数举例NN2NN76结论:当N很大时,其运算量很大,对实时性很强的信号处理来说,要求计算速度快,因此需要改进DFT的计算方法,以大大减少运算次数。60DFT运算量的结论N点DFT的复数乘法次数举例NN2NN22
主要原理是利用系数的以下特性对DFT进行分解:(1)对称性(2)周期性(3)可约性另外,615.2.2减少运算工作量的途径主要原理是利用系数5.3按时间抽取的基2-FFT算法
算法原理按时间抽取基-2FFT算法与直接计算DFT运算量的比较按时间抽取的FFT算法的特点按时间抽取FFT算法的其它形式流程图625.3按时间抽取的基2-FFT算法算法原理95.3.1算法原理
r=0,1,…,则635.3.1算法原理设N=2L,将x(n)按n的奇偶分式中,X1(k)和X2(k)分别是x1(n)和x2(n)的N/2的DFT。另外,式中k的取值范围是:0,1,…,N/2-1。64式中,X1(k)和X2(k)分别是x1(n)和x2(n)的N因此,只能计算出X(k)的前一半值。后一半X(k)值,N/2,N/2+1,…,N?利用可得到同理可得65因此,考虑到因此可得后半部分X(k)及前半部分X(k)k=0,1,…,N/2-1k=0,1,…,N/2-166考虑到因此可得后半部分X(k)及前半部分X(k)k=蝶形运算蝶形运算式蝶形运算信号流图符号因此,只要求出2个N/2点的DFT,即X1(k)和X2(k),再经过蝶形运算就可求出全部X(k)的值,运算量大大减少。67蝶形运算蝶形运算式蝶形运算信号流图符号因此以8点为例第一次按奇偶分解以N=8为例,分解为2个4点的DFT,然后做8/2=4次蝶形运算即可求出所有8点X(k)的值。68以8点为例第一次按奇偶分解以N=8为例,分解为2个4点的DF蝶形运算量比较复数乘法次数:
分解一次后所需的运算量=2个N/2的DFT+N/2蝶形:因此通过一次分解后,运算工作量减少了差不多一半。
69蝶形运算量比较复数乘法次数:N2复数加法次数:N(N-1进一步按奇偶分解由于N=2L,因而N/2仍是偶数,可以进一步把每个N/2点子序列再按其奇偶部分分解为两个N/4点的子序列。以N/2点序列x1(r)为例
70进一步按奇偶分解由于N=2L,因而N/2仍是且k=0,1,…,由此可见,一个N/2点DFT可分解成两个N/4点DFT。同理,也可对x2(n)进行同样的分解,求出X2(k)。71且k=0,1,…,由此可见,一个N/2点DFT可分解成两个以8点为例第二次按奇偶分解72以8点为例第二次按奇偶分解19算法原理对此例N=8,最后剩下的是4个N/4=2点的DFT,2点DFT也可以由蝶形运算来完成。以X3(k)为例。k=0,1即这说明,N=2M的DFT可全部由蝶形运算来完成。73算法原理对此例N=8,最后剩下的是4个N/4以8点为例第三次按奇偶分解N=8按时间抽取法FFT信号流图74以8点为例第三次按奇偶分解N=8按时间抽取法FFT信号流图5.3.2按时间抽取基2-FFT算法与直接计算DFT运算量的比较
N2N(N-1)直接计算DFT与FFT算法的计算量之比为M76这样级运算总共需要:L复数乘法:复FFT算法与直接DFT算法运算量的比较NN2计算量之比MNN2计算量之比M2414.836.641644..0864125.13.816256328.0204..64372.1.477FFT算法与直接DFT算法运算量的比较NN2计算量之比M5.3.3按时间抽取的FFT算法的特点序列的逆序排列同址运算(原位运算)蝶形运算两节点间的距离的确定785.3.3按时间抽取的FFT算法的特点序列的逆序排列25序列的逆序排列由于x(n)被反复地按奇、偶分组,所以流图输入端的排列不再是顺序的,但仍有规律可循:因为N=2M,对于任意n(0≤n≤N-1),可以用M个二进制码表示为:
n反复按奇、偶分解时,即按二进制码的“0”“1”分解。序列的逆序排列79序列的逆序排列由于x(n)被反复地按奇倒位序的树状图(N=8)
自然顺序n二进制数倒位序二进制数倒位序顺序数111781码位的倒位序(N=8)自然顺序n二进制数倒位序二进制数倒倒位序的变址处理(N=8)82倒位序的变址处理(N=8)29同址运算(原位运算)某一列任何两个节点k和j的节点变量进行蝶形运算后,得到结果为下一列k、j两节点的节点变量,而和其他节点变量无关。这种原位运算结构可以节省存储单元,降低设备成本。运算前运算后例同址运算(原位运算)83同址运算(原位运算)某一列任何两个节点k和观察原位运算规律84观察原位运算规律31蝶形运算两节点间的距离
以N=8为例:第一级蝶形,距离为:第二级蝶形,距离为:第三级蝶形,距离为:规律:对于共L级的蝶形而言,其m级蝶形运算的节点间的距离为124蝶形运算两节点间的距离
算法原理再把输出X(k)按k的奇偶分组先把输入按n的顺序分成前后两半设序列长度为N=2L,L为整数前半子序列x(n)后半子序列
0≤n≤0≤n≤875.4按频率抽取的基2-FFT算法算法原理再把输出X(5.4.1算法原理由DFT定义得k=0,1,…,N885.4.1算法原理由DFT定义得k=0,1,…,N35由于所以则k=0,1,…,N89由于所以则k=0,1,…,N36然后按k的奇偶可将X(k)分为两部分r=0,1,…,则式可转化为90然后按k的奇偶可将X(k)分为两部分r=0,1,…,则式令n=0,1,…,代入r=0,1,…,可得为2个N/2点的DFT,合起来正好是N点X(k)的值。91令n=0,1,…,代入r=0,1,…,可得为2个N/蝶形运算将称为蝶形运算与时间抽选基2FFT算法中的蝶形运算符号略有不同。92蝶形运算将称为蝶形运算与时间抽选基2FFT算法中的蝶形运算符例按频率抽取(N=8)
例按频率抽取,将N点DFT分解为两个N/2点DFT的组合(N=8)93例按频率抽取(N=8)例按频率抽取,将N点DFT分与时间抽取法的推导过程一样,由于N=2L,N/2仍然是一个偶数,因而可以将每个N/2点DFT的输出再分解为偶数组与奇数组,这就将N/2点DFT进一步分解为两个N/4点DFT。N=894与时间抽取法的推导过程一样,由于N=2L,5.4.2频率抽取法与时间抽取法的异同
频率抽取法输入是自然顺序,输出是倒位序的;时间抽取法正好相反。频率抽取法的基本蝶形与时间抽取法的基本蝶形有所不同。频率抽取法运算量与时间抽取法相同。频率抽取法与时间抽取法的基本蝶形是互为转置的。
955.4.2频率抽取法与时间抽取法的异同频率抽取法输入是自5.5快速傅里叶逆变换(IFFT)算法IDFT公式DFT公式比较可以看出,IDFT多出M个1/2可分解到M级蝶形运算中。965.5快速傅里叶逆变换(IFFT)算法IDFT公式DFT例频率抽取IFFT流图(N=8)
1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
2026中煤环保公司徐州分公司社会招聘工作人员59人备考题库附答案详解(a卷)
2026四川成都都江堰首嘉医院2月招聘12人备考题库带答案详解(精练)
2026天津能源投资集团有限公司社会招聘创新服务中心副主任的1人备考题库及参详解1套
山东泰安市新泰市2025-2026学年八年级上学期期末检测历史试题(含答案)
