clear;
%% 初始化
[s,fs]=audioread('原音频.wav');
step=400; %步长
frameL=ceil(length(s(:,1))/step); %窗长
n=80; %需要分析的帧位
%% 分帧并计算
y=enframe(s(:,1),frameL,step);
yn=y(n,:);
for k=1:frameL
R(k)=0;
F(k)=0;
for m=1:frameL-k
R(k)=R(k)+yn(m)*yn(m+k); %短时自相关函数
F(k)=F(k)+abs(yn(m)-yn(m+k)); %短时平均幅度差函数
end
end
%% 作图
subplot(221);plot(s);hold on;
plot([n*step,n*step],[-0.5,0.5]);
plot([n*step+frameL,n*step+frameL],[-0.5,0.5]);
title('原信号(降噪处理)');hold off;
subplot(223);plot(yn);title('选择帧的信号');
subplot(222);plot(R);title('选择帧的短时自相关函数');
subplot(224);plot(F);title('选择帧的短时平均幅度差函数');
- 1
- 2
前往页