数字信号处理–FFT与蝶形算法

FFT是DTF的一种快速算法,利用了旋转因子的特效对DFT进行了化简,大大的减少了计算量.

旋转因子的特性

  • 对称性
  • 周期性
  • 可约性
  • 推论

基-2 FFT算法推导

1.将序列分解成奇数序列和偶数序列.

2.化简

  • 将N个元素的序列拆分为两个N/2个元素的序列
  • 将旋转因子的指数的分子和分母同时除以2
  • 将第二项的旋转因子抽出,使旋转因子指数相同
  • 化简后的式子k的取值范围为0~(N/2)-1,因为取值超过(N/2)-1会超出分解后的序列长度


3.计算后半序列(N/2)

为了计算N/2之后的序列,使k+(N/2)
后半序列和前半序列的值相等,但旋转因子的符号不同,化简过程中利用了旋转因子的特性.

参考

蝶形运算式

综合以上推导我们可以得到如下结论:一个N点的DFT变换过程可以用两个N/2点的DFT变换过程来表示

8点DFT的4点分解

8点DFT的2点分解


参考文献:
https://www.cnblogs.com/luoqingyu/p/5930181.html
https://max.book118.com/html/2019/0107/8116053027002000.shtm

数字信号处理--FFT与蝶形算法--学习笔记相关推荐

  1. 快速傅里叶变换(FFT)与多项式算法学习笔记

    参考资料:menci的博客 前言: 最近在学习生成函数,无奈的发现如果我不学习\(O(nlogn)\)的多项式算法的话什么题也做不了qwq 于是就滚来学习FFT了 其实写的很烂,主要是给自己看的 好像 ...

  2. Python预测 数据分析与算法 学习笔记(特征工程、时间序列)

    微信公众号:数学建模与人工智能 GitHub - QInzhengk/Math-Model-and-Machine-Learning 第3章 探索规律 3.1 相关分析 相关关系是一种与函数关系相区别 ...

  3. 机器学习knn算法学习笔记使用sklearn库 ,莺尾花实例

    ** 机器学习knn算法学习笔记使用sklearn库 ,莺尾花实例. 具体knn算法是怎样的我这里就不再详细论述.在这里我注意总结我使用knn算法进行一个分类的分析 ** 分析过程 1.前期准备 引入 ...

  4. 基于MVS的三维重建算法学习笔记(二)— 立体视觉的几何基础总结

    基于MVS的三维重建算法学习笔记(二)- 立体视觉的几何基础总结 声明 概述 1. 常见三维数据类型 2. 三维形状的几种表达形式 3. 三维空间刚体运动 4. 李群和李代数 5. 相机标定 6. 非 ...

  5. 数学建模算法学习笔记

    数学建模算法学习笔记 作为建模Man学习数学建模时做的笔记 参考文献: <数学建模姜启源第四版> 网上搜罗来的各种资料,侵删 1.线性预测 levinson durbin算法,自相关什么的 ...

  6. 数据结构与算法学习笔记4:递归+分治法

    数据结构与算法学习笔记4 递归 斐波那契数列 青蛙跳台阶问题 链表倒序打印 分治法 二分查找/折半查找 Binary Search 题目1:快速幂 题目2:如何判断一个数是否为2的次幂 递归 指在函数 ...

  7. 数据结构与算法 学习笔记(5):字符串

    数据结构与算法 学习笔记(5)- 字符串 本次笔记记录了LeetCode中关于字符串的一些问题,并给出了相应的思路说明和代码.题目编号与LeetCode对应,方便查找. 题目1:LeetCode 13 ...

  8. 数据结构与算法 学习笔记(8):字典、集合、哈希表

    数据结构与算法 学习笔记(8):字典.集合.哈希表 本次文章记录的是和字典.集合.哈希表等数据结构相关的LeetCode算法题(题号与LeetCode对应),包括其构造和使用,针对每一题或一类题给出了 ...

  9. 大顶堆删除最大值_算法学习笔记(47): 二叉堆

    堆(Heap)是一类数据结构,它们拥有树状结构,且能够保证父节点比子节点大(或小).当根节点保存堆中最大值时,称为大根堆:反之,则称为小根堆. 二叉堆(Binary Heap)是最简单.常用的堆,是一 ...

  10. Manacher算法学习笔记 | LeetCode#5

    Manacher算法学习笔记 DECLARATION 引用来源:https://www.cnblogs.com/grandyang/p/4475985.html CONTENT 用途:寻找一个字符串的 ...

最新文章

  1. 部署WSUS2.0+SP1
  2. SVN 版本控制的数据合并规则
  3. 红黑树的红黑标志有什么用
  4. 解决formview遍历控件的问题
  5. 如何将U盘刻录为系统启动盘?
  6. 美文听力:别错过机会
  7. Moon Modeler v1.6.5功能和特点
  8. springbus类是做什么用的_SpringCloud-Bus组件的使用
  9. vue将图片链接、本地图片转为二进制文件流
  10. Django推导Django内部模块:wsgiref与jinja2
  11. 践行社会责任的路上,中概股们看到了怎样的风景?
  12. 关于PEP8报too long问题的解决方式
  13. Quartus软件及器件库下载及安装
  14. QQ是怎么处理消息的
  15. 如果想做数据标注,你可能会遇到哪些坑?
  16. 禁用格式工厂的Bright Data
  17. 拉勾数据分析实战训练营
  18. paypal余额限制_如何将您的PayPal余额转换成可以在任何地方消费的借记卡
  19. springboot+springsecurity+阿里云短信服务验证实现注册登录
  20. 如何检查显卡支持哪个版本的CUDA ?

热门文章

  1. Python题目:个人所得税计算
  2. android 常用机型尺寸_目前主流的智能手机的屏幕尺寸与分辨率是多少?
  3. 聊天类APP的测试点
  4. 批处理(bat)遍历文件夹下所有文件
  5. python 运动模糊 退化模型 点扩散函数 逆滤波与维纳滤波
  6. Excel如何快速生成随机姓名
  7. 技嘉服务器主板装系统,技嘉主板u盘装系统怎么进行bios设置的方法
  8. 值得收藏的5款办公软件,PDF转Word不再头疼
  9. mysql绿化,Mysql精简与绿化版本
  10. 计算机网络管理员考试真题,2020年计算机软考网络管理员测试题及答案(20200810164142)...