MATLAB语音预处理主体程序_第1页
MATLAB语音预处理主体程序_第2页
MATLAB语音预处理主体程序_第3页
全文预览已结束

下载本文档

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

文档简介

%语音读入global X T xx,fs,bits=wavread(4.wav); sound(x,fs,bits); T=1/fs;X=fft(x,4000);axes(handles.axes1),plot(x);title(原始信号时域图);xlabel(时间)ylabel(幅值)axes(handles.axes2),plot(abs(X); title(原始信号频谱图);xlabel(频率/Hz);ylabel(幅值);%预加重global x xx xx=double(x);xx=filter(1 -0.9375,1,xx);%通过一个一阶高通滤波器进行滤波XX=fft(xx,4000);%figure(2);axes(handles.axes3),plot(xx);title(预加重后信号波形);xlabel(时间)ylabel(幅值)axes(handles.axes4),plot(abs(XX);title(预加重后信号频谱);xlabel(频率/Hz);ylabel(幅值)分帧% 设定帧移和帧长step=st; framelength =fr;% 分帧后如果有结余,则补足最后一帧数据lengthOfTailPad = framelength - rem( length(xx),framelength); %求余数tailPad=xx(length(xx)-lengthOfTailPad+1:length(xx) );nf=fix(length(xx)-framelength+step)/step); %截尾取整 计算帧数sn=zeros(nf,framelength); %219*256indf=step*(0:(nf-1).;inds=(1:framelength); % 语音分帧u=indf(:,ones(1,framelength)+inds(ones(nf,1),:);%219*256fx=x(u);sn(:)= x(u);t=sn(:);%figure(3);axes(handles.axes5),plot(fx);title(分帧处理后的波形);xlabel(帧数);ylabel(幅值/n);f=fft(fx);axes(handles.axes6),plot(abs(f);title(分帧处理后的频谱图);xlabel(帧数);ylabel(幅值/n);%过零检测global xx fx fr st x nf%figure(5)nt=length(xx);fxx=abs(fx);avap=sum(fxx,2);axes(handles.axes7),plot(avap);title(短时能量波形);xlabel(帧数)ylabel(能量)N=fr;for i=1:nt-1 if xx(i)=0 b(i)=1; else b(i)=-1; end if xx(i+1)=0 b(i+1)=1; else b(i+1)=-1; end w(i)=abs(b(i+1)-b(i);endk=1;j=0;while (k+N-1)nt Zn(k)=0; for i=0:N-1 Zn(k)=Zn(k)+w(k+i); end j=j+1; k=k+N/2;%每次移动半个窗口end for w=1:j Q(w)=Zn(st*(w-1)+1)/(2*N);%短时

温馨提示

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

评论

0/150

提交评论