main.m

来自「patten regnization source从1-14章能运行」· M 代码 · 共 37 行

M
37
字号
clear all

traindata = cell(1,10);
for i=0:9
    temp = cell(1,3);%3疙 切嚼 
    for j=1:3
     fname = sprintf('%d%da.wav',i,j);
     x = wavread(fname);
     temp{1,j}=x';
   end
   traindata{1,i+1} = temp;
end

hmm = cell(1,10);
% train
for i = 1:length(traindata)
	sample = [];
	for k = 1:length(traindata{i})
		x = filter([1 -0.9375], 1, traindata{i}{k});
		sample(k).data = melcepst(x,16000,'M',12,24,256,80);
	end
	hmm{i}=train(sample,[3 3 3 3]);
end

% recognize
for i = 1:10
	fname = sprintf('%d1a.wav',i-1);
	x = wavread(fname);
	x = filter([1 -0.9375], 1, x);
	m = melcepst(x,16000,'M',12,24,256,80);
	for j = 1:10
		pout(j) = viterbi(hmm{j}, m);
	end
	[d,n] = max(pout);

    fprintf('word number %d is recognized as %d\n', i-1,n)
end

⌨️ 快捷键说明

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