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:

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 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
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.
et merci