第五章 快速傅里叶变换 本章目录 直接计算DFT的问题及改进的途径 5.1 引言 DFT在实际应用中很重要: 可以计算信号的频谱、功率谱和线性卷积等。 直接按DFT变换进行计算,当序列长度N很大时,计算量非常大,所需时间会很长。 FFT并不是一种与DFT不同的变换,而是DFT的一种快速计算的算法。 5.2 直接计算DFT的问题及改进的途径 DFT的运算量 5.2.1 DFT的运算量 DFT运算量的结论 5.2.2 减少运算工作量的途径 5.3 按时间抽取的基2-FFT算法 算法原理 按时间抽取基-2FFT算法与直接计算DFT运算量的比较 按时间抽取的FFT算法的特点 按时间抽取FFT算法的其它形式流程图 5.3.1 算法原理 蝶形运算 以8点为例第一次按奇偶分解 蝶形运算量比较 进一步按奇偶分解 以8点为例第二次按奇偶分解 算法原理 以8点为例第三次按奇偶分解 5.3.2 按时间抽取基2-FFT算法与直接计算DFT运算量的比较 FFT算法与直接DFT算法运算量的比较 5.3.3 按时间抽取的FFT算法的特点 序列的逆序排列 倒位序的树状图(N=8) 码位的倒位序(N=8) 倒位序的变址处理(N=8) 同址运算(原位运算) 观察原位运算规律 蝶形运算两节点间的距离 的确定 5.4 按频率抽取的基2-FFT算法 算法原理 5.4.1 算法原理 蝶形运算 例 按频率抽取(N=8) 5.4.2 频率抽取法与时间抽取法的异同 频率抽取法输入是自然顺序,输出是倒位序的;时间抽取法正好相反。 频率抽取法的基本蝶形与时间抽取法的基本蝶形有所不同。 频率抽取法运算量与时间抽取法相同。 频率抽取法与时间抽取法的基本蝶形是互为转置的。 5.5 快速傅里叶逆变换(IFFT)算法 例 频率抽取IFFT流图(N=8) 快速傅里叶逆变换另一种算法 5.8 Matlab实现 用FFT进行谱分析的Matlab实现 用CZT进行谱分析的Matlab实现 5.8.1 用FFT进行谱分析的Matlab实现 例5.1程序清单 例5.1程序运行结果 例5.1程序运行结果分析 例5.1修改程序运行结果 以N=8为例: 第一级蝶形,距离为: 第二级蝶形,距离为: 第三级蝶形,距离为: 规律:对于共L级的蝶形而言,其m级蝶形运算的节 点间的距离为 1 2 4 蝶形运算两节点间的距离 以N=8为例: 的确定 再把输出X(k)按k的奇偶分组 先把输入按n的顺序分成前后两半 设序列长度为N=2L,L为整数 前半子序列x(n) 后半子序列 0≤n≤ 0≤n≤ 由DFT定义得 k=0,1, …,N 由于 所以 则 k=0,1, …,N 然后按k的奇偶可将X(k)分为两部分 r=0,1, …, 则式 可转化为 令 n=0,1, …, 代入 r=0,1, …, 可得 为2个N/2点的DFT,合起来正好是N点X(k)的值。 将 称为蝶形运算 与时间抽选基2FFT算法中的蝶形运算符号略有不同。 例 按频率抽取,将N点DFT分解为两个N/2点DFT的组合(N=8) 与时间抽取法的推导过程一样,由于 N=2L,N/2仍然是 一个偶数,因而可以将每个N/2点DFT的输出再分解为偶数组 与奇数组,这就将N/2点DFT进一步分解为两个N/4点DFT。 N=8 IDFT公式 DFT公式 比较可以看出, IDFT多出 M个1/2可分解到M级蝶形运算中。 在Matlab中使用的线性调频z变换函数为czt,其调用格式为 >>X= czt(x, M, W, A) 其中,x是待变换的时域信号x(n),其长度为N,M是变换的长度,W确定变换的步长,A确定变换的起点。若M= N,A= 1,则CZT变成DFT。 例5.1 设模拟信号 ,以 t= 0.01n (n=0: N-1) 进行取样,试用fft函数对其做频谱分析。N分别为:(1) N=45;(2) N=50;(3) N=55;(2) N=60。 程序清单如下 %计算N=45的FFT并绘出其幅频曲线 N=45;n=0:N-1;t=0.01*n; q=n*2*pi/N; x=2*sin(4*pi*t)+5*cos(8*pi*t); y=fft(x,N); figure(1) subplot(2,2,1) plot(q,abs(y)) title('FFT N=45') %计算N=50的FFT并绘出其幅频曲线 N=50;n=0:N-1;t=0.01*n; q=n*2*pi/N; x=2*sin(4*pi*t)+5*cos(8*pi*t

matlab 8点fft蝶形图,FFT快速傅里叶变换(蝶形算法)详解精要.ppt相关推荐

  1. 【数据结构基础整理】图--06:克鲁斯卡尔算法详解

    详解最小生成树中的克鲁斯卡尔算法 0x01.关于克鲁斯卡尔算法 Kruskal算法是一种用来查找最小生成树的算法,由Joseph Kruskal在1956年发表.克鲁斯卡尔算法主要针对边集数组展开. ...

  2. 快速傅立叶变换算法详解(小白也能看懂的FFT教程)

    写在前面 我为什么要写这篇博客? \quad 如果你随便拉几个OI党,问他们最难理解的几个算法,FFT一定榜上有名.我从开始尝试理解FFT算法到真正理解FFT算法之间间隔了一年之久,但是当我真正理解了 ...

  3. 图--最短路径(四种算法详解)

    最短路径 dijkstra算法 邻接矩阵实现 邻接表实现 最小堆优化 应用:多权值+多路径+路径输出 Floyd算法 Bellman ford算法 SPFA算法 dijkstra算法 单源最短路径算法 ...

  4. Matlab人脸检测算法详解

    这是一个Matlab人脸检测算法详解 前言 人脸检测结果 算法详解 源代码解析 所调用函数解析 bwlabel(BW,n) regionprops rectangle 总结 前言 目前主流的人脸检测与 ...

  5. matlab的NLP功能,pyhanlp 共性分析与短语提取内容详解

    pyhanlp 共性分析与短语提取内容详解 简介 HanLP中的词语提取是基于互信息与信息熵.想要计算互信息与信息熵有限要做的是 文本分词进行共性分析.在作者的原文中,有几个问题,为了便于说明,这里首 ...

  6. 3d网上渲染平台是怎么渲图的_云渲染流程详解!

    题主说的看到许多网友对''3d网上渲染平台是怎么渲图的''进行提问,瑞云渲染小编也提供自己的小小见解.针对3D网上渲染平台是指什么,实际应该是指云渲染农场.几十年来,随着计算机软硬件不断更迭,图形图像 ...

  7. 精灵骑士二觉_DNF精灵骑士二觉刷图加点 精灵骑士二觉连招详解

    DNF精灵骑士二觉刷图加点 精灵骑士二觉连招详解,DNF二觉后精灵骑士要如何刷图呢?此次小编就为各位玩家们带来精灵骑士刷图加点和连招技巧的详细讲解,一起来看看吧! 技能说明: Z:精灵骑士的Z,霸体时 ...

  8. 粒子群(pso)算法详解matlab代码,粒子群(pso)算法详解matlab代码

    粒子群(pso)算法详解matlab代码 (1)---- 一.粒子群算法的历史 粒子群算法源于复杂适应系统(Complex Adaptive System,CAS).CAS理论于1994年正式提出,C ...

  9. python3d动态图-Python图像处理之gif动态图的解析与合成操作详解

    本文实例讲述了Python图像处理之gif动态图的解析与合成操作.分享给大家供大家参考,具体如下: gif动态图是在现在已经司空见惯,朋友圈里也经常是一言不合就斗图.这里,就介绍下如何使用python ...

  10. 云渲染一张图贵吗?渲染问题详解

    我们知道使用云渲染可以个高效快捷的渲染工程项目文件,节省很多时间,广受CG行业人员的喜爱,而且也相信有很多小伙伴经常会有疑问:云渲染一张图多钱?今天,就随云渲染小编一起来了解清楚这些问题... 一.云 ...

最新文章

  1. 报表模板 — 在项目管理中应用数据报表分析
  2. 语音保存 ,与下载,
  3. 单片机小白学步系列(二十) IO口原理
  4. UVA-714 二分
  5. python中哪里用到缩进_建筑防火中各类门的总结归纳!乙级门?甲级门?都哪里用到了!...
  6. ant design vue table 高度自适应_Vue.JS 实现拼拼乐小游戏项目
  7. 程序员谨防加班猝死之十大建议(转)
  8. 帆软图表折线图Y轴更改为ABCD等级标签折线的显示改造
  9. System Center 2012 R2 CM系列之配置configuration manager防火墙设置
  10. 面向单片机编程(一)- 单片机该怎么学
  11. Centos系统安装masscan
  12. opencv图像处理及视频处理基本操作
  13. QQ现状深度剖析:你还认为QQ已经被微信打败了吗?
  14. 影响Google Adsense广告单价高低的因素分析获取更高的收入
  15. python统计英文文章中单词的个数无文件_求Python统计英文文件内单词个数的思路...
  16. 从零搭建游戏服务器,编译过程和环境部署教程详解
  17. 【深度学习】TensorFlow基础知识点总结
  18. 共享计算机型n4中n代表什么,n代表什么(n代表的所有含义)
  19. 服务拆分的设计和思考(B2B 技术共享第九篇)
  20. 空号筛选接口的原理和优势

热门文章

  1. Android webview拦截请求
  2. RANSAC介绍(Matlab版直线拟合+平面拟合)
  3. [CISCN2019 总决赛 Day2 Web1]Easyweb
  4. [shell][原创]shell脚本遍历文件夹下所有文件
  5. visio连接线设置
  6. 计算机在无纸化办公系统中应用属于,浅析计算机技术在无纸化办公中的应用
  7. 你的脑容量(字符串问题,小技巧)
  8. 电脑上的字体安装教程
  9. python矩阵连乘_python动态规划解决矩阵连乘
  10. linux下安装php+apache+mysql集成环境