1 / 25
文档名称:

语音处理实验报告.doc

格式:doc   大小:170KB   页数:25页
下载后只包含 1 个 DOC 格式的文档,没有任何的图纸或源代码,查看文件列表

如果您已付费下载过本站文档,您可以点这里二次下载

分享

预览

语音处理实验报告.doc

上传人:012luyin 2019/8/24 文件大小:170 KB

下载得到文件列表

语音处理实验报告.doc

文档介绍

文档介绍:语音处理实验报告实验一语音信号的端点检测一、实验目的1、掌握短时能量的求解方法2、掌握短时平均过零率的求解方法3、掌握利用短时平均过零率和短时能量等特征,对输入的语音信号进行端点检测。二、仪器设备实验仪器设备及软件HP计算机,MATLAB三、实验原理端点检测是语音信号处理过程中非常重要的一步,它的准确性直接影响到语音信号处理的速度和结果。本次实验利用短时过零率和短时能量相结合的语音端点检测算法利用短时过零率来检测清音,用短时能量来检测浊音,两者相配合便实现了信号信噪比较大情况下的端点检测。算法对于输入信号的检测过程可分为短时能量检测和短时过零率检测两个部分。算法以短时能量检测为主,短时过零率检测为辅。根据语音的统计特性,可以把语音段分为清音、浊音以及静音(包括背景噪声)三种。在本算法中,短时能量检测可以较好地区分出浊音和静音。对于清音,由于其能量较小,在短时能量检测中会因为低于能量门限而被误判为静音;短时过零率则可以从语音中区分出静音和清音。将两种检测结合起来,就可以检测出语音段(清音和浊音)及静音段1、短时能量计算定义n时刻某语言信号的短时平均能量为:式中N为窗长,可见短时平均能量为一帧样点值的平方和。特殊地,当窗函数为矩形窗时,有短时过零率过零就是指信号通过零值。过零率就是每秒内信号值通过零值的次数。对于离散时间序列,过零则是指序列取样值改变符号,过零率则是每个样本的改变符号的次数。对于语音信号,则是指在一帧语音中语音信号波形穿过横轴(零电平)的次数。可以用相邻两个取样改变符号的次数来计算。如果窗的起点是n=0,短时过零率Z为波形穿过横轴(零电平)的次数短时过零可以看作信号频率的简单度量浊音的短时平均幅度最大,无声的短时平均幅度最小,清音的短时过零率最大,无声居中,浊音的短时过零率最小。3、短时自相关函数①是偶函数;②s(n)是周期的,那么R(k)也是周期的;③可用于基音周期估计和线性预测分析4、判断语音信号的起点和终点利用短时平均幅度和短时过零率可以判断语音信号的起点和终点。语音端点检测方法可采用测试信号的短时能量或短时对数能量、联合过零率等特征参数,并采用双门限判定法来检测语音端点,即利用过零率检测清音,用短时能量检测浊音,两者配合。首先为短时能量和过零率分别确定两个门限,一个是较低的门限数值较小,对信号的变化比较敏感,很容易超过;另一个是比较高的门限,数值较大。低门限被超过未必是语音的开始,有可能是很短的噪声引起的,高门限被超过并且接下来的自定义时间段内的语音。四、实验步骤及程序(1)实验步骤:取一段录音作为音频样本。利用公式分别编程计算这段语音信号的短时能量和短时过零率,然后分别画出它们的曲线。调整能量门限。进行幅度归一化并设置帧长、短时能量阈值、过零率阈值等参数。编写程序实现语音端点检测。最后得到语音端点检测图像。(2)语音信号的端点检测程序流程图:(3)语音信号的端点检测实验源程序:clc;clear;c=wavread('');//读语音文件波形e_x=frame(c(:,1),'energy');//分析语音文件短时能量z_x=frame(c(:,1),'zc');//分析语音文件过零率subplot(5,1,1);plot(c(:,1));subplot(5,1,2);plot(e_x);subplot(5,1,3);plot(z_x);,让我掌握了调用matlab函数的结构体,一开始没学过matlab语言,所以,学这门课很吃力,好多语句都不知道,所以,无从下手去通过语言实现功能,只能一边学语句的涵义哦,一边摸索功能的实现,相当费劲。以后,不知道还有没有机会系统的了解,学****matlab语言,不过,还是从这个试验学到一部分关于matlab的知识,以及用matlab实现语音信号处理的应用技巧。实验二语音信号的特征提取一、实验目的1、掌握语音信号的Mel倒谱特征()的求解方法2、掌握语音信号的线性预测原理以及LPC特征的求解方法二、仪器设备HP计算机、: 语音识别和说话人识别中,常用的语音特征是基于Mel频率的倒谱系数()。参数是将人耳的听觉感知特性和语音的产生机制相结合。 Mel频率可以用如下公式表示: 在实际应用中,倒谱系数计算过程如下; 1、将信号进行分帧,预加重和加汉明窗处理,然后进行短时傅里叶变换并得到其频谱。