数学定义:

(详细参考:https://www.baidu.com/link?url=oYAuG2o-pia_U3DlF5n_MJZyE5YKfaVRUHTTDbM1FwM_kDTjGCxKpw_PbOK70jE2geVioprSVyPTTQuLwN-IhMH8NREmWSDnmcfQEY8w0kq&wd=&eqid=8244c46a0009451a000000035c0e2c39)

有限长序列可以通过离散傅里叶变换(DFT)将其频域也离散化成有限长 序列.但其计算量太大,很难实时地处理问题,因此引出了快速傅里叶变换 (FFT).  1965 年,Cooley 和 Tukey 提出了计算离散傅里叶变换(DFT)的快 速算法,将 DFT 的运算量减少了几个数量级。从此,对快速傅里叶变换(FFT) 算法的研究便不断深入,数字信号处理这门新兴学科也随 FFT 的出现和发 展而迅速发展。根据对序列分解与选取方法的不同而产生了 FFT 的多种算 法,基本算法是基2DIT 和基2DIF。FFT 在离散傅里叶反变换、线性卷积 和线性相关等方面也有重要应用。

快速傅里叶变换(FFT)是计算离散傅里叶变换(DFT)的快速算法。

DFT 的定义式为:

代码示例:

%fft示例:产生60Hz和150Hz带噪声的信号源,并用傅里叶变换方法查找主频信号
%产生带噪声的声源信号,并提取离散信号
t=0:0.001:0.6;
%噪声信号的主频是60Hz和150Hz
x=sin(2*pi*60*t)+sin(2*pi*150*t);
y=x+2*randn(size(t));
plot(1000*t(1:50),y(1:50))
title('Signal Corrupted with Zero-Mean Random Noise')
xlabel('time(ms)')
grid on; %进行512点的快速傅里叶变换
Y=fft(y,512);
%功率谱测量计算
Pyy=Y.*conj(Y)/512;
f=1000*(0:256)/512;
%绘制频谱图形
figure;
plot(f,Pyy(1:257))
title('Frequency content of y')
xlabel('frequency(Hz)')
grid on;

  

最新文章

  1. 【转】窗口之间的主从关系与Z-Order
  2. iOS7光标问题
  3. [topcoder] EllysNumberGuessing
  4. linux下进度条的简单实现
  5. 安装 PLSQL笔记
  6. oracle中字符串的大小比较,字符串与数字的比较和运算
  7. hadoop一键安装伪分布式
  8. CoUninitialize引发的一个错误
  9. 扫盲记-第六篇--Normalization
  10. WEB前端工程师的职业发展路线图、怎样做WEB前端职业规划
  11. POJ 3264 Balanced Lineup (线段树查找最大最小值)
  12. 【洛谷P2661】信息传递
  13. 并查集:POJ 1182 食物链 复习
  14. python 基础 特殊符号的使用
  15. OAF_OAF控件系列3 - Poplist的实现(案例)
  16. Codeforces 985G. Team Players
  17. Day19内容回顾
  18. node 封装db层
  19. Eclipse debug 的 drop to frame 的技巧
  20. delphi dispose释放内存的方法 New 和 GetMem 的区别

热门文章

  1. 微信小程序 input使用letter-spacing失效问题
  2. 关于Angular官网《英雄指南》教程几点问题修正(此问题在2018年4月份有效,以后可能就订正了)
  3. Core Animation 负责将bitmap绑定提交到 GPU-[CALayer _display]
  4. luogu P2000 拯救世界 生成函数_麦克劳林展开_python
  5. Android 7.0 Gallery图库源码分析1 - 初识Gallery源码
  6. jq——DOM文档处理
  7. js-数组和字符串转化
  8. php版本过低错误导致的laravel 错误:Illuminate\Foundation\helpers.php on line 233; syntax error, unexpected '?'
  9. DOM元素属性值如果设置为对象
  10. BZOJ 3672 [NOI2014]购票 (凸优化+树剖/树分治)