基于matlab的语音信号处理

  • 格式:docx
  • 大小:563.51 KB
  • 文档页数:55

数字信号处理设计报告题目:基于Matlab的语音信号处理系别信息工程学院专业班级通信工程1342学生姓名范泉指导教师吉李满提交日期 2016年6月 10日摘要数字信号处理的目的是对真实世界的连续模拟信号进行测量或滤波。

因此在进行数字信号处理之前需要将信号从模拟域转换到数字域,这通常通过模数转换器实现。

而数字信号处理的输出经常也要变换到模拟域,这是通过数模转换器实现的。

数字信号处理的算法需要利用计算机或专用处理设备如数字信号处理器(DSP)和专用集成电路(ASIC)等。

数字信号处理技术及设备具有灵活、精确、抗干扰强、设备尺寸小、造价低、速度快等突出优点,这些都是模拟信号处理技术与设备所无法比拟的。

本设计的具体内容是基于MATLAB的语音信号处理,核心算法是离散傅立叶变换(DFT),是DFT使信号在数字域和频域都实现了离散化,从而可以用通用计算机处理离散信号。

然后添加噪声信号,选用合适的滤波器对噪声信号进行滤除,使数字信号处理从理论走向实用。

MATLAB功能强大,可以进行矩阵运算、绘制函数和数据、实现算法、创建用户界面、连接其他编程语言的程序等,主要应用于工程计算、控制设计、信号处理与通讯、图像处理、信号检测、金融建模设计与分析等领域。

用MATLAB来解算问题要比用其他语言简捷得多,并且mathwork也吸收了像Maple等软件的优点,使MATLAB成为一个强大的数学软件。

在新的版本中也加入了对C,FORTRAN,C++ ,JAVA的支持。

可以直接调用,用户也可以将自己编写的实用程序导入到MATLAB函数库中方便自己以后调用,此外许多的MATLAB爱好者都编写了一些经典的程序,用户可以直接进行下载就可以用。

关键词:数字信号处理器;离散傅立叶变换;MATLAB目录第一章绪论 (1)1.1课题研究的目的 (1)1.2课题研究的意义和现状 (1)1.2.1课题研究的意义 (1)1.2.2课题研究的现状 (1)第二章课题研究方案的确定 (3)2.1概要设计 (3)2.1.1主要工作 (3)2.1.2研究步骤 (3)2.2方案选择 (3)2.2.1运行的环境 (3)2.2.2总体方案 (4)第三章课题研究内容 (5)3.1 Matlab简单介绍 (5)3.2语音信号的采样理论依据 (5)3.2.1采样频率 (5)3.2.2采样位数 (5)3.2.3采样定理 (6)3.3语音信号的采集 (6)3.4设计数字滤波器 (6)3.4.1数字滤波器设计的基本思路 (6)3.4.2 IIR数字滤波器概述 (6)3.4.3 FIR数字滤波器概述 (7)3.4.4 FIR数字滤波器和IIR数字滤波器比较 (7)3.4.5低通高通及带通滤波器 (7)3.5程序流程图 (8)第四章软件仿真调试结果分析 (9)4.1语音信号的时频分析 (9)4.2语音信号加噪与频谱分析 (10)4.3滤波器的设计 (12)4.3.1设计FIR滤波器 (12)4.3.2设计IIR滤波器 (12)4.3.3双线性变换法和窗函数法 (12)4.4验证所设计的滤波器 (13)4.5滤波 (15)第五章 GUI界面 (17)5.1 GUI界面概述 (17)5.2创建GUI界面 (17)第六章总结与展望 (20)参考文献 (21)附录I设计FIR和IIR数字滤波器 (1)附录II比较滤波前后语音信号的波形及频谱 (7)附录III 源程序代码 (16)第一章绪论1.1课题研究的目的1.学会MATLAB的使用,掌握MATLAB的程序设计方法。

