数字语音处理B第二次实验_第1页
数字语音处理B第二次实验_第2页
数字语音处理B第二次实验_第3页
数字语音处理B第二次实验_第4页
数字语音处理B第二次实验_第5页
已阅读5页,还剩15页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、精选优质文档-倾情为你奉上数字语音处理B2016 2017学年第2学期 电信1405 龙为花第二次实验一、实验目的1. 掌握短时傅里叶变换的定义,并理解其两种解释2. 理解窗函数对短时傅里叶谱的影响,并能根据需要选择适当的窗函数3. 理解同态信号处理的原理4. 掌握倒谱的定义及计算方法5. 对以上各项能用Matlab代码实现, 并能画出相应谱图 二、实验内容1 画出ah第20帧单帧语音时域图,窗长20ms, 帧移10ms, 同时加矩形窗和hamming窗分帧函数:function frameSet, timeAxis,frameCount = enframe(data, fs, timeper

2、Frame, overlapRate, winF) winfunc = str2func(winF);ndata=length(data(:);frameLength=fs*timeperFrame*0.001;nframeLength=length(winfunc(frameLength);%取窗长overlap=frameLength*overlapRate;inc=frameLength-overlap;if(nframeLength=1) len=frameLength;else len=nframeLength;endframeCount=fix(ndata-overlap)/inc

3、); %计算帧数frameSet=zeros(len,frameCount);startIndexf =(0:(frameCount-1)*inc;%每帧在数据data中开始的位置startIndexs=(1:len);startIndexsT=startIndexs(:);frameSet(:)=data(startIndexsT(:,ones(frameCount,1)+startIndexf(ones(1,len),:);w=winfunc(frameLength);if (nframeLength1) frameSet=frameSet.*w(:,ones(frameCount,1);

4、endtimeAxis=(1:frameCount)-1)*inc+frameLength/2)/fs;% 求出每帧对应的时间主函数:clcclear allclose all%-load ah; x1=enframe(data, fs, 20, 0.5, boxcar);x2=enframe(data, fs, 20, 0.5, hamming);plot(x1(:,20),g,LineWidth,2);hold on;plot(x2(:,20),b,LineWidth,2);legend(矩形窗信号,汉明窗信号);xlabel(时间(采样点数)); ylabel(幅度);suptitle(

5、电信 1405 龙为花 29)图1:语音ah 第20帧时域波形图与加hammming窗 10k采样2 语音单帧频谱图clcclear allclose all%-load ah;fs=10000;x2=enframe(data, fs, 20, 0.5, boxcar);x1=enframe(data, fs, 20, 0.5, hamming);u1=x1(:,20); % 取得一帧数据u2=x2(:,20);N=1024;t=(0:N-1)/fs; y1=20*log10(fft(u1,N);y2=20*log10(fft(u2,N);f = (0: 511)*fs/1024;figure

6、(1);xlabel(Hz); ylabel(db);plot(f,y1(1:512),r,LineWidth,1);%做原始语音信号的FFT频谱legend(汉明窗的频谱);figure(2);plot(f,y2(1:512),b,LineWidth,1); xlabel(Hz); ylabel(db);legend(矩形窗的频谱);suptitle(电信 1405 龙为花 29) 图2:ah第20帧单帧语音频谱图,窗长20ms, 帧移10ms,矩形窗和hamming窗,10k采样3 语音频域功率谱图clcclear allclose all%-load ah;fs=10000;x2=enf

7、rame(data, fs, 20, 0.5, boxcar);x1=enframe(data, fs, 20, 0.5, hamming);u1=x1(:,20); % 取得一帧数据u2=x2(:,20);N=1024;t=(0:N-1)/fs; y1=20*log10(fft(u1,N);y2=20*log10(fft(u1,N).2);f = (0: 511)*fs/1024;figure(1);plot(f,y1(1:512),b,LineWidth,1.5);%做原始语音信号的频谱hold on;plot(f,y2(1:512),r,LineWidth,1.5);%做原始语音信号的功

8、率谱 xlabel(Hz); ylabel(db);suptitle(电信 1405 龙为花 29) legend(汉明窗的频谱,汉明窗功率谱);z1=20*log10(fft(u2,N);z2=20*log10(fft(u2,N).2);figure(2);plot(f,z1(1:512),b,LineWidth,1);%做原始语音信号的频谱hold on;plot(f,z2(1:512),r,LineWidth,1);%做原始语音信号的功率谱 xlabel(Hz); ylabel(db);suptitle(电信 1405 龙为花 29) legend(矩形窗的频谱,矩形窗功率谱);图3:A

9、h 第20帧时域波形图,10k采样, 帧长20ms, hamming窗图4:Ah 第20帧时域波形图,10k采样, 帧长20ms, 矩形窗4 语谱图(1)clc clear close all x,fs=audioread(E:1.wav); m1=42230; m2=; x=x(m1:m2); win=0.01;inc=win/2; winlen=win.*fs; inclen=inc.*fs; amp1 = enframe(filter(1 -0.9375, 1, x),hamming(winlen), inclen); n=fix(length(x)-winlen+inclen)/inc

10、len); w=winlen/2+1; n2=1:w; freq=(n2-1)*fs/winlen; Y=fft(amp1); Yn=Y(n2,:);clf; frameTime=(1:n)*inclen; imagesc(frameTime,freq,20*log10(abs(Yn)+eps); axis xy; xlabel(时间 /s);ylabel(频率 /Hz); colormap(jet); suptitle(电信 1405 龙为花 29)图5:语音WHUT语谱图,10k采样(2)clc clear close all x,fs=audioread(E:1.wav); m1=422

11、30; m2=; x=x(m1:m2); win=0.04;inc=win/2; winlen=win.*fs; inclen=inc.*fs; amp1 = enframe(filter(1 -0.9375, 1, x),hamming(winlen), inclen); n=fix(length(x)-winlen+inclen)/inclen); w=winlen/2+1; n2=1:w; freq=(n2-1)*fs/winlen; Y=fft(amp1); Yn=Y(n2,:);clf; frameTime=(1:n)*inclen; imagesc(frameTime,freq,2

12、0*log10(abs(Yn)+eps); axis xy; xlabel(时间 /s);ylabel(频率 /Hz); colormap(jet); suptitle(电信 1405 龙为花 29)图64.2(1)clc clear close all load(should.mat); fs=10000; win=0.01;inc=win/2; winlen=win.*fs; inclen=inc.*fs; amp1 = enframe(filter(1 -0.9375, 1, data),hamming(winlen), inclen); n=fix(length(data)-winle

13、n+inclen)/inclen); w=winlen/2+1; n2=1:w; freq=(n2-1)*fs/winlen; Y=fft(amp1); Yn=Y(n2,:);clf; frameTime=(1:n)*inclen; imagesc(frameTime,freq,20*log10(abs(Yn)+eps); axis xy; xlabel(时间 /s);ylabel(频率 /Hz); colormap(jet); suptitle(电信 1405 龙为花 29)图7(2)clc clear close all load(should.mat); fs=10000; win=0.

14、04;inc=win/2; winlen=win.*fs; inclen=inc.*fs; amp1 = enframe(filter(1 -0.9375, 1, data),hamming(winlen),inclen); n=fix(length(data)-winlen+inclen)/inclen); w=winlen/2+1; n2=1:w; freq=(n2-1)*fs/winlen; Y=fft(amp1); Yn=Y(n2,:);clf; frameTime=(1:n)*inclen; imagesc(frameTime,freq,20*log10(abs(Yn)+eps);

15、axis xy; xlabel(时间 /s);ylabel(频率 /Hz); colormap(jet); suptitle(电信 1405 龙为花 29)图85 语音倒谱图clcclear allclose all%-load ah;fs=10000;x2=enframe(data, fs, 40, 0.5, boxcar);x1=enframe(data, fs, 40, 0.5, hamming);u1=x1(:,15); % 取得一帧数据u2=x2(:,15);y1=rceps(u1);y2=rceps(u2);figure(1);xlabel(Hz); ylabel(幅度);plot(y1,r);%做原始语音信号

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论