compare_dtw.m
上传用户:ay_070428
上传日期:2014-12-04
资源大小:11427k
文件大小:1k
源码类别:

语音合成与识别

开发平台:

Matlab

  1. function minDistance = compare_dtw(wavefile)
  2. %COMPARE_DTW : compare two feature parameters using dtw method
  3. %If test pattern are not only one, for instance, it maybe 1 3 7 etc,
  4. %then split parameter for each pattern using a variable, region_set
  5. [parameter1 , region_set] = feature_extrac(wavefile);
  6. database      = textread('train_user.txt','%s');
  7. database_size = size(database,1);
  8. SingerName    = textread('singer.txt','%s');
  9. data_num      = size(SingerName,1);
  10. minDistance   = [];
  11. for k = 1 : database_size,
  12.    minDistTemp = [];
  13.    for i = 1 : data_num,
  14.       databaseName = ['matdirtraindatasinger' database{k} '' num2str(i) '.mat'];
  15.       eval(['load ' databaseName]);
  16.       [temp unused]= dtwasr(parameter1,parameter,2);
  17.       minDistTemp  = [minDistTemp temp];
  18.    end;
  19.    minDistance = [minDistance ; minDistTemp];
  20. end;
  21. %save test.mat parameter1, it is for plotting comparsion figure.
  22. %save test.mat parameter1