数字语音理实验报告.doc

  1. 1、本文档共17页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
数字语音理实验报告

数字语音处理实验报告 题目 语音端点检测 作者 学院 专业 班级 学号 指导教师 目录 摘要: 2 前言: 2 1、???? 实现原理 3 1.1基本公式: 3 1.2 理论基础: 3 1.3 基本思路: 4 2、 matlab实现 4 2.1 程序流程图: 4 2.2 程序分析 5 2.2.1 流程图的说明 5 2.2.2 起点和终点的判断 5 2.2.3 enframe函数的说明 5 2.2.4 过零率的计算 7 2.2.5能量的计算 8 2.3 运行结果 9 总 结 10 参考文献 11 附录:完整源程序 12 摘要:短时能量分析和过零率分析作为语音信号时域分析中最基本的方法,应用相当广泛,特别是在语音信号端点检测方面。由于在语音信号端点检测方面这两种方法通常是独立使用的,在端点检测的时候很容易漏掉重要的信息。本文将这两种方法结合起来,利用MATLAB 工具对其进行了分析。实验结果表明,检测的效果好于分别使用其中一种方法的情况。端点检测,短时能量过零率门限近年来,在语音信号处理领域,关于语音信号中端点检测及判定的研究越来越重要。作为语音识别的前提工作,有效的端点检测方法不仅可以减少数据的存储量和处理时间,而且可以排除无声段的噪声干扰,使语音识别更为准确。目前的语音信号端点检测算法比较多,有短时能量,短时过零率分析,自相关法等等,其中以短时能量和短时过零率用的最多。大多文献和教材都是把它们分别进行介绍,由于它们各有其优缺点,分别使用作为语音端点检测的手段难免会漏掉很多有用的信息,因此,笔者将这两种方法结合起来进行分析,在判断清浊音及静音方面可以起到互补的作用,从语音信号的短时能量和过零率分析的特点出发,加以门限值来分析将两种方法相结合应用的效果,最后通过Matlab 进行了仿真。1、???? 实现原理 1.1基本公式: 短时能量公式: 设第n帧语音信号Xn(m)的短时能量用En表示,其计算公式为: 式中,N为信号帧长。 短时过零率公式: 其中,sgn[]是符号函数,即: 1.2 理论基础: 语音信号一般可分为无声段、清音段和浊音段。无声段是背景噪声段, 平均能量最低; 浊音段为声带振动发出对应的语音信号段, 平均能量最高; 清音段是空气在口腔中的摩擦、冲击或爆破而发出的语音信号段, 平均能量居于前两者之间。清音段和无声段的波形特点有明显的不同, 无声段信号变化较为缓慢, 而清音段信号在幅度上变化剧烈, 穿越零电平次数也多。经验表明, 通常清音段过零率最大。端点检测就是首先判断“有声”还是“无声”, 如果有声,则还要判断是“清音”还是“浊音”。为正确地实现端点检测, 一般综合利用短时能量和过零率两个特征,采用“双门限检测法”。 1.3 基本思路: 根据信号设置三个阈值:能量阈值,TL,TH;过零率阈值ZCR,当某帧信号大于TL或者大于ZCR时,认为信号的开始、起点,当大于TH时,则认为正式的语音信号,如果保持一段时间,则确认这信号即所需信号。 2、 matlab实现 2.1 程序流程图: 2.2 程序分析 2.2.1 流程图的说明 amp2,amp1为能量的两个阈值,前者为小的,后者为大的,zcr2为过零率的阈值小值,当amp2 or zcr2,count开始加1,在此期间如果有不满足该条件的话,count立即为0,回到0状态。如果amp1 时,count加1,然后进入2状态。在2状态里边,当amp2 or zcr2,count也1,如果不满足条件,则Silence+1,如果Silence即在2状态期间处于静音状态满足结束时的静音条件,则判断所有计数的信号即count的值是否满足最小的语音信号长度值,如果满足,则找到结束点,否则认为是噪声,重新开始。如果Silence即在2状态期间处于静音状态不足结束时的静音条件,则count继续加1。 2.2.2 起点和终点的判断 即判断X1,X2。根据程序x1=max(n-count-1,1);n为找到amp1时,此时的贞的序列值。而count为在这之前的amp2 or zcr2,的贞的个数。一般突发信号从无慢慢到有,如果N=6,COUNT=2,则起点从第三帧开始。很好理解。 对于X2,有count = count-silence/2;x2 = x1 + count - 1;总count值为amp2 or zcr2开始,到判断超过最小静音为止。而当进入silence加的时候,已经为静音阶段了。当silence=6时,便结束了,然后X2的计算方法,基本了解,但silence/2感觉可以不要也行,后边的-1也感觉可以不要。 2.2.3 enframe函数的说明 前边算能量,过零

文档评论(0)

linjuanrong + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档