基音周期检测算法比较(6)

2020-02-21 11:18

安徽财经大学管理科学与工程学院本科毕业论文

附 录

语音信号读入、采样、自相关运算的源程序: function a1

x=wavread('a1.wav');%读取声音文件 x=x(11001:22000); figure(1);

stem(x,'.'); %显示声音信号的波形

n=220; %取20ms的声音片段,即220个样点 for m=1:length(x)/n; %对每一帧求短时自相关函数 for k=1:n; Rm(k)=0;

for i=(k+1):n;

Rm(k)=Rm(k)+x(i+(m-1)*n)*x(i-k+(m-1)*n); end end

p=Rm(10:n); %防止误判,去掉前边10个数值较大的点 [Rmax,N(m)]=max(p); %读取第一个自相关函数的最大点 end %补回前边去掉的10个点 N=N+10;

T=N/8; %算出对应的周期

figure(2);stem(T,'.');axis([0 length(T) 0 10]);

xlabel('帧数(n)');ylabel('周期(ms)');title('各帧基音周期');

T1= medfilt1(T,5); %去除野点

figure(3);stem(T1,'.');axis([0 length(T1) 0 10]);

xlabel('帧数(n)');ylabel('周期(ms)');title('各帧基音周期'); 语音信号读入、采样、平均幅度差运算源程序: function a11

x=wavread('a1.wav');%读取声音文件 b1=x(11001:22000); figure(1);

stem(b1,'.'); %显示声音信号的波形 N=200;%窗长 A=[];

for k=1:200%延迟长度 sum=0; for m=1:N

sum=sum+abs(b1(m)-b1(m+k-1)); end

A(k)=sum; end

22

安徽财经大学管理科学与工程学院本科毕业论文

s=x(11001:22000); figure(2) subplot(211); plot(s);

subplot(212); plot(A);

低通滤波器设计,滤波的源程序: [x,fs,bits]=wavread('a1.wav'); x1=x(11001:22000); figure(1);

plot(x1);%做原始语音信号的时域图形 title('原始语音信号'); fc1=500;

N1=2*pi*0.9/(0.1*pi) wc1=2*pi*fc1/fs; if rem(N1,2)==0 N1=N1+1; end

Window= boxcar (N1+1); %长度为N1的矩形窗Window b1=fir1(N1,wc1/pi,Window); figure(2);

freqz(b1,1,512);

title('低通滤波器的频率响应');

y= filter(b1,1,x1);%对信号进行低通滤波 figure(3); plot(y);

title('信号经过低通滤波器(时域)');

语音文件a2.wav语音滤波前后基音轨迹图:

23

安徽财经大学管理科学与工程学院本科毕业论文

图1 a2滤波前基音轨迹图

图2 a2滤波后基音轨迹图

24

安徽财经大学管理科学与工程学院本科毕业论文

语音文件a3.wav语音滤波前后基音轨迹图:

图3 a3滤波前基音轨迹图

25

安徽财经大学管理科学与工程学院本科毕业论文

图4 a3滤波后基音轨迹图

语音文件a4.wav语音滤波前后基音轨迹图:

图5 a4滤波前基音轨迹图

26

安徽财经大学管理科学与工程学院本科毕业论文

图6 a4滤波后基音轨迹图

27


基音周期检测算法比较(6).doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:计算机网络末考试试题加答案

相关阅读
本类排行
× 注册会员免费下载(下载后可以自由复制和排版)

马上注册会员

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: