matlab 中短时能量的两个门限是怎么设置的

matlab 中短时能量的两个门限是怎么设置的,第1张

clear all

[signal,fs,bit] = wavread('1.wav')%读取语音信号

framelength = 200%设置帧长

framenumber = fix(length(signal)/framelength)%读取语音文弊亩件对应的态卜搭帧数

for i = 1:framenumber%分帧处理

framesignal = signal((i-1)*framelength+1:i*framelength)%获取帆拿每帧的数据

E(i) = 0%每帧能量置零

for j = 1:framelength%计算每一帧的能量

E(i) = E(i)+framesignal(j)^2

end

end

%subplot(2,2,1)

plot(E)

xlabel('帧数')

ylabel('短时能量')

legend('N = 200')%曲线标识

clear E

你这里面核心是:

h=linspace(1,1,2.^(i-2)*N)

%形成一个矩形窗,长度为2.^(i-2)*N

En=conv(h,a.*a)%

求短时能量脊吵尺函数En

第一句就是生成一个数组,可以定碰物义可变数组,第二句是卷积,你可以查信号系统的书,不难。其他就是读数据和画樱高图了。


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/yw/12325991.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-24
下一篇 2023-05-24

发表评论

登录后才能评论

评论列表(0条)

保存