基于MATLAB语音信号检测分析及处理(4)

2019-05-26 18:47

基于MATLAB的语音信号检测分析及处理

或终止点)。无信号(或仅有噪声能量)时,En值很小,有语音信号时,能量显著增大。

3.1.3 短时过零率

过零率可以反映信号的频谱特性。对于连续语音信号,可以考察其时域波形通过时间轴的情况。对于离散时间信号,如果相邻两个样点的正负号相异时,我们称之为“过零”,即此时信号的时间波形穿过了零电平的横轴。由此可以计算过零数,过零数就是样本改变符号的次数,统计单位时间内样点值改变符号的次数就可以得到平均过零率。短时过零分析通常用在端点检测,特别是用来估计清音的起始位置和结束位置。

短时平均过零率定义为:

Zn?m?????sgn[x[m]?sgn[x(m?1)]w(n?m) (3-3)

n在矩形窗条件下,可以简化为

1Zn?2Nm?n?N?1?sgn[x(m)?sgn[x(m?1)] (3-4)

短时过零率可以粗略估计语音的频谱特性。由语音的产生模型可知,发浊音时,声带振动,尽管声道有多个共振峰,但由于声门波引起了频谱的高频衰落,因此浊音能量集中于3KZ以下。而清音由于声带不振动,声道的某些部位阻塞气流产生类白噪声,多数能量集中在较高频率上。高频率对应着高过零率,低频率对应着低过零率,那么过零率与语音的清浊音就存在着对应关系。.

音频为“电子信息”的短时过零率的波形图如下图3所示及程序如下:

Zn=zeros(1,(LL-1)*240); for ii=2:(LL-1)*240,

temp1=sign(Y(ii:ii+240)); temp=sign(Y(ii-1:ii+240-1)); Zn(ii)=sum(abs(temp1-temp)); end figure(3) jj=[1:(LL-1)*240];

plot(jj, Zn,'b'); %绘制短时过零率函数曲线

16

基于MATLAB的语音信号检测分析及处理 xlabel('帧数'); ylabel('短时过零率'); title('短时过零率'); grid on;

图3 短时平均过零率

分析可知:清音的短时能量较低,过零率高,浊音的短时能量较高,过零率低。清音的过零率为0.5左右,浊音的过零率为0.1左右,两但者分布之间有相互交叠的区域,所以单纯依赖于平均过零率来准确判断清浊音是不可能的,在实际应用中往往是采用语音的多个特征参数进行综合判决。

短时过零率的应用:

1)区别清音和浊音。清音的过零率高,浊音的过零率低。此外,清音和浊音的两种过零分布都与高斯分布曲线比较吻合。

2)从背景噪声中找出语音信号。语音处理领域中的一个基本问题是,如何将一串连续的语音信号进行适当的分割,以确定每个单词语音的信号,亦即找出每个单词的开始和终止位置。

3)在孤立词的语音识别中,可利用能量和过零作为有话无话的鉴别。

17

基于MATLAB的语音信号检测分析及处理

3.2语音信号端点检测

3.2.1基于短时能量和短时过零率的双门限端点检测原理

双门限法是利用短时能量和过零率的乘积进行检测的。在基于短时能量和过零率的双门限端点检测算法中首先为短时能量和过零率分别确定两个门限,一个为较低的门限,对信号的变化比较敏感,另一个是较高的门限。当低门限被超过时,很有可能是由于很小的噪声所引起的,未必是语音的开始,当高门限被超过并且在接下来的时间段内一直超过低门限时,则意味着语音信号的开始。

该算法的原理简述如下:

对上述两种特征作一个统计估计,得到两个门限值,利用短时能量检测浊音,短时过零率检测清音,两者配合从而确定语音的端点。由于采集的声音信号中最初的短时段多为无声或背景噪声,这样就可以利用已知为“静态”的最初几帧(一般取10帧)信号计算其过零率阀值zcr及高、低能量阀值amp2(低能量阀)和amp1 (高能量阀)。过零率公式:

zcr(i)??xi(n)?xi(n?1) (3-5)

n?1N?1计算amp2和amp1时,首先计算最初10帧信号中每帧的短时平均能量或平均幅度E,最大值记为max,最小值记为min。

本文在计算短时能量之前,先经过一个滤波器,高通滤波器,此为预加重滤波器,目的在于滤除低频干扰 ,尤其是50Hz或60Hz的工频干扰,将对于语言识别更为有用的高频部分的频率进行提升,在计算短时能量之前应用该滤波器,还可以起到消除直流漂移、抑制随机噪声和提升清音部分能量的效果。其关键代码为amp=sum(abs(enframe(filter([1-0.98],1,x),FrameLen,FrameInc)),2)。文中能量门限调整代码为:

