毕业论文基于matlab简易声音信号频谱分析仪设计说明书

毕业论文基于matlab简易声音信号频谱分析仪设计说明书

ID:19583112

大小:939.00 KB

页数:77页

时间:2018-10-03

毕业论文基于matlab简易声音信号频谱分析仪设计说明书_第1页
毕业论文基于matlab简易声音信号频谱分析仪设计说明书_第2页
毕业论文基于matlab简易声音信号频谱分析仪设计说明书_第3页
毕业论文基于matlab简易声音信号频谱分析仪设计说明书_第4页
毕业论文基于matlab简易声音信号频谱分析仪设计说明书_第5页
资源描述:

《毕业论文基于matlab简易声音信号频谱分析仪设计说明书》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库

1、基于MATLAB的简易声音信号频谱分析仪设计摘要语音信号处理技术是语音处理领域中新近发展起来的一个学科分支,而频谱分析技术是进行语音信号处理的基础。DFT及FFT变换是进行数字信号频谱分析的重要方法。DFT是FFT的基础,FFT是DFT的快速算法。MATLAB是一个数据分析和处理功能十分强大的工程实用软件,运用它来进行语音信号的采集、分析和处理相当方便。本文介绍了在MATLAB环境中如何采集声音信号和采集后的频谱分析方法,并使用MATLAB软件的GUI模块,设计了一个简易的声音信号频谱分析仪。关键字:MATLAB,FFT,

2、声音信号,频谱分析1概述随着信息时代和数字世界的到来,数字信号处理己成为当今一门极其重要的学科和技术领域,数字信号处理在通信、语音、图像、自动控制、医疗和家用电器等众多领域得到了广泛的应用。任意一个信号都具有时域与频域特性,信号的频谱完全代表了信号,因而研究信号的频谱就等于研究信号本身。通常从频域角度对信号进行分析与处理,容易对信号的特性获得深入的了解。因此,信号的频谱分析是数字信号处理技术中的一种较为重要的工具【2】。声卡是计算机最基本的配置硬件之一,价格便宜,使用方便。MATLAB工具箱集成了一些语音处理功能函数。本文

3、将给出基于声卡与MATLAB的声音信号频谱分析仪的设计原理与实现方法。1设计原理频谱分析用傅立叶变换将波形x(t)变换为频谱X(f),从另一角度来了解信号特征。常见傅里叶变换有DFT和FFT。DFT是FFT的基础,FFT是DFT的快速算法,在MATLAB中可以利用函数fft来计算序列的离散傅里叶变换DFT。FFT是时域和频域转换的基本运算。1.1离散傅里叶级数如果x(n)表示周期为N的周期序列,即:k为任意整数(2-1)周期序列用离散的傅里叶级数来表达,其表达式如下:(2-2)式(2-2)称为周期序列的离散傅里叶变换的级数

4、表示。对上式进行离散傅里叶逆变换,得:(2-3)式(2-3)称为周期序列的离散傅里叶逆变换的级数表示。记:(2-4)这样,结合式(2-2)和式(2-3)周期序列的离散傅里叶级数对可表示为:(2-5)1.1DFT和FFT变换对于给定的一段时域信号,可以通过傅里叶变换得到相应的频域信号。计算公式如下:(2-6)上式中,N为样本点数,为采样时间间隔。采样信号的频谱是一个连续的频谱,故采用离散傅里叶变换(即DFT),计算公式如下:(2-7)上式中,N为样本点数,为采样时间间隔,。由于采用式(2-7)进行计算时,有大量的指数(等价于

5、三角函数)运算,效率很低,因此实际中多采用快速傅里叶变换(即FFT)。其原理是通过选择和重新排列,将重复的三角函数计算得到的中间结果保存起来,以减少重复计算带来的时间浪费。由于三角函数计算的重复量相当大,故FFT能极大地提高运算效率。1.1汉宁窗频谱修正采用FFT算法计算信号频谱时,设数据点数为N,采样频率为Fs。则计算得到的离散频率点为:(2-8)如果信号中的频率分量与频率取样点不重合,则只能按四舍五入的原则,取相邻的频率取样点谱线值代替。这就产生了栅栏效应。频谱的离散取样造成了栅栏效应,谱峰越尖锐,产生误差的可能性就越

6、大。实际应用中,由于信号截断的原因,产生了能量泄漏,即使信号频率与频谱离散取样点不相等,也能得到该频率分量的一个近似值。信号截断带来的能量泄漏分主瓣泄漏和旁瓣泄漏,主瓣泄漏可以减小因栅栏效应带来的谱峰幅值估计误差,而旁瓣泄漏则是完全有害的。实际应用时,可以通过使用截断函数(窗函数)来减小栅栏效应。下面仅以汉宁窗函数为例,说明其工作原理。汉宁窗函数是余弦平方函数,又称为升余弦函数,它的时域形式可以表示为:(2-9)它的频率幅度特性函数为:(2-10)汉宁窗的时域和频域曲线图如下所示:汉宁窗时域波形曲线图汉宁窗频域特性曲线图在

7、MATLAB中,生成汉宁窗的函数是hanning。使用该函数进行频谱修正时,先生成一个和待修正的样本具有相同点数的汉宁窗。然后,将原样本序列和生成的汉宁窗序列相乘,得到修正后的样本。最后,对修正后的样本进行FFT变换,即可得到修正后的频谱特性曲线。1MATLAB程序设计1.1图形界面设计首先打开MATLAB,在命令窗口中输入guide命令进入GUI图形设计界面。再新建一个空白的图形界面文件,添加如下的控件并设计它们的布局。(1)添加3个axes控件,用于显示时域波形图和频域频谱图;(2)添加7个statictext控件,用

8、于窗口及其他控件的说明使用;(3)添加4个panel控件,将一组相关的控件框在一起;(4)添加5个edit控件,用于输入和显示幅值、频率等参数值;(5)添加1个pop-upmenu控件,用于选择信号发生器产生的信号类型;(1)添加11个pushbutton控件,其中3个用于控制输出显示相应的信号波形和频

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

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

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