语音端点检测就是检测语音信号的起点和终点,因此也叫起止点识别。它是语音处理技术中的一个重要方面,一个关键性问题,端点检测的准确与否,在很大程度上影响语音识别系统的性能。这里我们来研究下采用短时能量和短时过零率相结合的方法,来分离出真正的语音信号作为系统处理的对象。

 

双门限端点检测算法的实现方法:

在开始进行端点检测之前,首先为短时能量和过零率分别确定两个门限:

一个是比较低的门限,其数值比较小,对信号的变化比较敏感,很容易就会被超过。

另一个是比较高的门限,数值比较大,信号必须达到一定的强度,该门限才可能被超过。

低门限被超过未必就是语音的开始,有可能是时间很短的噪声引起的。高门限被超过则可以基本确信是由于语音信号引起的。

 

整个语音端点检测可分为4段:静音,过滤段,语音段,结束。程序中使用一个变量Status来表示当前所处的状态。在静音段,如果短时能量或过零率,超越了低门限,就应该开始标记起点,进入过渡段。在过渡段中,由于参数的数值比较小,不能确信是否处于真正的语音段,因此只要两个参数的数值回落的到低门限以下,就将当前状态恢复到静音状态,而如果过渡段中两个参数中任意一个超过了高门限,就可以确信进入了语音段。

Logo

CSDN联合极客时间,共同打造面向开发者的精品内容学习社区,助力成长!

更多推荐