由于语音信号的能量随时间而变化,清音和浊音之间的能量差别相当显著,因此对短时能量和短时平均幅度进行分析,可以描述语音的这种特征变换情况。定义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
语音信号短时域分析之短时平均能量(四)
时间: 2024-10-10 04:02:03