• 大小: 643KB
    文件类型: .rar
    金币: 1
    下载: 0 次
    发布日期: 2021-05-12
  • 语言: Matlab
  • 标签: 语音识别  

资源简介

基于MATLAB实现的说话人识别程序,分别用bp、pnn、som、rbf、lvq等算法

资源截图

代码片段和文件信息


clear;
num=15;

disp(‘正在计算识别模型...‘)
for i=1:num
   fname = sprintf(‘%ss%d.wav‘ ‘data\train\‘ i); 
   [s fs] = wavread(fname);
    v =mfcc(s fs); 
    [nm]=size(v);
    a=reshape(v1n*m);
    b=a(1:15);
ref(i).p = b;
    
end 
p=ref(1).p;
for i=1:num-1
    p=[p;ref(i+1).p];
end
T=[1 0 0 0 0 0 0 0 0 0 0 0 0 0 0;
   0 1 0 0 0 0 0 0 0 0 0 0 0 0 0;
   0 0 1 0 0 0 0 0 0 0 0 0 0 0 0;
   0 0 0 1 0 0 0 0 0 0 0 0 0 0 0;
   0 0 0 0 1 0 0 0 0 0 0 0 0 0 0;
   0 0 0 0 0 1 0 0 0 0 0 0 0 0 0;
   0 0 0 0 0 0 1 0 0 0 0 0 0 0 0;
   0 0 0 0 0 0 0 1 0 0 0 0 0 0 0;
   0 0 0 0 0 0 0 0 1 0 0 0 0 0 0;
   0 0 0 0 0 0 0 0 0 1 0 0 0 0 0;
   0 0 0 0 0 0 0 0 0 0 1 0 0 0 0;
   0 0 0 0 0 0 0 0 0 0 0 1 0 0 0;
   0 0 0 0 0 0 0 0 0 0 0 0 1 0 0;
   0 0 0 0 0 0 0 0 0 0 0 0 0 1 0;
   0 0 0 0 0 0 0 0 0 0 0 0 0 0 1
];

Pr=[min(p(1:))max(p(1:))];
for k=2:num
Pr=[Pr;min(p(k:))max(p(k:))];
end
p=p‘;
T=T‘;

%net=newff(Pr[162515]{‘tansig‘‘logsig‘‘purelin‘}‘traingdm‘);
%net.trainParam.show = 50;
%net.trainParam.lr = 0.05;
%net.trainParam.epochs = 10000;
%net.trainParam.goal = 1e-5;
%net =train(netpT);



%Y=sim(netp);

%yc=vec2ind(Y);
maxvalue=0;k=0;
disp(‘正在计算测试识别的结果...‘)
for i=1:num
   fname = sprintf(‘%ss%d.wav‘ ‘data\test\‘ i); 
   [s fs] = wavread(fname);
    v =mfcc(s fs); 
    [nm]=size(v);
    a_test=reshape(v1n*m);
    b_test=a_test(1:15);
    test(i).p_test = b_test;
    
end 
p_test=test(1).p_test;
for i=1:num-1
    p_test=[p_test;test(i+1).p_test];
end
p_test=p_test‘;
%Y_test=sim(netp_test);

[nbminbmaxbnaminamaxa]=premnmx(p_testp);

net=newff(Pr[2515]{‘tansig‘‘logsig‘}‘traingdm‘);
net=init(net);
net.trainParam.show = 50;
net.trainParam.lr = 0.2;
net.trainParam.epochs = 10000;
net.trainParam.goal = 1e-5;

 %[nm]=size(na);
  %na=reshape(na1n*m)
net=train(netnbna);
nc= sim(netnb);
c=postmnmx(ncminamaxa);

[ntestmintestmaxtest]=premnmx(p_test);
nnetout= sim(netntest);
netout=postmnmx(nnetoutmintestmaxtest);


real=p;


me=mean(real-netout)
st=std(netout-real)
save e:\mybiye\mymatlabsuoshi\rengongshenjingnetwork\wzy.txt c -ASCII;

%net=newff(minmax(p)[1015]{‘tansig‘‘logsig‘}‘traingdm‘);
%net.trainParam.show = 50;
%net.trainParam.lr = 0.05;
%net.trainParam.epochs = 100;
%net.trainParam.goal = 0.1;
%net=train(netpT);
%y= sim(netp);

%y_test= sim(netp_test);


%maxvalue=0;k=0;
%for m=1;num
    %for n=1:num
        %if (Y_test(nm)>maxvalue)
           % maxvalue=Y_test(nm);
           % k=n;
           %end
           %end
    %msg = sprintf(‘测试说话人 %d 和模板中的说话人 %d 匹配‘ m k);
    %disp(msg);
   %maxvalue=0;
   % k=0;
   %end


 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----

     文件      55244  2004-10-27 17:51  data\test\s1.wav

     文件      52044  2004-11-05 11:30  data\test\s10.wav

     文件      56844  2004-11-01 17:34  data\test\s11.wav

     文件      56044  2004-10-27 11:19  data\test\s12.wav

     文件      48044  2004-11-05 10:56  data\test\s13.wav

     文件      55244  2004-10-27 17:42  data\test\s14.wav

     文件      52844  2004-10-27 10:10  data\test\s15.wav

     文件      52844  2004-10-27 18:14  data\test\s2.wav

     文件      56044  2004-11-05 11:26  data\test\s3.wav

     文件      59244  2004-10-27 18:09  data\test\s4.wav

     文件      56844  2004-10-27 10:21  data\test\s5.wav

     文件      51244  2004-10-27 10:06  data\test\s6.wav

     文件      48844  2004-10-27 11:28  data\test\s7.wav

     文件      52844  2004-11-05 11:33  data\test\s8.wav

     文件      48044  2004-10-27 18:06  data\test\s9.wav

    ..AD...         0  2005-09-02 12:57  data\test

     文件      53644  2004-10-27 17:47  data\train\s1.wav

     文件      48844  2004-11-05 11:28  data\train\s10.wav

     文件      56844  2004-11-01 17:31  data\train\s11.wav

     文件      57644  2004-10-27 11:17  data\train\s12.wav

     文件      51244  2004-11-05 10:53  data\train\s13.wav

     文件      50444  2004-10-27 17:39  data\train\s14.wav

     文件      56044  2004-10-27 10:08  data\train\s15.wav

     文件      52044  2004-10-27 18:10  data\train\s2.wav

     文件      55244  2004-11-05 11:23  data\train\s3.wav

     文件      52044  2004-10-27 18:07  data\train\s4.wav

     文件      49644  2004-10-27 10:02  data\train\s5.wav

     文件      48044  2004-10-27 10:03  data\train\s6.wav

     文件      53644  2004-10-27 11:25  data\train\s7.wav

     文件      48044  2004-11-05 11:31  data\train\s8.wav

............此处省略22个文件信息

评论

共有 条评论