基于matlab的语音信号处理与仿真设计毕业论文(编辑修改稿)内容摘要:

函数 fft 执行高速基 — 2FFT算法,否则 fft 执行一种混合基的离散傅里叶变换算法,计算速度较慢,函数 FFT 的另外一种调用格式为 y=fft(x,N),式中, x, y 意义同前, N 为正整数。 函数执行 N 点的 FFT,若 x 为向量且长度小于 N,则函数将 x 补零至长度 N;若向量 x 的长度大于 N,则函数截短 x 使之长度为 N;若 x 为矩阵,按相同方法对 x 进行处理。 倒谱的概念 定义:倒谱 [1,10,11,13]定义为信号短时振幅谱的对数傅里叶反变换。 特点:具有可近似地分离并提取出频谱包络信息和细微结构信息的特点 用途: ①提取声道特征信息:提取频谱包络特征,以此作为描述音韵的特征参数而应用于语音识别。 ②提取音源信息:提取基音特征,以此作为描述音韵特征的辅助参数而应用于语音识别。 6 求法:如图 21 所示: 倒谱 图 x(n) l o gA B C D ED F T I D T F D F T         时间窗 F 图 21 倒谱的求法 在图 21 中, A 表示短时信号, B 表示频谱, C 表示对数频谱 , D表示倒谱系数 , E 表示对数频谱包络 , F 表示基本周期。 数字滤波器设计原理 数字滤波器的作用是利用离散时间系统的特性对输入信号波形(或频谱)进行加工处理,或者说利用数字方法按预定的要求对信号进行变换。 数字滤波器 [1,3,4,9,12]可以理解为是一个计算程序或算法,将代表输入信号的数字时间序列转化为代表输出信号的数字时间序列,并在转化过程中,使信号按预定的形式变化。 数字滤波器有很多种分类,根据数字滤波器冲击响应的时域特征,可将数字滤波器分为两种,即无限长冲击响应( IIR)滤波器和有限长冲击响应( FIR)滤波器。 从性能上来说, IIR 滤波器传输函数的极点可位于单位圆内的任何地方,因此可用较低的阶数获得高的选择性,所用的存贮单元少,所以经济而效率高,但是这个高效率是以相应的非线性为代价的。 选择性越好,则相位非线性越严重。 相反, FIR 滤波器却可 以得到严格的线性相位,然而由于 FIR 滤波器传输函数的极点固定在原点,所以只能用较高的阶数获得高的选择性;对于同样的滤波器设计指标, FIR 滤波器所要求的阶数可以比 IIR 滤波器高 5~10 倍,结果,成本较样值检测 7 高,信号延时也较大;如果按相同的选择性和相同的线性要求来说,则 IIR滤波器就必须加全通网络进行相位校正,同样要大增滤波器的阶数和复杂性。 整体来看, IIR 滤波器达到同样效果,阶数较少,延迟小,但是有稳定性问题,非线性相位; FIR 滤波器没有稳定性问题,线性相位,但阶数多,延迟大。 在本文中主要采用 IIR 滤波器。 (三 )仿真环境 语音信号的处理与仿真选用 Matlab 平台 [2,5,7,8,9]。 Matlab 是矩阵实验室( Matrix Laboratory)的简称,是美国 MathWorks 公司 发布的主要面对科学计算、可视化以及交互式程序设计的高科技计算环境。 主要应 用于工程计算、控制设计、信号处理与通讯、图像处理、信号检测、金融建模设计与分析等领域。 下面对 Matlab 的主要组成部分和图形用户界面( GUI)作简单介绍。 Matlab 的主要组成部分: 1)开发环境:开发环境是帮助用户使用 Matlab 函数和文件的工具的集合,这些工具中许多都是图形用户界面。 开发环境包括 Matlab 桌面及其命令窗口、命令记录、帮助浏览器、工作平台、文件和搜索路径等。 2) Matlab 数学函数库:该库收集了大量的从基本函数(求和、三角运算、复杂算术等)到复杂函数(矩阵求逆、求矩阵特征值、贝塞尔函数和快速傅立叶变换等)的计算算法。 3) Matlab 语言: Matlab 语言是一种包括流程控制语句、函数、数据结构、输入 /输出和面向对象编程方式的高级矩阵 /数组语言,该语言能够通 8 过与其它 Matlab 系统组成部分之间的交互完成非常复杂 的计算任务。 4)图形句柄:图形句柄即 Matlab 的图形系统,该系统既包括二维和三维数据的可视化、图像处理、动画和图形描述等高级命令,又包括允许用户完全自定义图形,并在 Matlab 应用程序中建立自己的图形界面的低级命令。 5) Matlab应用程序接口: API是允许用户编写 C、 FORTIULN和 Matlab接口程序的系统库,该库中包含一些调用工具,其它应用程序能够通过动态链接、作为计算引擎、读写 MAT 文件三种形式来使用这些工具以调用Matlab 程序。 图形用户界面( GUI) 1)图形用户界面概念 图形用户界面或图形用户接口( Graphical User Interface,GUI)是指采用图形方式显示的计算机操作环境用户接口。 与早期计算机使用的命令行界面相比,图形界面对于用户来说更为简单易用。 GUIDE 是 Matlab 提供的图形界面开发环境,提供了一系列用于创建图形用户界面的工具,从而简单化界面布局和编程工作。 2)图形用户界面设计 ① GUI 设计模板 在 Matlab 主窗口中,选择 File 菜单中的 New 菜单项,再选择其中的GUI 命令,就会显示图形用户界面的设计模板。 Matlab 为 GUI 设计一共准备了 4 种模板,分别是 Black GUI(默认)、GUI with Uicontrols(带控件对象的 GUI 模板)、 GUI with Axes and Menu(带 9 坐标轴与菜单的 GUI 模板)与 Modal Question Dialog(带模式问话对话框的 GUI 模板)。 当用户选择不同的模板时,在 GUI 设计模板界面的右边会显示与该模板对应的 GUI 图形。 ② GUI 设计窗口 在 GUI 设计模板中选中一个模板,然后单击 OK 按钮,就会显示 GUI设计窗口。 选择不同的 GUI 设计模式时,在 GUI 设计窗口中显示的结果是不一样的。 GUI 设计窗口由菜单栏、工具栏、控件工具栏以及图形对象设计区等部分组成。 GUI 设计窗口的菜单栏有 File、 Edit、 View、 Layout、 Tools 和Help 6 个菜单项,使用其中的命令可以完成图形用户界面的设计操作。 ③ GUI 设计窗口的基本操作 在 GUI 设计窗口创建图形对象后,通过双击该对象的属性编辑器。 例如,创建一个 Push Button 对象,并设计该对象的属性值。 三、语音信号处理的总体方案 语音信号处理是信号处理中的重要分支之一。 它包括的主要方面有:语音的识别,语言的理解,语音的合成 ,语音的增强 ,语音的数据压缩等。 而本文仅仅是对语音信号做一些简单的处理,包括 信号的提取、调整、变换和滤波等。 (一)本文基本要求 本文是对语音信号同时在时域和频域进行滤波处理和分析,在 Matlab应用软件下设计一个简易图形用户界面( GUI),来解决一般应用条件下的 10 各种语音信号处理。 (二)语音信号的处理 语音信号的采集 使用电脑的声卡设备采集一段时间长度约为 5~10 秒的声音信号,保存为 *.wav 格式。 语音信号的处理 语音信号的处理 [1,8,11,12,13]主要包括信号的提取、调整、变换和滤波等。 1)提取:通过图形用户界面上的菜单功能按键采集电脑设备上的一段音频信号、完成音频信号的频率,幅度等信息的提取,并得到该语音信号的波形图。 2)调整:在设计的用户图形界面下对输入的音频信号进行各种变化,如变化幅度、改变频率等操作,以实现对语音信号的调整。 3)变换:在用户图形界面下对采集的语音信号进行 Fourier 等变换,并画出变换前后的频谱图。 4)滤波:滤除语音信号中的噪音部分,可采用低通滤波、高通滤波、带通滤波和带阻滤波,并比较各种滤波后的效果。 语音信号的效果显示 通过用户图形界面的输出功能,将处理后的语音信号进行播放,试听处理后的效果。 语音信号处理方框图 图 31 列出了整个语音信号处理的方框图: 11 图 31 语音信号处理方框图 其中信号调整包括信号的幅度和频率的任意倍数变化,如图 32 所示 : 图 32 信号调整 信号的滤波采用了四种滤波方式,如图 33 所示: 图 33 语音信号滤波的方式 综合图 3 3 33 可以看到,整个语音信号处理系统的流程分为三步,首先是读入待处理的语音信号,即信号的采集;然后进行语音信号的处理,包括信息的提取、信号幅度和频率调整、语音信号的傅里叶变换以及信号的滤波,而滤波又包括低通滤波、高通滤波、带。
阅读剩余 0%
本站所有文章资讯、展示的图片素材等内容均为注册用户上传(部分报媒/平媒内容转载自网络合作媒体),仅供学习参考。 用户通过本站上传、发布的任何内容的知识产权归属用户或原始著作权人所有。如有侵犯您的版权,请联系我们反馈本站将在三个工作日内改正。