FFT算法的应用研究.doc

FFT算法的应用研究.doc

ID:61005132

大小:392.00 KB

页数:18页

时间:2021-01-19

FFT算法的应用研究.doc_第1页
FFT算法的应用研究.doc_第2页
FFT算法的应用研究.doc_第3页
FFT算法的应用研究.doc_第4页
FFT算法的应用研究.doc_第5页
资源描述:

《FFT算法的应用研究.doc》由会员上传分享,免费在线阅读,更多相关内容在应用文档-天天文库

1、《数字信号处理》课程设计报告FFT算法的应用研究专业:通信工程班级:通信11级组次:第20组姓名及学号:吴杨生姓名及学号:朱泽章组员承担任务吴杨生共同完成任务朱泽章共同完成任务指导教师评价意见FFT算法的应用研究一、设计目的MATLAB是一种功能强大、效率高、交互性好的数值和可视化计算机高级语言,它将数值分析、矩阵运算、信号处理和图形显示有机地融合为一体,形成了一个极其方便、用户界面友好的操作环境。。经过多年的发展,已经发展成为一种功能全面的软件,几乎可以解决科学计算中所有问题。MATLAB软件还提供了非常广泛和灵活的用于处理数据集的数

2、组运算功能。FFT算法的应用研究很广泛,数字信号也有很多,本次课程设计采取对语音信号进行FFT算法的的应用研究:录制一段个人自己的语音信号,并对录制的信号进行采样;画出采样后语音信号的时域波形和频谱图;在Matlab环境下编写基2DIT-FFT算法;利用自己编写的算法对已采集的语音信号进行频谱分析,并画出语音信号的时域与频谱图,并与Matlab数字信号处理工具箱中的fft函数进行对比研究,验证自编算法的正确性二、设计任务对语音信号进行FFT算法的的应用研究三、设计原理1系统总体流程图本设计要求录制一段个人自己的语音信号,并对录制的信号进

3、行采样;画出采样后语音信号的时域波形和频谱图;在Matlab环境下编写基2DIT-FFT算法;利用自己编写的算法对已采集的语音信号进行频谱分析,并画出语音信号的时域与频谱图,并与Matlab数字信号处理工具箱中的fft函数进行对比研究,验证自编算法的正确性。所以得到系统总体流程图如图1所示。语音信号采集完成信号时域图完成信号频率响应编写fft程序,画出信号频谱图实现输入信号的倒序实现一级中不同种蝶形算运实现一级中相同种蝶形运算与Matlab自带的FFT比较图1系统总体流程图2.FFT运算规律及编程思想2.1语音信号的采集利用PC机自带的

4、录音机,录制一段语音信号,保存格式为wave的文件,并将其保存在电脑中。在MATLAB中,fn=input('EnterWAVfilename:','s');[x,fs,nb]=wavread(fn,[n1n2]);用于读取语音,采样值放在向量x中,fs表示采样频率(Hz),nb表示采样位数。[n1n2]表示读取从n1点到n2点的值(若只有一个n的点则表示读取前n点的采样值)。sound(x,fs,nb);用于对声音的回放。向量x则就代表了一个信号(也即一个复杂的“函数表达式”)也就是说可以像处理一个信号表达式一样处理这个声音信号。采集

5、到语音信号之后,需要对语音信号进行分析,如语音信号的时域分析、频谱分析、谱图分析。2.2DIT-FFT算法的基本原理快速傅里叶变换(FFT)是为提高DFT运算速度而采用的一种算法。对一个有限长度序列x(n)的N点的DFT为:所以,要求N点的DFT,需要N2次的复数乘法运算,N*(N-1)次复数乘法运算算。随着N的增加,运算量将急剧增加,而在实际问题中,N往往是较大的,如当N=1024时,完成复数乘法和复数加法的次数分别为百万以上,无论是用通用计算机还是用DSP芯片,都需要消耗大量的时间,不能满足实时的要求,,不适合于对实时处理要求高的场

6、合。为了能实时处理DFT,要想减少DFT的运算量可以有两个途径:第一是降N,N的值减小了,运算量就减少了;第二是利用旋转因子的周期性,对称性和可约性。利用这两个途径实现DFT的快速傅里叶变换(FFT),FFT算法基本上可分为按时间抽取的FFT算法(DIT-FFT)和按频率抽取的FFT算法(DIF-FFT)。旋转因子的性质:(1)周期性(2)共轭对称性(3)可约性本次课设要求用用基2的按时间抽取的FFT算法(DIT-FFT)实现FFT功能,设序列x(n)的长度为N,且N满足N=2M,M为正整数。若N不能满足上述关系,可以将序列x(n)补零

7、实现。按时间抽取基2-FFT算法的基本思路是将N点序列按时间下标的奇偶分为两个N/2点序列,计算这两个N/2点序列的N/2点DFT,计算量可减小约一半;每一个N/2点序列按照同样的划分原则,可以划分为两个N/4点序列,最后,将原序列划分为多个2点序列,将计算量大大降低。按时间下标的奇偶将N点x(n)分别抽取组成两个N/2点序列,分别记为x1(n)和x2(n),将x(n)的DFT转化为x1(n)和x2(n)的DFT的计算。利用旋转因子的可约性,即:用蝶形运算可表示为如图2所示:图2DIT-FFT蝶形运算流图符号以此类推,还可以把x1(n)

8、和x2(n)按n值得奇偶分为两个序列,这样就达到了降N得目的,从而减少了运算量。FFT对DFT的数学运算量改进:直接采用DFT进行计算,运算量为N2次复数乘法和N*(N-1)次复数乘法。当采用M次FFT时,

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。