2.掌握在Windows环境下语音信号采集的方法。

3.掌握数字信号处理的基本概念、基本理论和基本方法。

4.掌握MATLAB设计数字滤波器的方法并会对信号进行分析和处理。

1.2课题研究的意义和现状1.2.1课题研究的意义语音信号的采集与分析技术是一门涉及面很广的交叉科学,它的应用和发展与语音学、声音测量学、电子测量技术以及数字信号处理等学科紧密联系,语音是人类获取信息的重要来源和利用信息的重要手段。

在信号传输过程中,由于实验条件或各种其他主观或客观条件的原因,语音处理系统都不可避免地要受到各种噪声的干扰。

噪声不但降低了语音质量和语音的可懂度,而且还将导致系统性能的急剧恶化,严重时使整个系统无法正常工作。

MATLAB是由美国math works公司发布的主要面对科学计算、可视化以及交互式程序设计的高科技计算环境。

它将数值分析、矩阵计算、科学数据可视化以及非线性动态系统的建模和仿真等诸多强大功能集成在一个易于使用的视窗环境中,为科学研究、工程设计以及必须进行有效数值计算的众多科学领域提供了一种全面的解决方案,并在很大程度上摆脱了传统非交互式程序设计语言(如C、Fortran)的编辑模式,代表了当今国际科学计算软件的先进水平。

其强大的数据处理能力可以极大程度上削弱噪声影响,还原出真实的语音信号。

1.2.2课题研究的现状MATLAB是Matrix Laboratory(矩阵实验室)的缩写,是Math Works推出的一套高性能可视化软件,它集数值分析,矩阵运算,函数生成,信号处理,图像处理,建模与仿真等诸多功能于一体,为使用者提供一个高效的编程工具。

本次毕业设计中,我们就用它作为编程工具和辅助工具进行设计。

噪声污染位于联合国四大公认污染之一,无论是尖锐的火车汽笛声,还是我们肉耳听不到的超声波,次声波都有可能给人们生活带来极大不便。

在机械方面,机械件碰撞带来的噪声会缩短器件寿命,在电子方面,电器件在噪声的影响下可能会失灵。

华中师范大学教育信息技术工程研究中心(武汉)刘智老师曾经就机械噪声给人们身心带来的伤害进行过一次计算机仿真,同时用MATLAB进行了信号处理。

此次研究,他通过比较加噪前后,语音的频谱和语音回放,能明显的感觉到加入噪声后回放的声音与原始的语音信号有很大的不同,前者有较尖锐的噪声干扰人声。

从含噪语音信号的频谱图中可以看出含噪声的语音信号频谱,在整个频域范围内分是布均匀。

其实,这正是干扰所造成的。

通过滤波前后的对比,得出低通滤波后效果最好,高通滤波后的效果最差的结果。

大连理工大学2000级硕士蒋瑞艳也曾经做过一个振动,噪声处理系统,它是WINDOWS界面下的振动、噪声信号处理系统,它在专用模拟输入硬件(数据采集系统)支持下,可以完成振动、噪声信号的数据采集以及功率谱、倒谱、谱阵和传递函数分析等功能。

能将数据转化成各种对应的图形,并具备ZOOM功能。

它可以广泛应用于实验室、生产现场和教学中做振动、噪声的测试和分析,可以代替专用信号处理机的工作。

本系统软件采用先进的C++ Builder语言编制,在WINDOWS系统下运行。

软件界面的设计以满足大多数用户为主,力求直观通俗,通过菜单驱动完成各个功能。

华中科技大学能源与动力工程学院就“基于MATLAB的噪声信号采集与分析系统研究”做过研究报告,他们利用MATLAB的数据采集工具箱(DAQ)和信号处理工具箱开发了一套声音信号采集分析系统,该系统不仅能够实现低成本、高精度的实时采集,还能将声音信号资料导入系统进行时域和频域分析。

