cs_Titeuf007
Messages postés8Date d'inscriptionlundi 14 avril 2003StatutMembreDernière intervention 2 novembre 2006
-
2 nov. 2006 à 11:14
miriam123
Messages postés1Date d'inscriptionlundi 25 février 2008StatutMembreDernière intervention11 avril 2008
-
11 avril 2008 à 02:15
Bonjour à tous,
Je cherche à calculer la rapport de correlation ("correlation ratio") entre 2 images I et J (256 niveaux de gris).
Ce que j'ai fait :
1 - je calcule l'histogramme de l'image I (noté hI) et je le normalise donc j'ai hI(i) = probabilité d'avoir le niveau de gris i dans l'image I ;2 - je calcule la moyenne de l'image I (noté mI), mI somme(i 1 à 256) i * hI(i) ;3 - je calcule la variance de l'image I (noté sigmaI²), sigmaI² (somme(i 1 à 256) i^2 * hI(i) ) - mI ;
4 - je calcule l'histogramme de l'image J (noté hJ) et je le normalise donc
j'ai hJ = probabilité d'avoir le niveau de gris j dans l'image J ;5 - je calcule la moyenne de l'image J (noté mJ), mJ somme(j 1 à 256) j * hJ(j) ;
6 - je calcule l'histogramme joint de I et J (noté hIJ) et je le normalise donc j'ai hIJ(i, j) = probabilité ;
7 - code matlab qui calcule le rapport de corrélation :
sigmaIj = 0;
for j = 1 : 1 : 256
pj = hJ(j);
i2pij = 0;
for i = 1 : 1 : 256
i2pij = i2pij + i^2*hIJ(i,j);
end
if(pj~=0)
sigIj = sigIj + (pj *((1/pj)*i2pij)-mJ^2);
end
end
CR = 1- (1/sigI2)*sigIj;
Je pense que je n'ai pas bien compris la définition du rapport de corrélation et du coup mon implémentation est fausse. Si quelqu'un peut m'éclairer... Merci