基于matlab语音信号的分析与处理_第1页
基于matlab语音信号的分析与处理_第2页
基于matlab语音信号的分析与处理_第3页
基于matlab语音信号的分析与处理_第4页
基于matlab语音信号的分析与处理_第5页
已阅读5页,还剩41页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

毕业论文(设计)中文题目基于MATLAB语音信号的分析与处理英文题目MATLABBASEDANALYSISOFSPEECHSIGNALPROCESSING专业班级09电子信息工程(2)班职称副教授提交日期2013515摘要随着科技的快速发展,我们身边的衣食住行已经慢慢趋于智能化,这些智能的东西不缺语音的控制。语音信号的处理在以前通常是要用一些有很多编程技巧的计算机语言如C,PHP等语言做一些近似运算,且需要掌握语法规则与编制程序的相关规定,编制程序复杂,运用MATLAB软件直接调用函数可以大大的减少编程的复杂度。至今MATLAB已经成为热门的软件,它与MATHEMATICA、MAPLE、MATHCAD并称为四大数学软件,对信号系统的理论及计算机辅助设计技术起到了巨大的推动作用1。本设计主要在MATLAB软件的帮助下,对一段语音信号进行采样量化;画出采样后的语音信号的时域波形和频谱图,分析频谱图,得到该语音信号的频谱特性,采用双线性变换法设计低通滤波器,并画出滤波器的频谱;然后根据设计的滤波器对语音信号进行滤波处理,画出滤波后的时域波形和频谱图,对比几个设计的滤波器;最后,将这些功能集中成一个信号处理界面MATLABGUI界面,并将GUI程序转换为EXE文件。关键字MATLAB;语音信号;滤波器;GUI;EXE文件目录1绪论111课题背景及意义112国内外研究状况113本课题的研究内容和方法12系统设计框图23语音信号处理的基本理论知识231语音信号的简介232语音信号采样频率和采样位数的选择333MATLAB简述4331友好的工作平台和编程环境4332简单易用的程序语言5333强大的科学计算机数据处理能力5334出色的图形处理功能5335应用广泛的模块集合工具箱6336实用的程序接口和发布平台6337应用软件开发(包括用户界面)74滤波器741滤波器简介7411滤波器概述7412滤波器的类型7413滤波器的主要参数8414滤波器的分类9415数字滤波器10416模拟滤波器1042基于MATLAB的数字滤波器的设计方法11421IIR数字滤波器12422FIR数字滤波器14423FIR数字滤波器和IIR数字滤波器的比较1443基于MATLAB的巴特沃斯IIR滤波器的设计155语音信号的分析1851语音信号的读入与打开1852语音信号分析196滤波器的设计2061巴特沃斯型滤波器设计20611巴特沃斯滤波器频谱响应20612巴特沃斯滤波器滤波后的信号2162椭圆型滤波器设计22621椭圆滤波器频谱响应22622椭圆型滤波器滤波后的信号2363切比雪夫I型滤波器设计25631切比雪夫I型滤波器频谱响应25632切比雪夫1滤波器滤波后的信号267基于MATLAB的GUI界面设计2771MATLAB的GUI设计简述2772GUI界面及各个控件的重要功能及属性设置2873GUI界面转成EXE可执行文件2974具体操作与结果的显示30结束语32致谢33参考文献34附录361绪论11课题背景及意义人类文明的发展离不开语言,语言是创造和记载人类文明的一种手段,语音是语言的表示方法,是人与人交流和相互传递信息的载体,同时是人类交换信息的形式。语音信号处理是综合性的多学科领域和涉及面很广的交叉学科,它的研究具有划时代和的意义。同时它是是用数字信号处理技术和计算机对语音信号进行处理,处理语音后的结果是用于得到的某些参数以便高效传输和存储,或应用于人工合成、数字识别和语音增强等12国内外研究状况语音信号处理时研究数字信号处理技术对语音信号进行处理的在多门学科基础上发展起来的综合性技术,它的研究也很复杂,涉及面很广。语音信号处理的研究成果具有重要的学术和应用价值,但同时又是一门理论性强,难度大,实用性强的交叉学科,它涉及数字信号处理,语言学,声音学,人工智能等等许多学科领域。语音信号学的发展与电子学和计算机学是分不开的,它们的关系显而易见,没有计算机和电子学的发展,语音信号学就不可能研究那么深;语音信号在一定程度上促进了计算机和电子学的发展。语言声学有几次飞跃,第一次是1907年电子管的发明和1920年无线电广播的出现。它们把微弱的声音放大,促使点声学和语言声学的一些研究成果。第二次是20世纪70年代初,电子计算机和数字信号处理的发展,人们发现可以将模拟的语音信号通过A/D转化为数字信号,交付给计算机处理。它的发展解决了很多领域的问题,如通信,人工智能,语音识别等等2。13本课题的研究内容和方法本论文主要研究语音信号的处理和分析,通过在理论上分析语音信号的原理和特点,在MATLAB2011A中运用数字信号的基本原理对语音信号进行信号提取、幅频变换以及傅里叶变换,画出采样后语音信号的时域波形和频谱图;给定滤波器的性能指标,双线性变换设计滤波器,并画出滤波器的频率响应;然后用自己设计的滤波器对采集的语音信号进行滤波,画出滤波后信号的时域波形和频谱,并对滤波前后的信号进行对比,分析信号的变化;回放语音信号;最后,用MATLAB设计一个信号处理系统界面,加入滤波前的原信号、和滤波后的信号,并在界面上画出采样和频谱,通过语音信号的图形分析并设计滤波器对语音信号进行滤波和处理的目的。本文的顺序是首先简单介绍语音信号的相关知识,然后对分析工具MATLAB的特点做简单描述。接下来根据语音信号的特点,利用MATLAB对语音信号画出时域波形和频谱。用双线性变换法设计滤波器,并对比这几个滤波器对语音信号的滤波情况,选出滤波情况最好的滤波器。最后,设计一个MATLABGUI界面,将这些方法设计成一个信号处理系统界面,同时转化为EXE文件,便于在没有安装MATLAB的计算机中也可以运行。2系统设计框图系统的框图为图21系统框图3语音信号处理的基本理论知识31语音信号的简介语音信号的基本组成单元是音素,音素可分为“浊音”和“清音”两大类。如果只有背景噪声的情况称为“无声”,那么音素可以分为“无声”、“浊音”、“清音”三类。一个音节由元音和辅音构成,元音是音节的主要部分,元音就是浊音。浊音的短时谱有两个特点第一,有明显的周期性起伏结构,这是因为浊音的激励源为周期脉冲气流第二,频谱中明显地有凸出点,即“共振峰”,它们的出现频率与声道的谐振频率相对应3。语音是一个受准周期脉冲和随机噪声源激励的线性系统的输出,输出频谱是激励源频谱和声道系统频率响应的乘积。激励源和声道系统的频率响应都是随时间变化的且没有一定的规律,因此一般的傅里叶变换虽适应于周期和平稳随机信号的表示,但不能直接用于语音信号。由于语音信号在短时间内是近似不变的,因而可以采用短时分析法。将每一个短时的语音称为一个分析帧,帧长为10MS30MS。利用加窗的方法从语音中取出一个短断,再进行傅里叶变换,就可以得到该语音的短时谱。这样,对于一段语音信号,分析出的是由每一帧特征参数组成的特征参数时间序列,这就大大方便了我们在语音信号上的分析。32语音信号采样频率和采样位数的选择采样频率的倒数是采样周期,它是采样之间的时间间隔。采样频率4是指每秒从连续信号中提取并组成离散信号的采样个数,它用赫兹(HZ)来表示。采样频率不一定越高越好,根据奈奎斯特理论,可知只有采样频率高于声音信号最高频率的两倍时,才能把数字信号表示的声音还原成为原来的声音。采样位数所表示的是一段声音进行分析的精确度,10位则代表2的10次即1024个精度单位进行分析。如此,采样位数越大则表示这段声音越精准。对于一段模拟信号,不能够直接被计算机所采集,它要转换成数字信号,才能被计算机所识别和使用。从模拟信号转换为数字信号要进行采样,从而得到离散信号;根据奈奎斯特定理,采样频率选择信号带宽的两倍,这样即不会造成信号失真,又不会造成资源浪费。采样后的曲线由连续的变成由无数的点组成的,采样过程就是在这无数的点中选取一定数量的点,以这些点来构成一条新曲线。采样之后要对信号进行量化,即采样位数选择,即将时间上离散而幅度仍连续的波形再离散化。采样频率是在这段信号的时间上进行离散化,量化则是在幅值上对这段信号分割。如采样位数为2000,那这段语音信号曲线的幅值就会被分成2000份。33MATLAB简述5MATLAB是美国MATHWORKS公司出品的主要面对科学计算、可视化以及交互式程序设计的商业数学软件。它和MATHEMATICA、MAPLE、MATHCAD并称为四大数学软件。它将数值分析、矩阵计算、科学数据可视化以及非线性动态系统的建模和仿真等诸多强大功能集成在一个易于使用的视窗环境中,为科学研究、工程设计以及必须进行有效数值计算的众多科学领域提供了一种全面的解决方案,并在很大程度上摆脱了传统非交互式程序设计语言(如C、FORTRAN)的编辑模式,代表了当今国际科学计算软件的先进水平。MATLAB的基本数据单位是矩阵,它的指令表达式与数学、工程中常用的形式十分相似,故用MATLAB来解算问题要比用C,FORTRAN等语言完相同的事情简捷得多,并且MATHWORK也吸收了像MAPLE等软件的优点,使MATLAB成为一个强大的数学软件。在新的版本中也加入了对C,FORTRAN,C,JAVA的支持。可以直接调用,用户也可以将自己编写的实用程序导入到MATLAB函数库中方便自己以后调用,此外许多的MATLAB爱好者都编写了一些经典的程序,用户可以直接进行下载就可以用。MATLAB的应用范围非常广,包括信号和图像处理、通讯、控制系统设计、测试和测量、财务建模和分析以及计算生物学等众多应用领域。附加的工具箱(单独提供的专用MATLAB函数集)扩展了MATLAB环境,以解决这些应用领域内特定类型的问题。331友好的工作平台和编程环境MATLAB由一系列工具组成。这些工具方便用户使用MATLAB的函数和文件,其中许多工具采用的是图形用户界面。包括MATLAB桌面和命令窗口、历史命令窗口、编辑器和调试器、路径搜索和用于用户浏览帮助、工作空间、文件的浏览器。随着MATLAB的商业化以及软件本身的不断升级,MATLAB的用户界面也越来越精致,更加接近WINDOWS的标准界面,人机交互性更强,操作更简单。而且新版本的MATLAB提供了完整的联机查询、帮助系统,极大的方便了用户的使用。简单的编程环境提供了比较完备的调试系统,程序不必经过编译就可以直接运行,而且能够及时地报告出现的错误及进行出错原因分析。332简单易用的程序语言MATLAB一个高级的矩阵/阵列语言,它包含控制语句、函数、数据结构、输入和输出和面向对象编程特点。用户可以在命令窗口中将输入语句与执行命令同步,也可以先编写好一个较大的复杂的应用程序(M文件)后再一起运行。新版本的MATLAB语言是基于最为流行的C语言基础上的,因此语法特征与C语言极为相似,而且更加简单,更加符合科技人员对数学表达式的书写格式。使之更利于非计算机专业的科技人员使用。而且这种语言可移植性好、可拓展性极强,这也是MATLAB能够深入到科学研究及工程计算各个领域的重要原因。333强大的科学计算机数据处理能力MATLAB是一个包含大量计算算法的集合。其拥有600多个工程中要用到的数学运算函数,可以方便的实现用户所需的各种计算功能。函数中所使用的算法都是科研和工程计算中的最新研究成果,而前经过了各种优化和容错处理。在通常情况下,可以用它来代替底层编程语言,如C和C。在计算要求相同的情况下,使用MATLAB的编程工作量会大大减少。MATLAB的这些函数集包括从最简单最基本的函数到诸如矩阵,特征向量、快速傅立叶变换的复杂函数。函数所能解决的问题其大致包括矩阵运算和线性方程组的求解、微分方程及偏微分方程的组的求解、符号运算、傅立叶变换和数据的统计分析、工程中的优化问题、稀疏矩阵运算、复数的各种运算、三角函数和其他初等数学运算、多维数组操作以及建模动态仿真等。334出色的图形处理功能MATLAB自产生之日起就具有方便的数据可视化功能,以将向量和矩阵用图形表现出来,并且可以对图形进行标注和打印。高层次的作图包括二维和三维的可视化、图象处理、动画和表达式作图。可用于科学计算和工程绘图。新版本的MATLAB对整个图形处理功能作了很大的改进和完善,使它不仅在一般数据可视化软件都具有的功能(例如二维曲线和三维曲面的绘制和处理等)方面更加完善,而且对于一些其他软件所没有的功能(例如图形的光照处理、色度处理以及四维数据的表现等),MATLAB同样表现了出色的处理能力。同时对一些特殊的可视化要求,例如图形对话等,MATLAB也有相应的功能函数,保证了用户不同层次的要求。另外新版本的MATLAB还着重在图形用户界面(GUI)的制作上作了很大的改善,对这方面有特殊要求的用户也可以得到满足。图31图形处理功能335应用广泛的模块集合工具箱MATLAB对许多专门的领域都开发了功能强大的模块集和工具箱。一般来说,它们都是由特定领域的专家开发的,用户可以直接使用工具箱学习、应用和评估不同的方法而不需要自己编写代码。目前,MATLAB已经把工具箱延伸到了科学研究和工程应用的诸多领域,诸如数据采集、数据库接口、概率统计、样条拟合、优化算法、偏微分方程求解、神经网络、小波分析、信号处理、图像处理、系统辨识、控制系统设计、LMI控制、鲁棒控制、模型预测、模糊逻辑、金融分析、地图工具、非线性控制设计、实时快速原型及半物理仿真、嵌入式系统开发、定点仿真、DSP与通讯、电力系统仿真等,都在工具箱(TOOLBOX)家族中有了自己的一席之地。336实用的程序接口和发布平台新版本的MATLAB可以利用MATLAB编译器和C/C数学库和图形库,将自己的MATLAB程序自动转换为独立于MATLAB运行的C和C代码。允许用户编写可以和MATLAB进行交互的C或C语言程序。另外,MATLAB网页服务程序还容许在WEB应用中使用自己的MATLAB数学和图形程序。MATLAB的一个重要特色就是具有一套程序扩展系统和一组称之为工具箱的特殊应用子程序。工具箱是MATLAB函数的子程序库,每一个工具箱都是为某一类学科专业和应用而定制的,主要包括信号处理、控制系统、神经网络、模糊逻辑、小波分析和系统仿真等方面的应用。337应用软件开发(包括用户界面)在开发环境中,使用户更方便地控制多个文件和图形窗口;在编程方面支持了函数嵌套,有条件中断等;在图形化方面,有了更强大的图形标注和处理功能,包括对性对起连接注释等;在输入输出方面,可以直接向EXCEL和HDF5进行连接。4滤波器上面我们已经将WAV格式的语音信号进行了采样,下面我们到了语音信号处理的重点环节滤波器设计。41滤波器简介411滤波器概述滤波器,是一种用来消除干扰的器件,将输入或输出经过过滤而得到纯净的信号。对特定频率的频点或该频点以外的频率进行有效滤除的电路,就是滤波器,其功能就是得到一个特定频率或消除一个特定频率6。它的本质就是从被噪声畸变和污染了的信号中提取原始信号所携带的信息的过程。让有用信号尽可能无衰减的通过,对无用信号尽可能大的反射。412滤波器的类型巴特沃斯响应(最平坦响应)巴特沃斯响应能够最大化滤波器的通带平坦度。该响应非常平坦,接近DC信号,然后慢慢衰减至截止频率点为3DB,最终逼近20NDB/DECADE的衰减率,其中N为滤波器的阶数。巴特沃斯滤波器特别适用于低频应用,其对于维护增益的平坦性来说非常重要。切贝雪夫响应在一些应用当中,最为重要的因素是滤波器截断不必要信号的速度。如果你可以接受通带具有一些纹波,就可以得到比巴特沃斯滤波器更快速的衰减。椭圆响应椭圆滤波器相比其他类型的滤波器,在阶数相同的条件下有着最小的通带和阻带波动。它在通带和阻带的波动相同。413滤波器的主要参数如下是滤波器的主要参数,一个滤波器的好坏主要是由它的如下主要参数决定的7中心频率滤波器通带的中心频率F0,一般取F0(F1F2)/2,F1、F2为带通或带阻滤波器左、右相对下降1DB或3DB边频点。窄带滤波器常以插损最小点为中心频率计算通带带宽。截止频率指低通滤波器的通带右边频点及高通滤波器的通带左边频点。通常以1DB或3DB相对损耗点来标准定义。相对损耗的参考基准为低通以DC处插损为基准,高通则以未出现寄生阻带的足够高通带频率处插损为基准。通带带宽指需要通过的频谱宽度,BWXDB(F2F1)。F1、F2为以中心频率F0处插入损耗为基准,下降X(DB)处对应的左、右边频点。通常用X3、1、05即BW3DB、BW1DB、BW05DB表征滤波器通带带宽参数。插入损耗由于滤波器的引入对电路中原有信号带来的衰耗,以中心或截止频率处损耗表征,如要求全带内插损需强调。纹波指1DB或3DB带宽(截止频率)范围内,插损随频率在损耗均值曲线基础上波动的峰峰值。带内波动通带内插入损耗随频率的变化量。1DB带宽内的带内波动是1DB。带内驻波比(VSWR)衡量滤波器通带内信号是否良好匹配传输的一项重要指标。理想匹配VSWR11,失配时VSWR1。对于一个实际的滤波器而言,满足VSWR1),KXDBBWXDB/BW3DB,(X可为40DB、30DB、20DB等)。滤波器阶数越多矩形度越高即K越接近理想值1,制作难度当然也就越大。延迟指信号通过滤波器所需要的时间,数值上为传输相位函数对角频率的导数,即TDDF/DV。带内相位线性度该指标表征滤波器对通带内传输信号引入的相位失真大小。按线性相位响应函数设计的滤波器具有良好的相位线性度,但频率选择性很差,限于脉冲、或调相信号传输系统应用。414滤波器的分类(1)按所处理的信号分为模拟滤波器和数字滤波器两种。(2)按所通过信号的频段分为低通、高通、带通和带阻滤波器四种。低通滤波器它允许信号中的低频或直流分量通过,抑制高频分量或干扰和噪声。高通滤波器它允许信号中的高频分量通过,抑制低频或直流分量。带通滤波器它允许一定频段的信号通过,抑制低于或高于该频段的信号、干扰和噪声。带阻滤波器它抑制一定频段内的信号,允许该频段以外的信号通过。(3)按所采用的元器件分为无源和有源滤波器两种。无源滤波器仅由无源元件R、L和C组成的滤波器,它是利用电容和电感元件的电抗随频率的变化而变化的原理构成的。这类滤波器的优点是电路比较简单,不需要直流电源供电,可靠性高;缺点是通带内的信号有能量损耗,负载效应比较明显,使用电感元件时容易引起电磁感应,当电感L较大时滤波器的体积和重量都比较大,在低频域不适用。有源滤波器由无源元件一般用R和C和有源器件如集成运算放大器)组成。这类滤波器的优点是通带内的信号不仅没有能量损耗,而且还可以放大,负载效应不明显,多级相联时相互影响很小,利用级联的简单方法很容易构成高阶滤波器,并且滤波器的体积小、重量轻、不需要磁屏蔽由于不使用电感元件);缺点是通带范围受有源器件如集成运算放大器)的带宽限制,需要直流电源供电,可靠性不如无源滤波器高,在高压、高频、大功率的场合不适用。415数字滤波器与模拟滤波器相对应,在离散系统中广泛应用数字滤波器。它的作用是利用离散时间系统的特性对输入信号波形或频率进行加工处理。或者说,把输入信号变成一定的输出信号,从而达到改变信号频谱的目的。数字滤波器一般可以用两种方法来实现一种方法是用数字硬件装配成一台专门的设备,这种设备称为数字信号处理机;另一种方法就是直接利用通用计算机,将所需要的运算编成程序让通用计算机来完成,即利用计算机软件来实现。416模拟滤波器模拟滤波器在测试系统或专用仪器仪表中是一种常用的变换装置。例如带通滤波器用作频谱分析仪中的选频装置;低通滤波器用作数字信号分析系统中的抗频混滤波;高通滤波器被用于声发射检测仪中剔除低频干扰噪声;带阻滤波器用作电涡流测振仪中的陷波器,等等。用于频谱分析装置中的带通滤波器,可根据中心频率与带宽之问的数值关系,分为两种一种是带宽B不随中心频率而变化,称为恒带宽带通滤波器,其中心频率处在任何频段上时,带宽都相同;另一种是带宽B与中心频率的比值是不变的,称为恒带宽比带通滤波器,其中心频率越高,带宽也越宽。42基于MATLAB的数字滤波器的设计方法根据滤波器的设计要求,利用MATLAB软件对滤波器的特性进行分析,确定采用的逼近方法,计算滤波器阶数,确定零极点和传递函数,以滤波器的系数为优化变量,使得设计的滤波器与给定指标最接近且要求优化变量取离散值。数字滤波器可以分为两大类一类是经典滤波器,即一般的滤波器,特点是输入信号中有用的频率成分和希望滤去的频率成分各占不同的频率带,通过一个合适的选频滤波器达到滤波的目的,这种滤波器主要是无限冲激响应滤波器和有限冲激响应滤波器;它有以下的设计方法9(1)直接设计法直接设计方法的思想是基于给定的滤波器参数直接在离散域内寻找合适的数字滤波器,它不限于常规的滤波器类型,如低通、高通、带通和带阻等。这种方法甚至可以设计多带的频率响应,在MATLAB中提供YULEWALK函数来用于辅助设计。(2)完全设计法MATLAB信号处理工具箱提供了几个直接设计IIR数字滤波器的函数,直接调用就可以设计滤波器,这为设计通用滤波器提供了方便。设计BUTTERWORTH滤波器用函数BUTTER,可以设计低通、高通、带通和带阻的数字和模拟滤波器,其特性是通带内的幅度响应最大限度的平滑,但损失了截止频率处的下降斜度。设计CHEYSHEVI型滤波器用CHEBY1函数。可以设计低通、高通、带通和带阻的数字和模拟CHEBYSHEVI型滤披器,其通带内为等波纹,阻带内为单调。CHEBUSHEVI型滤波器的下降斜度比型大,但其代价是通带内波纹较大。(3)典型设计法典型设计法的设计思想是利用已有的模拟滤波器设计理论,首先根据设计指标设计一个合适的模拟滤波器,然后再通过脉冲响应不变法或双线性变换法,完成从模拟到数字的变换。常用的模拟滤波器有巴特沃斯滤波器、切比雪夫滤波器、椭圆滤波器、贝塞尔滤波器等,这些滤波器各有特点,供不同设计要求选用。滤波器的模拟数字变换,通常是复变函数的映射变换,也必须满足一定的要求。由于数字滤波器传输函数只与频域的相对值有关,故在设计时可先将滤波器设计指标进行归一化处理。另外一类滤波器是现代滤波器,当信号和干扰的频带相互重叠,经典滤波器不能完成对干扰的有效去除时,可以采用现代滤波器,这些滤波器可以按照随即信号内部的一些统计分布规律,从干扰中最佳的提取信号。这种滤波器主要有维纳滤波器、卡尔曼滤波器、自适应滤波器等。现代滤波器的设计方法则是最优设计法。如果设计的IIR数字滤波器频率特性有特殊要求,经典设计法往往显得无能为力,最优设计法在这些频率特性有特殊要求的场合很有用场。MATLAB提供了YULCWALK和AXFLAT。两个最优设计函数。YULCWALK函数以平方误差最小为设计准则,可设计出任意频率响应的数字滤波系统。调用格式为,B,AYULEWALKN,F,M,其中向量F和M表示理想滤波器的幅频特性,为归一化的频率向量,该向量中每一个元素都在0到1之间取值,而且元素必须递增排序,并要求第一个元素为0,最后一个元素为是对应F频率处的幅度,它是一个长度和相同的向量。当确定理想滤波器的幅频响应后,为了避免通带到阻带的陡峭过渡,应该对过渡带进行多次的试验,以便得到最佳的滤波器。数字滤波器有IIR和FIR两种类型,它们的特点和设计方法不同。421IIR数字滤波器IIR数字滤波器,又名“无限脉冲响应数字滤波器”,具有反馈,一般认为具有无限的脉冲响应。它具有如下几个特点(1)封闭函数IIR数字滤波器的系统函数可以写成封闭函数的形式。(2)IIR数字滤波器采用递归型结构IIR数字滤波器采用递归型结构,即结构上带有反馈环路。IIR滤波器运算结构通常由延时、乘以系数和相加等基本运算组成,可以组合成直接型、正准型、级联型、并联型四种结构形式,都具有反馈回路。由于运算中的舍入处理,使误差不断累积,有时会产生微弱的寄生振荡。(3)借助成熟的模拟滤波器的成果IIR数字滤波器在设计上可以借助成熟的模拟滤波器的成果,如巴特沃斯、契比雪夫和椭圆滤波器等,有现成的设计数据或图表可查,其设计工作量比较小,对计算工具的要求不高。在设计一个IIR数字滤波器时,我们根据指标先写出模拟滤波器的公式,然后通过一定的变换,将模拟滤波器的公式转换成数字滤波器的公式。(4)需加相位校准网络IIR数字滤波器的相位特性不好控制,对相位要求较高时,需加相位校准网络。由于采用了级联结构,因此如何将滤波器的每一个极点和零点相组合,从而使得数字滤波器输出所含的噪声最小是个十分关键的问题。为了产生最优的量化后的IIR数字滤波器,采用如下步骤进行设计。(1)首先计算整体传递函数的零极点;(2)选取具有最大幅度的极点以及距离它最近的零点,使用它们组成一个二阶基本节的传递函数;(3)对于剩下的极点和零点采用与32相类似的步骤,直至形成所有的二阶基本节。通过上面三步法进行的设计可以保证IIR数字滤波器中N位乘法器产生的量化舍入误差最小。422FIR数字滤波器FIR滤波器有限长单位冲激响应滤波器,是数字信号处理系统中最基本的元件,它可以在保证任意幅频特性的同时具有严格的线性相频特性,同时其单位抽样响应是有限长的,因而滤波器是稳定的系统。它具有如下特点1系统的单位冲激响应HN在有限个N值处不为零2系统函数HZ在|Z|0处收敛,极点全部在Z0处(因果系统)3结构上主要是非递归结构,没有输出到输入的反馈,但有些结构中(例如频率抽样结构)也包含有反馈的递归部分。FIR滤波器的设计方法有(1)窗函数法(2)频率采样法(3)切比雪夫等纹波逼近法423FIR数字滤波器和IIR数字滤波器的比较从性能比较上来说,FIR数字滤波器是可以得到非常严格的线性相位,但是它的极点只能固定在原点,不能与零点相结合,所以只能选择较高阶数的滤波器来达到目的。在相同的滤波器的性能指标的条件下,FIR数字滤波器要达到目标比IIR数字滤波器的阶数要高,这样会使成本变高,同时,使得信号延迟变大。而IIR数字滤波器的系统函数的极点是可以在单位圆里的任意一个地方,这样,若是极点与零点相结合,就可以得到较低阶数的滤波器,这样的性价比比较高,但是它是非线性相位的。从结构上来比较,由于IIR滤波器采用的是递归结构,会有不稳定的可能。FIR滤波器采用非递归结构,使用时会非常稳定,并且在信号输出时产生的噪声比较小。从设计上来比较,IIR滤波器使用间接法借助于模拟滤波器,有成熟的设计成果,虽然脱离不了几款经典模拟滤波器的频率响应特性的约束,但在设计时的计算工作量比较小,可以很轻松的完成滤波器的设计。FIR滤波器在设计的时候只能根据计算公式来计算,具有非常大的工作量,对计算的要求比较高,但是在计算机的帮助下可以很容易完成。在实际应用时,如本次设计时,比较适合用IIR滤波器,因为语音信号处理时对线性相位的要求不高,而且成本更低。在其他场合,如对数字图像进行处理时,适合FIR滤波器。43基于MATLAB的巴特沃斯IIR滤波器的设计巴特沃斯滤波器是一种经典的模拟滤波器,可以构成低通、高通、带通和带阻四种组态,是目前最为流行的一类数字滤波器,经过离散化可以作为数字巴特沃斯滤波器,较模拟滤波器具有精度高、稳定、灵活、不要求阻抗匹配等众多优点,因而在自动控制、语音、图像、通信、雷达等众多领域得到了广泛的应用。下面介绍使用双线性变换法设计IIR巴特沃思数字滤波器的设计原理、步骤以及在MATLAB平台的简易仿真实现8。巴特沃思滤波器本质上是按照给定的频率响应特征或参数主要有通带截止频率P、阻带截止频率S、通带纹波最小衰减P、阻带衰减S和截止角频率C寻找到的一种与理想滤波器“逼近”的可以实现的有理函数HS,该有理函数一般以模平方即HJ2给出,目的在于根据|HJ|2J2HSHS的综合的零极点分布图,挑选出满足稳定或最小相位的零极点构成HS,而把其他零极点分配给HS。巴特沃思滤波器的幅频特征模平方为(41)122JNC其中N为阶数C为滤波器的截止角频率,又称为滤波器的半功率点或3DB点。巴特沃思滤波器具有如下特点最平响应特性最大平坦性,即巴特沃思滤波器在0附近是非常平直的,以此逼近理想低通滤波器通带、阻带衰减近似线性,这使得该滤波器具有较好的相位特征随着阶数N的逐步增大,过渡带变窄,即衰减加剧,但半功率点不变。无限长冲激响应IIR数字滤波器是数字滤波器的一种,数字滤波器根据其冲激响应函数的时域特性,还包括有限长冲激响应FIR数字滤波器。IIR数字滤波器的特征是具有无限持续时间冲激响应需要用递归模型来实现,这可以从其差分方程(42)00MNIIYNBXBYNK得出,也可以从其系统函数为(43)10MINKIBZHZA得出数字巴特沃思滤波器属于IIR滤波器,该类滤波器具有特定的性质和设计方法。目前比较成熟的IIR数字滤波器设计方法有两种1直接法,目前所用的方法主要是零极点累试法、频域幅度平方误差最小法和时域单位脉冲响应逼近法。直接法的最大优点在于可以设计任意幅频特征的滤波器。2间接法,目前所用的方法主要是冲激响应不变法、阶跃响应不变法和双线性法。它们都是借助于已经成熟的现有低通滤波器原型进行设计,即对数字低通数字滤波器,先将数字低通滤波器的技术指标按希望的设计方法转换为模拟低通滤波器的技术指标,再按指定的模拟低通滤波器的类型设计模拟滤波器HS,然后,将模拟滤波器的系统函数HS,从S平面转换到Z平面,得到数字低通滤波器的系统函数HZ如所设计的数字滤波器为高通、带通或带阻滤波器,则可借助模拟滤波器的频带变换转换为低通模拟滤波器。由于直接法设计巴特沃思滤波器相对复杂,在不需要任意幅频特征的情况下,一般采用间接法,同时由于冲激响应不变法和阶跃响应不变法,从S平面转换到Z平面的映射为多值映射,容易造成频谱混叠,故而这里采用不会产生频谱混叠的双线性变换法。设计IIR滤波器的任务就是寻求一个因果、物理上可实现的系统函数HZ,使其频率响应HEJ满足所希望得到的频域指标,即符合给定的通带截止频率、阻带截止、通带衰减和阻带衰减等指标。双线性变换法的基本步骤如下1根据任务,确定性能指标在设计之前,首先根据工程实际的需要确定巴特沃思滤波器的技术指标边界频率P,S,C通带最大衰减P和阻带最小衰减S2将数字滤波器的技术指标转换成模拟滤波器指标。双线性变换法的转换关系为(44)2TANWT为数字角频率,为模拟角频率,T为取样周期3用模拟滤波器设计方法得到模拟巴特沃斯滤波器的传输函数HS,这可借助巴特沃思滤波器相关的严格的设计公式、现成的曲线和图表得到4映射实现利用双线性变换法关系式(45)12ZST将模拟巴特沃思滤波器HS转换成数字巴特沃思滤波器HZ5用有限精度算法实现这个系统函数HZ,同时要确定该滤波器的结构,因为如果在硬件上实现该滤波器必须考虑计算的复杂度、存储容量限制等因素,而用MATLAB实现无此影响6用合适的软、硬件技术实现该滤波器。数字巴特沃斯低通滤波器函数FUNCTIONB,ADIGITAL_LOWPASS_BUTTERWP,WS,RP,AS,FSN,WNBUTTORDWP/PI,WS/PI,RP,ASB,ABUTTERN,WNBUTTER10函数的用法为B,ABUTTERN,WN,/FTYPE/其中N代表滤波器阶数,WN代表滤波器的截止频率,这两个参数可使用BUTTORD函数来确定。BUTTORD函数可在给定滤波器性能的情况下,求出巴特沃斯滤波器的最小阶数N,同时给出对应的截止频率WN。BUTTORD函数的用法为N,WNBUTTORDWP,WS,RP,RS其中WP和WS分别是通带和阻带的拐角频率(截止频率),其取值范围为0至1之间。当其值为1时代表采样频率的一半。RP和RS分别是通带和阻带区的波纹系数。不同类型(高通、低通、带通和带阻)滤波器对应的WP和WS值遵循以下规则A高通滤波器WP和WS为一元矢量且WPWS;B低通滤波器WP和WS为一元矢量且WPWS,如WP01,08,WS02,07。在讨论由模拟滤波器变换为数字滤波器时,普遍采用的是双线性变换法,它保留的是从模拟到数字域的系统函数表示。在滤波器的选取时,由于设计方法的侧重点不同,作出比较是困难的。我们以双线性变换法设计巴特沃斯滤波器为例,给出低通情况下滤波前后信号的波形和频谱。最后在MATLAB中,函数SOUND可以对声音进行回放,其调用格式为SOUNDX,FS,BITS。通过回放可以发现滤波前后的声音有变化,利用SOUND函数重放滤波后的声音。5语音信号的分析语音信号本来就不是一种平稳而容易处理的信号,它是随机变化的,不具备规律性。所以它的处理有信号的读入、采集和提取,信号的调整,信号的变换,信号的滤波。51语音信号的采集、读入与打开语音信号的采集,使用电脑的声卡设备采集一段语音信号,并将其保存在电脑中。为了简化语音信号的采集过程,我是在网上下载一段鸟鸣的声音,并存放在当前文件夹内,其保存格式为BIRDSINGWAV。UIGETFILE命令创建标准的对话框并通过交互式操作取得文件名。FILENAME,PATHNAME,FILTERINDEXUIGETFILEFILTERSPEC创建并显示对话框,列出当前目录下的文件。FILTERSPEC决定文件的初始显示,它可以为一个文件全名或者包含通配符,如DOC表示列出所有的文档文件。如果FILTERSPEC是一个包含文件名的字符串,则该文件名所在的文件名域将被选中并显示出来,且该文件的扩展名将作为过滤作用;如果FILTERSPEC是一个包含文件路径的字符串,例如,或/,例如/M表示列出当前目录上的所有M文件;如果FILTERSPEC是一个单元数组,则其第一列为扩展名列表,第二列为描述列表;如果FILTERSPEC没有指定路径对象,则UIGETFILE将使用默认路径下的所有文件类型。这里我们是对任意一段语音信号进行读入,则用到FNUIGETFILEWAV,获得一个声音文件(格式WAV选取一个WAV文件进行采样。SOUNDY用于对声音的回放。向量Y则就代表了一个信号,也即一个复杂的“函数表达式”,也可以说像处理一个信号的表达式一样处理这个声音信号。52语音信号分析用MATLAB绘制出语音信号的时域波形图和原始语音信号的频率响应图和原始语音信号的FFT频谱图。程序设计如下FS22050语音信号采样频率为22050X,FS,BITSWAVREADBIRDWAVSOUNDX,FS,BITS播放语音信号Y1FFTX,1024对信号做1024点FFT变换FFS0511/1024FIGURE1PLOTX做原始语音信号的时域波形图TITLE原始语音信号时域图XLABELTIMENYLABELFUZHINFIGURE2FREQZX绘制原始语音信号的频率响应图TITLE频率响应图FIGURE3PLOTF,ABSY11512TITLE原始语音信号频谱XLABELHZYLABELFUDU如下图51所示图51语音信号分析6滤波器的设计61巴特沃斯型滤波器设计611巴特沃斯滤波器频谱响应运用巴特沃斯的MATLAB函数,可得到滤波器的频率响应,运行如下代码可得到频谱图WP2PI826WS2PI1378RP2AS30FS22050N,WNBUTTORDWP,WS,RP,AS,SB,ABUTTERN,WN,SNUM1,DEN1BILINEARB,A,FSH1,WFREQZNUM1,DEN1FW/PIFS/2PLOTF,20LOG10ABSH1,XLABEL频率/HZYLABEL幅值图61滤波器频谱(未归一化)612巴特沃斯滤波器滤波后的信号在前面所得到的信号后,我们设计了一个巴特沃思滤波器对原信号进行滤波,运行后所得到的的时域波形和频谱如下图所示Y,FS,BITSWAVREADBIRDWAVSOUNDY,FS,BITSWP0075PIWS0125PIRP025AS50N,WNBUTTORDWP,WS,RP,ASB,ABUTTERN,WNROWS,COLSSIZEYY,1Y,1MEANY,1YABSFFTYEPSW为防止出现0值Y1Y2LROWSW0L1W2PI/ROWSWXFILTERB,A,YXABSFFTXEPSW为防止出现0值X1X2SUBPLOT2,2,1PLOTXTITLE巴特沃斯滤波低通后信号波形SUBPLOT2,2,2PLOTW/PI,X1LTITLE巴特沃斯低通滤波后信号频谱XLABELW单位PIYLABEL幅值图62滤波后的采样信号图63滤波后的频谱信号62椭圆型滤波器设计621椭圆滤波器频谱响应运用椭圆滤波器的MATLAB函数,可得到滤波器的频率响应,运行如下代码可得到频谱图WP2PI826WS2PI1378RP2AS30FS22050N,WNELLIPORDWP,WS,RP,AS,SB,AELLIPN,RP,AS,WN,SNUM1,DEN1BILINEARB,A,FSH1,WFREQZNUM1,DEN1FW/PIFS/2PLOTF,ABSH1,XLABEL频率/HZYLABEL幅值图64椭圆滤波器的频谱(未归一化)622椭圆型滤波器滤波后的信号为了得到滤波后声音信号的波形和频谱,我们将运行下面的代码,运行后得到了采样波形和频谱。Y,FS,BITSWAVREADBIRDWAVSOUNDY,FS,BITSWP0075PIWS0125PIRP025AS50N,WNELLIPORDWP,WS,RP,ASB,AELLIPN,RP,AS,WNROWS,COLSSIZEYY,1Y,1MEANY,1YABSFFTYEPSW为防止出现0值Y1Y2LROWSW0L1W2PI/ROWSWXFILTERB,A,YXABSFFTXEPSW为防止出现0值X1X2SUBPLOT2,2,1PLOTXTITLE椭圆滤波后信号波形SUBPLOT2,2,2PLOTW/PI,X1LTITLE椭圆低通滤波后信号频谱XLABELW单位PIYLABEL幅值图65滤波后的采样信号图66滤波后的信号频谱63切比雪夫I型滤波器设计631切比雪夫I型滤波器频谱响应运用椭圆滤波器的MATLAB函数,可得到滤波器的频率响应,运行如下代码可得到频谱图WP2PI826WS2PI1378RP2AS30FS22050N,WNCHEB1ORDWP,WS,RP,AS,SB,ACHEBY1N,AS,WN,SNUM1,DEN1BILINEARB,A,FSH1,WFREQZNUM1,DEN1FW/PIFS/2PLOTF,ABSH1,XLABEL频率/HZYLABEL幅值图67滤波器频谱(未归一化)632切比雪夫1滤波器滤波后的信号为了得到滤波后声音信号的波形和频谱,我们将运行下面的代码,运行后得到了采样波形和频谱。Y,FS,BITSWAVREADBIRDWAVSOUNDY,FS,BITSWP0075PIWS0125PIRP025AS50N,WNCHEB1ORDWP,WS,RP,ASB,ACHEBY1N,AS,WNROWS,COLSSIZEYY,1Y,1MEANY,1YABSFFTYEPSW为防止出现0值Y1Y2LROWSW0L1W2PI/ROWSWXFILTERB,A,YXABSFFTXEPSW为防止出现0值X1X2SUBPLOT2,2,1PLOTXTITLE切比雪夫1型滤波后信号波形SUBPLOT2,2,2PLOTW/PI,X1LTITLE切比雪夫1型低通滤波后信号频谱XLABELW单位PIYLABEL幅值图68滤波后的采样信号图69滤波后的信号频谱通过不同的滤波器对同一种声音信号进行滤波处理后,得到不同的滤波后的信号波形和频谱图,对比以上所得到的图形,可以看出在这几个低通滤波器处理后的图像,巴特沃斯滤波器效果最好。7基于MATLAB的GUI界面设计71MATLAB的GUI设计简述图形用户界面(GRAPHICALUSERINTERFACE,简称GUI,又称图形用户接口)是指采用图形方式显示的计算机操作用户界面。在图形用户界面中,计算机画面上显示窗口、图标、按钮等图形,表示不同目的之动作,用户通过鼠标等指针设备进行选择。MATLAB的GUI为开发者提供了一个不脱离MATLAB的开发环境,有助于MATLAB程序的GUI集成。这样可以使开发者不必理会一大堆烦杂的代码,简化程序,但是同样可以实现向决策者提供图文并茂的界面,甚至达到多媒体的效果。可以说MATLAB提供了一个简便的开发环境,可以让开发者快速上手,提高了开发者的工作效率。MATLAB图形化使用者界面的设计,可分为两种一种是M文件。它的好处是使用与复杂的GUI界面,而且可将GUI应用程序集中于一个文件,执行效率高;另一种是图形化使用者界面设计环境,它的好处在于可以快速地构建环境,具有“所见即所得”的性质,方便又快速,并且可自动产生每一个控件的反应式,只要填入指令就可以。72GUI界面及各个控件的重要功能及属性设置图71基于MATLAB的语音信号处理的GUI界面如上图所示该界面用到的控件为PUSHBUTTON8个,AXES(1个)他们的作用分别为PUSHBUTTON为控制触发式命令的控件,在此界面中主要用来控制1用来控制显示滤波前的信号的波形及频谱2用来控制显示滤波后的信号的波形及频谱3滤波器频谱显示4退出该界面AXES显示得到的波形及频谱图73GUI界面转成EXE可执行文件11用MATLAB开发的同学们都对MATLAB强大的工具包所吸引,但是并不是所以环境都支持对M文件运行,在没有安装MATLAB的电脑上我们该如何M文件进行运算呢。总所周知,如VB,VC,JAVA等语言可以生成EXE文件,同样MATLAB也可以11。MATLAB有很多方法可以生成EXE文件,不过它还要一个解释环境MATLABRUNTIMESERVER。EXE文件的生成过程如下(1)RUNTIMESERVER的配置执行这个命令要在命令提示符下进入MATLABTOOLBOXRUNTIMEBINWIN32目录。输入RTSETUPFMATLABBINWIN32MATLABEXES这儿代表你输入的N个数字或者字母,它将作为未来开发的应用程序的密码用来识别不同的文件是否出自同一程序。在正常情况下,执行完这居命令以后,DOS不会有任何提示符。(2)编写在MATLAB中运行的程序。(3)编写配置文件。把TOOLBOXRUNTIME下面的两个模板文件MATLABRT_TEMPLATEM,和PATHDEFRT_TEMPLATEM文件,修改程自己的MATLABRTM和PATHDEFRTM文件。(4)编译生成P文件把你要编译的源程序放在TOOLBOXLOCAL目录下一个子目录中,然后把这个目录设为MATLAB的当前目录一定要保证这一点。在MATLAB中输入如下命令LOG,DEPFUNOUT,PCODEOUTBUILDPMATLABRT;如果出现BUILDPFINISHEDBUTTHEREMAYBEFILESWITHEITHERPROBLEMSYMBOLSOREVALLIKECONSTRUCTSCHECKBUILDPLOGFORDETAILS。这是很正常的,很多时候都会出现这个提示。输入DEPFUNOUT1把它的内容拷到TOOLBOXRUNTIMEOEM的LISTTXT中去如果没有LISTTXT则新建(5)打包,发布,退出MATLAB打开命令提示符,到TOO

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论