1、推荐太原理工大学数字语音处理实验报告 精品本科实验报告课程名称: 数字语音处理 实验项目: 语音短时平均能量的实现 实验地点: 跨越机房 专业班级: 学号: 学生姓名: 指导教师: 年 月 实验一 语音短时平均能量的实现一、实验目的1.熟悉Matlab基本程序的运用。2.充分理解取不同窗长时的语音短时平均能量的变化情况。3.熟悉Matlab编程语言在语音信号处理中的作用。4.能够实现程序的重新编制。二、实验原理定义n时刻某语音信号的短时平均能量为:式中N为窗长,可见短时平均能量为为一帧样点值的甲醛平方和。特殊地,当窗函数为矩形窗时,有三、实验要求1.实验前自己用Cool Edit音频编辑软件录
2、制声音“我到北京去”,并把它保存为.txt文件。2.编程实现不同矩形窗长N=50、100、200、800的短时平均能量。3.用Matlab画出不同窗长的短时平均能量的图形。4.写出实验报告,分析实验结果。四、实验难点对采集到的语音阳电只进行分帧。五、实验条件计算机,Matlab软件,2学时六、实验步骤1.用Cooledit读入语音“我到北京去”。设置采样率为8kHz,16位,单声道。2.将读入的语音wav文件保存为txt文件。3.把保存的文件speech.txt读入Matlab。fid=fopen(speech.txt,rt);x=fscanf(fid,%f);fclose(fid);4.对采
3、集到得语音样点值进行分帧。 分帧子程序为fra.mfunction 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 jxL)f(x)= 0 (-xLxxL) x+xL (xxL) (3-1)一般削波电平 X取本帧语音幅度的60%70%。将削波后的序列 f(x) 用短时自相关函数估计基音周期,在基音周期位置的峰值更加尖锐,可以有效减少倍频或半频错误。三、实验要求1实验前自己用Cool Edit 音频编辑软件录制浊音部分,并把它保存为.txt文件。2分别取长度N=1
4、60和N=N+K的矩形窗函数作用于语音信号上,首先对其进行中心削波,比较削波前和削波后语音信号波形,并使得削波后的信号进行乘积并求和,计算延迟为0K=th0 a(k)=a(k)-th0; elseif a(k)=(-th0); a(k)=a(k)+th0; else a(k)=0; endendm=max(a);for i=1:L; a(i)=a(i)/m;endsubplot(2,1,2);plot(a,k);axis(0,1711,-1,1);title(中心削波后语音波形);xlabel(样点数);ylabel(幅度值);fclose(fid);4.编程实现削波前后的修正自相关,并检测出
5、基音周期。fid=fopen(voice.txt,rt);b,count=fscanf(fid,%f,1,inf);fclose(fid);N=320;A=;for k=1:320; sum=0; for m=1:N; sum=sum+b(m)*b(m+k-1); end A(k)=sum;endfor k=1:320 B(k)=A(k)/A(1);end figure(2);subplot(2,1,1);plot(B,k);title(中心削波前修正自相关);xlabel(延迟 k);ylabel(幅度值);axis(0,320,-1,1);N=320;A=;for k=1:320; sum=0; for m=1:N; sum=sum+a(m)*a(m+k-1); end A(k)=sum;endfor k=1:320 C(k)=A(k)/A(1);endsubplot(2,1,2);plot(C,k);title(中心削波后修正自相关);xlabel(延迟 k);ylabel(幅度值);axis(0,320,-1,1);六、实验结果
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1