amp1=min(amp1,max(amp)/4);

amp2=min(amp2,max(amp)/8);

根据语音信号的实际情况对门限值进行调整,以便更好的对语音端点进行检测。

其端点检测的流程如下所述:开始进行端点检测之前,首先为短时能量和过过零率分别确定两个门限amp1、amp2、zcr1、zcr2, 其中amp2、zcr2分别为短时能量和过零率比较低的门限,其数值比较小,对信号的变化比较敏感,很容易就会超过。另外amp1、zcr1是比较高的门限,数值比较大,信号必须达到一定的强度,该门限才可能被超过。低们限被超过未必就是语音信号的开始,有可能是时间很短的噪声引起的。高门限被超过则可以基本确信是由于语音信号引起的。

18

基于MATLAB的语音信号检测分析及处理

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

一些突发性的噪声也可以引起短时能量或过零率的数值很高,但是往往不能维持足够的长的时间,如门窗的开关、物体的碰撞等引起的噪声。这些都可以通过设定最短时间门限来判别。当前状态处于语音时,如果两个参数的值下降低到低门限以下,而且总的记时长度小于最短时间门限,则认为这是一段噪音,继续扫描以后的语音数据,否则就标记好结束端点,并返回。

3.2.2 双门限语音端点检测实验分析

1、实验环境及参数设置

双门限语音端点检测是在MATLAB软件环境下进行仿真实验。文中语音信号样本是在实验室安静环境下采用麦克风进行录音,以wav格式存储为较纯净的语音样本。实验所加的噪声为伪随机加性高斯白噪声,实验中对较纯净语音样本进行加噪,形成不同SNR的带噪语音样本,然后分别对较纯净的语音样本和加噪后的语音样本进行语音端点检测,并对它们的检测结果进行比较。在语音端点检测之前首先要对被测的语音信号进行预处理等,包括分帧加窗等。文中加Hmmaing窗,通过特性为(1-0.94??1)的滤波器预加重。对其他参数进行设置,如设置语音帧长度,帧移长度,FFT取512,门限阀值设置等。 2、性能准则

在各种各样的信号处理系统中,噪声信号相对于有用信号而言,所造成的都是干扰和破坏作用,但是噪声却是普遍存在的。噪声信号一般分为加性噪声和非加性噪声加性噪声一般被分为冲激噪声、周期性噪声、宽带噪声、相同声道情况下其他语音信号的干扰噪声等等。

(1)高斯噪声

高斯噪声是指概率密度函数服从高斯分布的一类噪声。高斯分布,也称正态分布,记为N(?,?2),其中?和?2为分布的参数,分别为高斯分布的期望和方差特别当?=0,?2=1时,X的分布为标准正态分布。

(2)信噪比

信噪比是指信号的有用成份与噪声功率之比,称为信号噪声比,简称信噪比,常常用分贝数表示。信噪比越高表明它产生的杂音越少。其公式为:

19

基于MATLAB的语音信号检测分析及处理

SNR?10?lgS N其中 S、N分别表示原始信号功率与噪声信号功率. 而波形信号计算式为:

?s(n)2 SNR?10?lg()

?e(n)2其中I为原始语音信号,In为带噪声信号;p1为原始信号功率,p2为噪声信号功率。

文中采用的端点检测通过在较纯净语音信号中加入加性高斯噪声,然后对其进行语音端点检测,改变信噪比值,观察在高信噪比和低信噪比条件下双门限语音端点检测结果,通过实验仿真图比较和分析噪声对各算法语音端点检测结果的影响。 3、分析

基于短时能量和短时过零率的双门限语音端点检测算法是结合短时能量和过零率各自优点来进行检测,双门限端点检测图中红色竖线用来表示语音起点线,绿色竖线表示语音终点线,其检测的实验仿真图如图3.7所示:

function snr=SNR(I,In) p1=1/length(I)*norm(I)^2; p2=1/length(I)*norm(In - I)^2; snr=10*log(p1/p2); end

tmp1=enframe(x(l:length(x)-l),FrameLen,Framelne); tmp2=enframe(x(2:length(x)),FrameLen,Framelne); signs=(tmp1.*tmp2)<0; diffs=(tmp1-tmp2)>0.02; zcr=sum(signs.*diffs,2);

图4 “端点检测”原始语音信号双门限语音端点检测波形图

20


基于MATLAB语音信号检测分析及处理(4).doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:110 超市收银员工作规范d

相关阅读
本类排行
× 注册会员免费下载(下载后可以自由复制和排版)

马上注册会员

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: