代碼:
clear
[x,Fs]=audioread('mei.wav'); % 讀入資料檔案
x=x(:,1); % 雙聲道變單聲道
wlen=200; inc=80; % 給出幀長和幀移
win=hamming(wlen); % 給出哈明窗
%win=boxcar(wlen); %給出矩形窗
N=length(x); % 信號長度
X=enframe(x,win,inc)'; % 分幀
fn=size(X,2); % 求出幀數
time=(0:N-1)/Fs; % 計算出信號的時間刻度
for i=1 : fn
u=X(:,i); % 取出一幀
u2=u.*u; % 求出能量
En(i)=sum(u2); % 對一幀累加求和
end
subplot 211; plot(time,x,'k'); % 畫出時間波形
axis([0 0.5,-inf,inf]) %改變橫軸范圍
title('語音波形');
ylabel('幅值'); xlabel(['時間/s' 10 '(a)']);
frameTime=frame2time(fn,wlen,inc,Fs); % 求出每幀對應的時間
subplot 212; plot(frameTime,En,'k') % 畫出短時能量圖
axis([0 0.5,-inf,inf]) %改變橫軸范圍
title('短時能量');
ylabel('幅值'); xlabel(['時間/s' 10 '(b)']);
結果:

轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/340573.html
標籤:其他
