基于两步排列熵的语音活动检测方法

文档序号:9434121阅读:259来源:国知局
基于两步排列熵的语音活动检测方法
【技术领域】
[0001] 本发明涉及一种基于两步排列熵的语音活动检测方法,属于语音活动检测技术领 域。
【背景技术】
[0002] 语音活动检测技术是从包含语音的一段信号中确定出语音信号,在语音编码,语 音识别,语音增强等方面发挥重要作用。
[0003] 经过多年的发展,语音活动检测领域已经涌现出一些高效实用的算法,比如:短时 能量方法,过零率方法,谱估计方法,自相关函数法等。其中以自相关函数算法为代表的检 测方法目前已俨然成为了该领域公认的标准。但是这类算法亦存在某些弊端,例如:当噪声 不断增大时,检测效果降低,另外,上述方法主要假设噪声为平稳高斯白噪声,对于非平稳 噪声检测效果相对较差。
[0004] 针对上述问题,目前已存在一些应对方案。例如,基于联合音视频信号的方法能够 提高对非平稳噪声的鲁棒性,但是该方法需要附加特殊传感器,成本较高。

【发明内容】

[0005] 为解决现有技术的不足,本发明的目的在于提供一种基于两步排列熵的语音活动 检测方法,通过计算语音信号排列熵,对背景噪声、清音、浊音进行判断。该方法对背景噪声 的鲁棒性较高,计算准确高效,成本低。
[0006] 为了实现上述目标,本发明采用如下的技术方案:
[0007] -种基于两步排列熵的语音活动检测方法,其特征是,具体包括如下步骤:
[0008] (1)对语音信号进行分帧处理,得到各帧语音信号;
[0009] (2)计算各帧语音信号的短时能量;
[0010] (3)各帧语音信号进行第一步排列熵计算;
[0011] (4)通过短时能量和排列熵,作第一步判断,检测噪声和语音信号;
[0012] (5)对检测出的语音信号进行第二步排列熵计算;
[0013] (6)判断语音信号的清浊音。
[0014] 前述的基于两步排列熵的语音活动检测方法,其特征是,所述步骤(1)中的分帧 处理通过对语音信号进行固定时长的分帧,确定帧长和帧移,得到各帧语音信号;
[0015] 前述的基于两步排列熵的语音活动检测方法,其特征是,所述步骤(2)根据短时 能量计算公式得到语音信号的能量。
[0016] 前述的基于两步排列熵的语音活动检测方法,其特征是,所述步骤(3)中的计算 第一步排列熵的工作过程包括如下步骤:
[0017] (3. 1)将语音信号数字化得到时间序列;
[0018] (3. 2)利用排列熵的计算公式得到该时间序列的排列熵值。
[0019] 前述的基于两步排列熵的语音活动检测方法,其特征是,所述步骤(4)具体包括 如下步骤:
[0020] (4. 1)预先设定值rip,计算每帧短时能量和排列熵的比值ri。
[0021] (4. 2)比较ri与Ilp的大小,如果ri大于ri p,则判断为语音信号,反之,则判断为 噪声。
[0022] 前述的基于两步排列熵的语音活动检测方法,其特征是,所述步骤(5)中对检测 的语音信号进行第二步排列熵计算包括如下步骤:
[0023] (5. 1)通过计算相邻帧之间的差值,差值为正时用"1"表示,为负时用"0"表示;
[0024] (5.2)在上述步骤(5.2)的基础上,重新构建仅由"0"和"1"组成的新序列;
[0025] (5. 3)计算由步骤(5. 3)得到的新序列的排列熵、每帧短时能量和排列熵的比值 η 〇
[0026] 前述的基于两步排列熵的语音活动检测方法,其特征在于:所述步骤(6)中的判 断清浊音的方法包括如下步骤:
[0027] (6. 1)预先设定ε和nuv,其中ε为排列熵的最大值的〇. 8倍,nuv为η最大值 的〇. 2倍;
[0028] (6. 2)比较每帧语音信号的排列熵PE和ε,η和nuv的大小,如果PE > ε并且 η < nuv,则判断该帧语音信号为清音,否则判断为浊音。
[0029] 本发明所达到的有益效果:充分利用了语音信号帧数之间的准周期性,利用排列 熵作为语音信号复杂度的度量标准,实现语音活动检测的目的。
【附图说明】
[0030] 图1是清浊音波形比较图。
【具体实施方式】
[0031] 下面结合附图对本发明作进一步描述。以下实施例仅用于更加清楚地说明本发明 的技术方案,而不能以此来限制本发明的保护范围。
[0032] 本发明涉及的一种基于两步排列熵的语音活动检测方法,通过计算语音信号排列 熵,对背景噪声、清音、浊音进行判断。对于含噪语音信号,首先进行第一步排列熵计算,对 语音和噪声进行识别,对分离出语音信号然后进行第二步检测,计算排列熵,得到清音和浊 音的判断结果。
[0033] 清浊音波形比较图如图1所示。由图可知,浊音信号具有明显的单调性,在tl到 t2时间内单调递减,t2到t3时间内单调递增,利用该特点,在第二步排列熵检测阶段,重构 新序列时,tl到t2时间内均为0,t2到t3时间内均为1,新序列的复杂度较低,因为排列熵 的值较小,清音则〇和1交替出现的频率较高,排列熵值较大,利用该特性即可判断清浊音。
[0034] 下面结合实例对本发明作更进一步的说明。
[0035] 具体包括如下步骤:
[0036] (1)对语音信号进行分帧处理,得到各帧语音信号;
[0037] (2)计算各帧语音信号的短时能量;
[0038] (3)各帧语音信号进行第一步排列熵计算;
[0039] (4)通过短时能量和排列熵,作第一步判断,检测噪声和语音信号;
[0040] (5)对检测出的语音信号进行第二步排列熵计算;
[0041] (6)判断语音信号的清浊音;
[0042] 上述步骤中,步骤(1)~(4)为噪声和语音信号的判断步骤,步骤(5)~(6)为清 浊音和浊音的判断步骤。
[0043] 步骤(3)和(5)中的排列熵,是一种基于复杂性量度的非线性动力学参数,能够 快速、有效地反映系统的特征。
[0044] 下面简要介绍排列熵的计算方法:
[0045] 给定一个时间序列{x (i),i = 1,2,…,N},长度为N,构成一个嵌入因子为η的新 的嵌入向量序列 |X(i), i = 1,2,…,Ν-η+1},其中 X(i) = [x(i), x(i+l),…,x(i+n-l)]。
[0046] 对于一个长度为η的序列共有η !个不同的排列。
[0047] 假设Q(Ji P表示X(i)中属于j型排列的个数,其中j = 1,2,…,η !。
[0048] 因此频率P ( π j)可以表不为:
[0050] 根据所求概率,排列熵由下式得到:
[0052] 标准化排列熵PE为:
[0054] 时间序列复杂度越高,排列熵的值越大。
[0055] 在第一步排列熵检测阶段(步骤3):
[0056] (3. 1)对语音信号进行分帧,帧长20ms,帧重叠间隔10ms。
[0057] (3. 2)利用排列熵计算公式(3)得到各帧语音信号的排列熵值。
[0058] (3. 2)预先设定值rip,计算每帧短时能量和排列熵的比值Tl。其中,计算各帧语 音信号的短时能量时,短时能量的计算公式如下:
[0060] (3.4)比较Tl与Ilp的大小,如果Tl大于τι p,则判断为语音信号,反之,则判断为 噪声。
[0061] 在第二步排列熵检测阶段(步骤5):
[0062] (5. 1)计算相邻帧之间的差值,差值为正时用"1"表示,为负时用"0"表示:
[0063] (5. 2)在步骤a的基础上,重新构建仅由"0"和"1"组成的新序列。
[0064] (5. 3)对步骤(5. 2)得到的新序列计算排列熵PE,具体步骤与步骤3相同。
[0065] (5. 4)预先设定ε和nuv,其中ε为排列熵的最大值的〇. 8倍,quv为η最大值 的〇. 2倍。
[0066] (5. 5)比较每帧语音信号的排列熵PE和ε,η和nuv的大小,如果PE > ε并且 η < nuv,则判断各帧语音信号为清音,否则判断为浊音。
[0067] 以上所述仅是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人 员来说,在不脱离本发明技术原理的前提下,还可以做出若干改进和变形,这些改进和变形 也应视为本发明的保护范围。
【主权项】
1. 基于两步排列熵的语音活动检测方法,其特征是,具体包括如下步骤: (1) 对语音信号进行分帧处理,得到各帧语音信号; (2) 计算各帧语音信号的短时能量; (3) 各帧语音信号进行第一步排列熵计算; (4) 通过短时能量和排列熵,作第一步判断,检测噪声和语音信号; (5) 对检测出的语音信号进行第二步排列熵计算; (6) 判断语音信号的清浊音。2. 根据权利要求1所述的基于两步排列熵的语音活动检测方法,其特征是,所述步骤 (1) 中的分帧处理通过对语音信号进行固定时长的分帧,确定帧长和帧移,得到各帧语音信 号。3. 根据权利要求1所述的基于两步排列熵的语音活动检测方法,其特征是,所述步骤 (2) 根据短时能量计算公式得到语音信号的能量。4. 根据权利要求1所述的基于两步排列熵的语音活动检测方法,其特征是,所述步骤 (3) 中的计算第一步排列熵的工作过程包括如下步骤: (3. 1)将语音信号数字化得到时间序列; (3. 2)利用排列熵的计算公式得到该时间序列的排列熵值。5. 根据权利要求1所述的基于两步排列熵的语音活动检测方法,其特征是,所述步骤 (4) 具体包括如下步骤: (4. 1)预先设定值nP,计算每帧短时能量和排列熵的比值n。 (4.2)比较n与np的大小,如果n大于np,则判断为语音信号,反之,则判断为噪 声。6. 根据权利要求5所述的基于两步排列熵的语音活动检测方法,其特征是,所述步骤 (5) 中对检测的语音信号进行第二步排列熵计算包括如下步骤: (5. 1)通过计算相邻帧之间的差值,差值为正时用" 1"表示,为负时用"0"表示; (5. 2)在上述步骤(5. 2)的基础上,重新构建仅由"0"和"1"组成的新序列; (5. 3)计算由步骤(5. 3)得到的新序列的排列熵、每帧短时能量和排列熵的比值n。7. 根据权利要求6所述的基于两步排列熵的语音活动检测方法,其特征在于:所述步 骤(6)中的判断清浊音的方法包括如下步骤: (6. 1)预先设定e和nuv,其中e为排列熵的最大值的〇. 8倍,nuv为n最大值的 〇? 2 倍; (6. 2)比较每帧语音信号的排列熵PE和e,n和nuv的大小,如果PE>e并且n<nuv,则判断该帧语音信号为清音,否则判断为浊音。
【专利摘要】本发明公开了一种基于两步排列熵的语音活动检测方法,其特征是,具体包括如下步骤:(1)对语音信号进行分帧处理,得到各帧语音信号;(2)计算各帧语音信号的短时能量;(3)各帧语音信号进行第一步排列熵计算;(4)通过短时能量和排列熵,作第一步判断,检测噪声和语音信号;(5)对检测出的语音信号进行第二步排列熵计算;(6)判断语音信号的清浊音。本发明所达到的有益效果:充分利用了语音信号帧数之间的准周期性,利用排列熵作为语音信号复杂度的度量标准,实现语音活动检测的目的。
【IPC分类】G10L25/21, G10L25/93, G10L25/84
【公开号】CN105185386
【申请号】CN201510629748
【发明人】徐宁, 李海燕, 鲍静益, 蒋爱民, 刘小峰
【申请人】河海大学常州校区
【公开日】2015年12月23日
【申请日】2015年9月28日
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1