Bonjour
J'ai le même problème , je dispose de deux classes de son (femmes ,Hommes),j'utilise pour l'apprentissage la fonction MFCC (pour chaque son j'ai 24 coefficients *nombre de fenêtre),je dois remplir un fichier texte pour faire le test par la Libsvm mais je sais pas comment réduire les matrices MFCC par un seul vecteurs voici ci joint mon code ,j'apprécie votre aide .
class(1).list=['M01';'M02';'M03';'M04';'M05';'M06';'M07';'M08';'M09';'M10';'M11';'M12'];
class(2).list=['W01';'W02';'W03';'W04';'W05';'W06';'W07';'W08';'W09';'W10';'W11';'W12'];
repertoire='./data/Pure/';
frame = 1024;
hamwin=hamming(frame);
X1 =[];
X2 =[];
disp('Phase d apprentissage')
X2=[];
%calclul des coefficients mfcc
k=1;
for l=1:2
numer=class(k).list(l,: );
nomfichier=[repertoire numer]
[y,fs] = wavread(nomfichier);
for i=1:frame:length(y)-frame % 50%
s=y(i:i+frame-1).*hamwin;
rand('state',1);
X1= mfcc(y,fs,24);
X2=[X2 X1];
fid = fopen('apre.txt','w');
fprintf (fid,'1 %i\t %i\t %i\t %i\t %i\t %i\t %i\t %i\t %i\t %i\t %i\t %i\n',X2');
end
end
Partager