correction d'erreurs sur le PMC
This commit is contained in:
parent
918a7fb73a
commit
6762d2c15d
1 changed files with 24 additions and 28 deletions
|
@ -15,8 +15,30 @@ vecteurs=zeros(2*(cmax-cmin+1),dataset_size); %TODO: renommer en vectors
|
||||||
|
|
||||||
classes = []; %colonne [avance; arret; gauche; droite; rejet]
|
classes = []; %colonne [avance; arret; gauche; droite; rejet]
|
||||||
|
|
||||||
for k=1:dataset_size %instanciation des valeurs des classes pour le training
|
% c'est lent
|
||||||
deb = dataset(k).name(1:2);
|
% s'assurer que l'on choisit toutes les images
|
||||||
|
%
|
||||||
|
for n=1:dataset_size
|
||||||
|
% choix d'une image aleatoire
|
||||||
|
choix = 1 + floor(dataset_size*rand(dataset_size, 1));
|
||||||
|
% extraction de l'image du dataset
|
||||||
|
image = dataset(choix(1));
|
||||||
|
% lecture de l'image
|
||||||
|
img = imread([image.folder '/' image.name]);
|
||||||
|
% filtrage de la couleur de la peau
|
||||||
|
binary = rgb_filter(img, threshold);
|
||||||
|
% determination du contour
|
||||||
|
c = contourc(binary);
|
||||||
|
% Determination du contour de taille max
|
||||||
|
cont = max_contour(c);
|
||||||
|
% transformation en signal complexe
|
||||||
|
z = cont(:,1) + 1i*cont(:,2);
|
||||||
|
% calcul des descripteurs de Fourier
|
||||||
|
[coeff,ncoeff]=descripteurfouriernorm(z,cmax);
|
||||||
|
% Extraction des composantes
|
||||||
|
vecteurs(:,n)=[real(coeff);imag(coeff)];
|
||||||
|
% Ajout de la classe correspondante
|
||||||
|
deb = dataset(choix(1)).name(1:2);
|
||||||
if deb == 'av'
|
if deb == 'av'
|
||||||
classes = [classes , [1;0;0;0;0]];
|
classes = [classes , [1;0;0;0;0]];
|
||||||
elseif deb == 'ar'
|
elseif deb == 'ar'
|
||||||
|
@ -28,32 +50,6 @@ for k=1:dataset_size %instanciation des valeurs des classes pour le training
|
||||||
elseif deb == 're'
|
elseif deb == 're'
|
||||||
classes = [classes , [0;0;0;0;1]];
|
classes = [classes , [0;0;0;0;1]];
|
||||||
end
|
end
|
||||||
end
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
% c'est lent
|
|
||||||
% s'assurer que l'on choisit toutes les images
|
|
||||||
%
|
|
||||||
for n=1:dataset_size
|
|
||||||
% choix d'une image aléatoire
|
|
||||||
choix = 1 + floor(dataset_size*rand(dataset_size, 1));
|
|
||||||
% extraction de l'image du dataset
|
|
||||||
image = dataset(choix(1));
|
|
||||||
% lecture de l'image
|
|
||||||
img = imread([image.folder '/' image.name]);
|
|
||||||
% filtrage de la couleur de la peau
|
|
||||||
binary = rgb_filter(img, threshold);
|
|
||||||
% détermination du contour
|
|
||||||
c = contourc(binary);
|
|
||||||
% Détermination du contour de taille max
|
|
||||||
cont = max_contour(c);
|
|
||||||
% transformation en signal complex
|
|
||||||
z = cont(:,1) + 1i*cont(:,2);
|
|
||||||
% calcul des descripteurs de Fourrier
|
|
||||||
[coeff,ncoeff]=descripteurfouriernorm(z,cmax);
|
|
||||||
% Extraction des composantes
|
|
||||||
vecteurs(:,n)=[real(coeff);imag(coeff)];
|
|
||||||
% affichage de l'avancement
|
% affichage de l'avancement
|
||||||
disp(n/dataset_size);
|
disp(n/dataset_size);
|
||||||
end
|
end
|
||||||
|
|
Loading…
Reference in a new issue