首页 > 代码库 > 准零基础搞懂FFT快速傅里叶变换及其实现程序(二)
准零基础搞懂FFT快速傅里叶变换及其实现程序(二)
准零基础搞懂FFT快速傅里叶变换及其实现程序(二)
上一篇文章我们了解了DFT的原理,FFT是基于DFT的更适合计算机运算的算法,本文我们就正式开始学习FFT的原理。
首先我么先来宏观的看一下FFT。如果我们把整个FFT的算法看成一个黑盒子的话,那么它的输入就是时间波形信号,比如声音波形(横轴为时间,纵轴为振幅)。外什么FFT要比DFT速度更快呢?下面(图1)解释了FFT和DFT的(对于计算机的)算法复杂度
图1
从上面的数学表达式可以看出,一个1024采样点的FFT比DFT块了102.4倍。如果傅里叶变换的数量级更大,FFT的速度优势会更明显。这就是为什么要发明FFT的意义。
要理解FFT,我们大致分为以下几步:
1. 学习“Danielson-Lanczos Lemma”,期间需用到要有些略微复杂的数学公式,但是这是FFT非常重要的一部分内容、
2.理解 “twiddle factor”。关于旋转因子,在上一篇DFT的文章中已经提到。
3.掌握“Butterfly Diagram”。蝶形运算,这也是FFT最具特点的一个算法。
4.掌握“reverse bit pattern”,由于我在英国上的学,不知道中文这个叫什么,读者可以百度 下。
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。