Bonsoir donc voila dans mon programme je recupere des echantillons d'image, puis je calcul la moyenne et la covariance
pour la covariance je transforme dabord ma matrice en vecteur affin que le resultat de la covariance soit un seul element
mais j'obtien un message d'erreur
donc voici mon programme:
et voici mon erreur delivré par Matlab:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12 Z1=imcrop(Z0); [N1,M1,K1]=size(Z1); Pix1=N1*M1; Z11=Z1(:,:,1); Z12=Z1(:,:,2); Z13=Z1(:,:,3); moy1 = mean([mean(mean(Z11)) mean(mean(Z12)) mean(mean(Z13))]) Y11=reshape(Z11,1,Pix1); Y12=reshape(Z12,1,Pix1); Y13=reshape(Z13,1,Pix1); cov1 = mean([cov(Y11) cov(Y12) cov(Y13)]); Prob1=Pix1/Pix0;
et merci
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14 moy1 = 155.4033 ??? Error using ==> minus Integers can only be combined with integers of the same class, or scalar doubles. Error in ==> cov at 64 xc = x - repmat(sum(x)/m,m,1); % Remove mean Error in ==> ttt2 at 38 cov1 = mean([cov(Y11) cov(Y12) cov(Y13)]); ??? Error while evaluating uimenu Callback.
Partager