实验三 快速傅立叶变换.pdfVIP

  • 10
  • 0
  • 约4.34千字
  • 约 26页
  • 2017-05-21 发布于浙江
  • 举报
实验三 快速傅立叶变换

实验三 快速傅立叶变换 一、实验目的  加深对离散傅立叶变换 (DFT)的理解。  掌握利用MATLAB语言进行离散傅立叶变换和逆变换的 方法。  加深对离散傅立叶变换基本性质的理解。  掌握离散傅立叶变换快速算法的应用。 二、实验原理及方法  有限长序列通过离散傅里叶变换 (DFT)将其频域离 散化成有限长序列.但其计算量太 (与N的平方成 正比), 很难实时地处理问题, 因此引出了快速 傅里叶变换 (FFT)。  FFT并不是一种新的变换形式,它只是DFT的一种快 速算法.并且根据对序列分解与选取方法的不同而 产生了FFT的多种算法.  DFT的快速算法—FFT是数字信号处理的基本方法和基 本技术,是必须牢牢掌握的。  时间抽选FFT算法的理论推导和流图详见 《数字信号处 理》教材。该算法遵循两条准则: (1)对时间奇偶分;(2)对频率前后分。  这种算法的流图特点是: (1)基本运算单元都是蝶形 M 任何一个长度为N=2 的序列,总可通过M次分解最后 成为2点的DFT计算。如图所示: k W 称为旋转因子 N  计算方程如下: k X (p)=X (p)+W X (q) m+1 m N m k X (q)=X (p)-W X (q) m+1 m N m (2)同址 (原位)计算 这是由蝶形运算带来的好处,每一级蝶形运算的结果 X (p)无须另外存储,只要再存入X (p)中即可,X (q) m+1 m m+1 亦然。这样将大大节省存储单元。 (3)变址计算 输入为 “混序” (码位倒置)排列,输出按自然序排 列,因而对输入要进行 “变址”计算 (即码位倒置计算)。 “变址”实际上是一种 “整序”的行为,目的是保证 “同 址”。 FFT的应用  凡是利用付里叶变换来进行分析、综合、变换的 地方,都可以利用FFT算法来减少其计算量。  FFT主要应用在 1、快速卷积 2、快速相关 3、频谱分析 快速傅立叶变换的MATLAB实现  提供fft函数计算DFT  格式 X=fft(x) X=fft(x,N)  如果x的长度小于N,则在其后填零使其成为N点序列, 反之对x进行截断,若省略变量N,则DFT的长度即为x 的长度。  如果N为2的幂,则得到高速的基-2FFT算法;若N不是2 的乘方,则为较慢的混合算法。  如果x是矩阵,则X是对矩阵的每一列向量作FFT。 快速傅立叶逆变换 (IFFT)  函数调用格式 y=ifft(x) y=ifft(x,N)  当N小于x长度时,对x进行截断,当N大于x长 度时,对x进行补零。 fftshift函数  功能: 对fft的输出进行重新排列,将零频分量移到频谱的中 心。  调用格式 y=fftshift(x) 当x为向量时,fftshift(x)直接将x中左右两半交换而 产生y。 当x为矩阵时,fftshift(x)直接将x中左右、上下进行 交换而产生y。 例:已知信号由15Hz幅值0.5的正弦信号和40Hz 幅值2的正弦信号组成,数据采样频率为100Hz, 试绘制N=128点DFT的幅频图。 由题目

文档评论(0)

1亿VIP精品文档

相关文档