Bonjour,
Je suis nouveau sur le forum et je suis coincé sur MATLAB
Je travaille sur image binarisé qui représente des porosité dans un matériaux
Pour illustrer, l'image que j'ai est du type :
1 2 3 4
| I = 0 0 1 0 1 0 1
0 1 0 1 0 1 0
0 0 0 0 0 0 1
1 0 1 0 1 1 0 |
Je souhaiterai créer un programme qui calcule la densité de porosité c'est à dire pour chaque point de l'image, calculer le nombre de 1 et le diviser par le nombre total.
Exemple avec une "boite d'étude de 3*3"
J(2,2) = (0+0+1+
0+1+0+
0+0+0)/9 = 0,22 soit 22%
J= 0,11 0,22 0,33 ...
0,11 0,22 0,33 ...
0,22 0,33 0,33 ...
...
Voila ce que j'ai fait actuellement:
1 2 3 4 5 6 7
| TX=3;
TY=TX;
for X = 1+TX:size(I,1)-TX;
for Y = 1+TY:size(I,2)-TY;
J(X-TX,Y-TY)= 100 - (sum(sum(I(X-TX:X+TX,Y-TY:Y+TY)))/((2*TX+1)*(2*TY+1))*100);
end
end |
Le résultat que j'obtiens n'est pas bon,
merci d'avance de bien vouloir m'aider!
PS: j'espère que mon problème est clair, n'hésiter pas à me dire si vous ne m'avaez pas compris
Partager