DTW语音识别算法(部分).docx

DTW语音识别算法(部分).docx

ID:51673449

大小:17.15 KB

页数:10页

时间:2020-03-14

DTW语音识别算法(部分).docx_第1页
DTW语音识别算法(部分).docx_第2页
DTW语音识别算法(部分).docx_第3页
DTW语音识别算法(部分).docx_第4页
DTW语音识别算法(部分).docx_第5页
资源描述:

《DTW语音识别算法(部分).docx》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、附录2:训练函数:train.mdisp('正在生成训练参数……');fori=1:20fname=sprintf('train\%d0.wav',i);[k,fs]=audioread(fname);[StartPoint,EndPoint]=vad_m(k,fs);cc=mfcc(k);cc=cc(StartPoint-2:EndPoint-2,:);ref(i+1).StartPoint=StartPoint;ref(i+1).EndPoint=EndPoint;ref(i+1).mfcc=cc;enddisp('正在存储模板库…

2、…');save'mfcc.mat'ref;disp('存储完毕')附录3:测试函数:dtwtest.mclear;closeall;clc;disp('正在导入参考模板参数...');loadmfcc.mat;disp('正在计算测试模板的参数...')fori=0:3fname=sprintf('test\%d1.wav',i);[k,fs]=audioread(fname);[StartPoint,EndPoint]=vad_m(k,fs);cc=mfcc(k);cc=cc(StartPoint-2:EndPoint-2,:);t

3、est(i+1).StartPoint=StartPoint;test(i+1).EndPoint=EndPoint;test(i+1).mfcc=cc;enddisp('正在进行模板匹配...')dist=zeros(1,20);fori=1:4forj=1:20dist(i,j)=dtw(test(i).mfcc,ref(j).mfcc);endenddisp('正在计算匹配结果...')fori=1:4[d,j]=min(dist(i,:));if(j>=1&&j<=5)fprintf('测试模板%d1.wav的识别结果为:前进

4、',i-1);endif(j>=6&&j<=10)fprintf('测试模板%d1.wav的识别结果为:停止',i-1);endif(j>=11&&j<=15)fprintf('测试模板%d1.wav的识别结果为:左转',i-1);endif(j>=16&&j<=20)fprintf('测试模板%d1.wav的识别结果为:右转',i-1);endendcloseall;附录4:特征提取函数:vad_m.mfunction[StartPoint,EndPoint]=vad(k,fs)%%[StartPoint,EndPoint]

5、=vad(k,fs)%%语音信号端点检测程序,k为语音信号,%%fs为其采样频率,程序绘制出语音信号%%相关波形图并返回起止端点所对帧号closeall%幅度归一化到[-1,1]k=double(k);k=k./max(abs(k));%------------------------------%显示波形%------------------------------SNR=5;%设置SNRsignal=Gnoisegen(k,SNR);%叠加噪声snr1=SNR_singlech(k,signal);%计算叠加噪声后的信噪比N=leng

6、th(k);%信号长度t=(0:N-1)/fs;%设置时间IS=.25;%设置IS%调用WienerScalart96m_2函数做维纳滤波output=WienerScalart96m_2(signal,fs,IS,0.12);ol=length(output);%把output补到与x等长ifol

7、%5.4f',snr1,snr2,snr);subplot311;plot(t,k,'k');grid;axistight;title('纯语音波形');ylabel('幅值')subplot312;plot(t,signal,'k');grid;axistight;title(['带噪语音信噪比='num2str(SNR)'dB']);ylabel('幅值')subplot313;plot(t,output,'k');grid;ylim([-11]);title('维纳滤波后波形');ylabel('幅值');xlabel('时间/

8、s');disp('显示原始波形图……');t=0:1/fs:(length(k)-1)/fs;%subplot(3,1,1);plot(t,k);axis([0,(length(k)-1)/

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。