语音信号短时域分析之短时平均能量(四)

       因为语音信号的能量随时间而变化,清音和浊音之间的能量区别相当显著。因此对短时能量和短时平均幅度进行分析,能够描写叙述语音的这样的特征变换情况。定义n时刻某语音信号的短时平均能量E为:

                             

式中,N为窗长,可见短时能量为一帧样点值的加权平方和。当窗函数为矩形窗时

                                                                                       

        短时平均能量用途:

       (1) 能够作为区分清音和浊音的特征參数;

       (2) 在信噪比比較高的情况下,短时能量能够作为区分有声和无声的根据;

       (3) 能够作为辅助的特征參数用于语音识别中。

       当中短时能量matlab代码例如以下: 

x = wavread('beijing.wav');
%计算N=50,帧移=20时的语音能量
s=fra(50,20,x);               
s2=s.^2;                    %一帧内各样点的能量
energy=sum(s2,2);            %求一帧能量
subplot(2,2,1);               %定义绘图数量和布局 
plot(energy);                %画N=50时的语音能量图
xlabel('帧数');               %横坐标
ylabel('短时能量 E');         %纵坐标
legend('N=50');              %曲线标识
axis([0,1500,0,2*10^10]);      %定义横纵坐标范围

取不同帧时能量例如以下图:

                                                                          

当中,fra()为分帧函数,matlab代码例如以下:

function f=fra(len,inc,x)
fh=fix(((size(x,1)-len)/inc)+1)
f=zeros(fh,len);
i=1;n=1;
while i<=fh
    j=1;
    while j<=len
        f(i,j)=x(n);
        j=j+1;n=n+1;
    end
    n=n-len+inc;
    i=i+1;
end

猜你喜欢

转载自www.cnblogs.com/ldxsuanfa/p/10856260.html