⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 wenjiansb.m

📁 语音处理平台 可以分析语音能量 第一振峰频率等数据
💻 M
字号:
%文件识别的实现
clc;

if fname~=0
disp('正在计算参考模板的参数...')
for i=1:10
	fn= sprintf('..\\DTW\\%dc.wav',i-1);
	x = wavread(fn);
	[x1 x2] = vad(x);
	m = mel(x);
	m = m(x1-2:x2-2,:);
	ref(i).mel = m;
end

disp('正在计算测试模板的参数...')
     i=1
  x=wavread(fname);
	[x1 x2] = vad(x);
	m = mel(x);
	m = m(x1-2:x2-2,:);
	test(i).mel = m;
    

disp('正在进行模板匹配...')
dist = zeros(10,10);
   i=1
for j=1:10
	dist(i,j) = dtw(test(i).mel, ref(j).mel);
end

disp('正在计算匹配结果...')

	[d,j] = min(dist(i,:));
	
    if j-1==0
             fname = sprintf('\\DTW\\0.wav');
             
              uicontrol('Style','text',...
              'Position',[230 10 340 270],...
              'String','识别结果为: 0 ',...
              'FontSize',20.,...
              'Callback',[]);
          
	         [s,fs] = wavread(fname);
             sound(s,fs);
             else if j-1==1
                    fname = sprintf('\\DTW\\1.wav');
              uicontrol('Style','text',...
              'Position',[230 10 340 270],...
              'String','识别结果为: 1 ',...
              'FontSize',20.,...
              'Callback',[]);
	                 [s,fs] = wavread(fname);
                     sound(s,fs);
                     else if j-1==2
                            fname = sprintf('\\DTW\\2.wav');
              uicontrol('Style','text',...
              'Position',[230 10 340 270],...
              'String','识别结果为: 2 ',...
              'FontSize',20.,...
              'Callback',[]);
                           [s,fs] = wavread(fname);
                           sound(s,fs);
                           else if j-1==3
                                   fname = sprintf('\\DTW\\3.wav');
              uicontrol('Style','text',...
              'Position',[230 10 340 270],...
              'String','识别结果为: 3 ',...
              'FontSize',20.,...
              'Callback',[]);
	                               [s,fs] = wavread(fname);
                                   sound(s,fs); 
                                      else if j-1==4
                                            fname = sprintf('\\DTW\\4.wav');
               uicontrol('Style','text',...
              'Position',[230 10 340 270],...
              'String','识别结果为: 4 ',...
              'FontSize',20.,...
              'Callback',[]);
	                                       [s,fs] = wavread(fname);
                                            sound(s,fs);
                                            else if j-1==5
                                                fname = sprintf('\\DTW\\5.wav');
              uicontrol('Style','text',...
              'Position',[230 10 340 270],...
              'String','识别结果为: 5 ',...
              'FontSize',20.,...
              'Callback',[]);
	                                            [s,fs] = wavread(fname);
                                                sound(s,fs); 
                                                 else if j-1==6
                                                       fname = sprintf('\\DTW\\6.wav');
              uicontrol('Style','text',...
              'Position',[230 10 340 270],...
              'String','识别结果为: 6 ',...
              'FontSize',20.,...
              'Callback',[]);
	                                                    [s,fs] = wavread(fname);
                                                        sound(s,fs);
                                                        else if j-1==7
                                                               fname = sprintf('\\DTW\\7.wav');
              uicontrol('Style','text',...
              'Position',[230 10 340 270],...
              'String','识别结果为: 7 ',...
              'FontSize',20.,...
              'Callback',[]);
	                                                           [s,fs] = wavread(fname);
                                                               sound(s,fs);
                                                                else if j-1==8
                                                                        fname = sprintf('\\DTW\\8.wav');
              uicontrol('Style','text',...
              'Position',[230 10 340 270],...
              'String','识别结果为: 8 ',...
              'FontSize',20.,...
              'Callback',[]);
	                                                                    [s,fs] = wavread(fname);
                                                                         sound(s,fs);
                                                                         else if j-1==9
                                                                               fname = sprintf('\\DTW\\9.wav');
              uicontrol('Style','text',...
              'Position',[230 10 340 270],...
              'String','识别结果为: 9 ',...
              'FontSize',20.,...
              'Callback',[]);
	                                                                           [s,fs] = wavread(fname);
                                                                                sound(s,fs);
                                                                          end 
                                                                   end
                                                          end
                                                 end
                                        end
       
                              end 
                      end
                end
         end
 end
else return;
end;

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -