FFT原理解析

频域分析原理频域分析最被大众所熟知的可能是卡拉ok的音频频谱显示,这里贴一个来自avr单片机的项目 ,其中就用到了fft来对语音信号进行分析:
视频中横坐标为频率,纵坐标为功率,而且能够实时的反映出语音的频谱。
fft是dft(离散傅里叶变换)的加速算法,最早是由cooley和tukey在1965年提出 ,这里面用了很多的技巧,其方向是如何减小计算过程中所需要的乘法运算,另外fft一次可以计算n个点,而且随着n的增大,fft优势就会非常明显。dft复杂度(按乘法数量来计算)是 ,而fft复杂度是 ,参考 .
这里简单的理解下dft,假设我们有一个待测数字序列a(a序列是以fs采样的n点信号,采样间隔为ts),假设此序列中暗含一个频率为fa的正弦波信号,但是此暗含的信号幅度和相位我们并不知道是多少,现在我们的目标是求出此信号的的幅度和相位信息。
我们可以使用信号相关来解决此问题 ,构造2个频率均为fa,幅度均为1的正弦和余弦序列b和c,然后用这两个序列分别和a序列相乘,然后滤波,最后输出的两个信号就可以求出幅度和相位,假设a序列中含有非fa频率的信号,相乘滤波后幅度为0,表示此序列中的非fa频率信号都将被滤除,最后结果就只有和fa频率相关信号被保留下来。
使用公式描述即:
a信号序列为:
b信号序列为:
c信号序列为:
则两个输出且滤波(信号求平均)后的结果是:
通过这两个信号就可以求出x[i]中所含fa信号的幅度和相位:
式中,当i=n时,正弦信号和余弦信号相位需要是 的整数倍,这样滤波器刚刚好将其他频率的信号完全滤除掉,也就是说不会出现频谱泄露,所以有: 将上式改写如下: 若进行n点的dft计算,只要满足上式了,就可以保证在第k个频率点出现信号,而不会在dft中出现频谱泄露问题。
程序验证1%-------------------------------------------------------------------------- 2% edited by bbl 3% date: 2021-10-31(yyyy-mm-dd) 4% fft计算 5%-------------------------------------------------------------------------- 6fa = 200.1953125e6; % 信号频率,不出现频谱混叠 7% fa = 200e6; % 信号频率,出现频谱混叠 8a0 = 1; % 信号幅度 9fs = 1e9; % 采样率10nfft = 1024; % fft点数11wa = 2*pi*fa;12ts = 1/fs;13t = 0:ts:ts*(nfft-1); % 构造时间序列14vn = 1e-3*randn(1,nfft); % 构造噪声15y = a0*sin(wa*t)+vn; % 构造信号序列,加入了噪声方便观察16x = fft(y, nfft); % 计算fft17amp = 2*abs(x)/nfft; % 计算幅度18amp_log = 20*log10(amp); % 幅度转换为db19f = linspace(0, fs/2, nfft/2+1)*1e-6;20plot(f, amp_log(1:nfft/2+1), '-r', 'linewidth', 1);21grid on;22ylim([-100,10]);23ylabel('amp/dbfs');24xlabel('freq/mhz');25title(sprintf('fft, fs=%0.2fm hz, fa=%0.8fm hz', fs*1e-6,fa*1e-6));仿真结果:
若将fa修改为200.1953125m,得到:
波形正常.
若将fa修改为200.0000000m,得到:
出现了频谱混叠.
小程序实现电路设计小工具中实现的是计算fa值,使得在fft计算过程中不会出现频谱泄露,当然也可以从给定输出频率计算出最接近的不会出现频谱泄露问题的频率点。本例中是输入200mhz,查看最接近200mhz而不出现频谱泄露的频率点:
也可以计算一个bin内的频率带宽:
当然,此小程序能显示当前信号落在那个奈奎斯特区域:
表示fa信号落在第二奈奎斯特区域。

上拉电阻和下拉电阻的用处和区别
华为P20渲染图曝光:异形全面屏+麒麟970
NI建议将LabVIEW NXG用于使用传感器或执行器测量物理系统
Linear推出高效率,4MHz同步降压型稳压器LTC361
国家电网服务国家重大战略实施:彰显央企脊梁作用
FFT原理解析
买了Mac不知道怎么用?这有份Mac使用的经验之谈
PLC的发展历史
限制出口!芯片业或受重创
PROTO用于桥接Arduino兼容板与可编程逻辑控制器
笔记本72%NTSC和100%sRGB色域的区别
表皮电子再显神威 可穿戴设备出现新转机
单相电机的种类
苹果华为齐发力_人工智能普及还得联发科
物联网迎来发展黄金期
大众希望最终第三跳时拿出特斯拉价格一半的好产品以及高性能产品矩阵
多传感器融合定位在高速铁路的应用[图]
海尔自主创牌抢滩全球市场 智慧家庭为全球用户定制美好生活
小米蓝牙耳机K歌版正式开售 拥有耳返监听功能延迟低至6ms
CPU缓存对性能的影响