利用另外一个工具Compiler使编制的MATLAB程序能够独立运行从而提高了运行速度;配备了友好的图形用户界面(GUI),方便用户操作。

最后给出了系统在内燃机噪声诊断方面的应用实例。

在机械方面,西北工业大学航海工程学院就“基于MATLAB的舰船辐射噪声信号小波消噪处理”做过研究报告,他们针对舰船辐射噪声信号的特点提出了小波消噪的方法,对小波消噪理论作了简要的阐述,并设计了一种消噪方案,最后利用MATLAB,在计算机上选用不同的小波基和阈值进行了实船信号的消噪处理试验,并对结果进行了简单的分析比较。

试验结果表明,在选择了合适的小波基和阈值的情况下,利用小波变换的方法对舰船辐射噪声进行消噪处理可以取得良好的效果。

由此可见,MATLAB给噪声处理带来了极大“福音”。

第二章课题研究方案的确定2.1概要设计2.1.1主要工作本文简要介绍了语音信号采集与分析的发展史以及语音信号的特征、采集与分析方法,并通过手机录制自己的一段声音,运用Matlab进行仿真,最后对于声音中的噪声进行滤波处理,比较铝箔前后的变化以及介绍语音信号的特点与采集,仿真主要是验证奈奎斯特定理,对于语音信号进行时域、频域上的分析,率谱,是对语音信号的综合分析,包括语音信号的调制和滤波。

2.1.2研究步骤1.理论依据根据设计要求分析系统功能,掌握设计中所需理论,阐明设计原理。

2.信号采集采集语音信号并对其进行频谱分析,画出信号的时域波形图和频谱图。

3.构造受干扰信号并对其进行频谱分析对所采集的语音信号假如干扰噪声,对语音信号进行回放,感觉加噪前后声音变化,分析原因,得出结论。

并对其进行频谱分析,比较加噪前后语音信号的波形及频谱,对所的结果进行分析,阐明原因得出结论。

4.数字滤波器设计根据待处理信号特点,设计合适数字滤波器,绘制所设计滤波器的幅频和相频特性5.信号处理用所设计的滤波器对含噪语音信号进行滤波。

对滤波后的语音信号进行频谱分析。

画出处理过程中所得各种波形及频谱图。

对语音信号进行回放,感觉滤波前后声音的变化。

比较滤波前后语音信号的波形及频谱,对所得结果和滤波器性能进行频谱分析,阐明原因,得出结论。

2.2方案选择2.2.1运行的环境运行环境主要介绍了硬件环境和软件环境硬件环境:(1)处理器:Inter Core I3(2)内存:4G(3)硬盘空间:500G(4)显卡:Nvidia GTX940软件环境:操作系统:Windos 8.1开发环境:Matlab 2014a2.2.2总体方案用Matlab画出原始信号的波形图和频谱图,然后给原始语音信号加如噪声,并对其进行频谱分析,最后利用滤波器对被噪声污染的语音信号进行滤波并分析滤波后的时域和频域特性,最后建立GUI界面。

第三章课题研究内容3.1 Matlab简单介绍MATLAB是矩阵实验室(Matrix Laboratory)的简称,是美国MathWorks公司出品的商业数学软件,用于算法开发、数据可视化、数据分析以及数值计算的高级技术计算语言和交互式环境,主要包括MATLAB和Simulink两大部分。

MATLAB是由美国mathworks公司发布的主要面对科学计算、可视化以及交互式程序设计的高科技计算环境。

它将数值分析、矩阵计算、科学数据可视化以及非线性动态系统的建模和仿真等诸多强大功能集成在一个易于使用的视窗环境中,为科学研究、工程设计以及必须进行有效数值计算的众多科学领域提供了一种全面的解决方案,并在很大程度上摆脱了传统非交互式程序设计语言(如C、Fortran)的编辑模式,代表了当今国际科学计算软件的先进水平。