知乎上有几个比较好的讲解傅里叶变换的文章:
傅里叶分析之掐死教程(完整版)
通过这些文章都能对频谱有大致了解,但等你自己坐下了,要对一个信号进行频谱分析时,你会发现好多细微的问题其实并没有注意,下面,将讲讲那些细微的问题
#实现快速傅里叶变换
忠告:除非你自己为了验证你的能力,或为了验证你对对快速傅里叶变换算法的了解,千万别用自己写的快速傅里叶变换算法,也别在网上随便找一个算法就拿来用,快速傅里叶变换算法全世界比较权威的有
FFTW
,是由其由MIT(麻省理工学院)的M.Frigo 和S. Johnson 开发,可计算一维或多维实和复数据以及任意规模的DFT。当然,你如果不屑于人家一个学院开发的快速傅里叶变换库,你用你自己写的快速傅里叶变换算法没人拦着你,不过你如果不是用汇编来写那你已经输在了起跑线上了。 废话说那么多就是让你别用自己写的快速傅里叶变换算法,推荐大家使用人家经过十几年磨练的成熟库,其中FFTW就是一个很好的选择
#FFT
工程中遇到的问题都是这样的:有一个信号,采样率为fs,求频谱
首先用一段matlab的代码进行成信号
N = 256;
t = linspace(0,2*pi,256);
Fs = 100;
t = [0:N-1]./Fs;
wave = 1*cos(2*pi*10.*t) ...
+ 2*sin(2*pi*15.*t +