1 简介
端点检测算法流程
1)预处理:对16kHz的语音信号x[n]进行预加重以及分帧处理。
2)计算每一帧的倒谱矢量值,并取1到5帧的倒谱参数的平均值作为背景噪声倒谱值。
3)逐帧计算倒谱系数和背景噪声的倒谱值,利用上式计算倒谱距离。
4)确定两个门限A1和A2,且A2>A1。
5)根据每一帧的倒谱值进行端点检测,如果这一帧的倒谱距离值大于第一个门限A1,且之后的三个连续的倒谱距离值也都大于A1,则判定这一帧为语音的起点。否则的话,继续检测。对于终点的检测思想也是这样,只是门限值变成了A2。为了避免突发噪声的影响,所以在两个端点的判断上都使用了四个连续的点,只有同时满足连续的四个点的时候,才可以判定当前帧是不是到了规定的门限值。这样做的目的主要是为了防止突发噪声的影响。
2 部分代码
%倒谱法端点检测M1_009.wav,enframe.m放在当前路径
clear all;
[x,fs,bits]=wavread('M1_009.wav');