1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60
|
I=imread('68JP.jpg');
figure(1),imshow(I);
I=imcrop; %sélectionner une portion de l'image
I2=imresize(I,[60,60],'bilinear'); %minimiser la taille de l'image
figure(3),imshow(I2);
C=mat2cell(I2,[15,15,15,15],[15,15,15,15]);
size(C);
mat=zeros(15,15);
result=cell(4);
nbmat=16;
n=1;m=1;
for i=1:4
for j=1:4
s=cell2mat(C(i,j));
moyen=mean(mean(s));
s1=im2double(s);
ecart=std(std(s1));
seuil = moyen *(1 + (1/10)*( 1-( ecart / 128) ));
for k=1:15
for l=1:15
if(s(k,l)<=seuil) %si le pixel inf ou egal à seuil il devient noir
mat(k,l)=0;
end
if(s(k,l)>seuil) %si le pixel sup ou egal à seuil il devient blanc
mat(k,l)=255;
end
end
end
%tant que le nombre de matrice mat (à introduire dans chaque cellule) est supérieur ou = à 1, remplir chaque cellule par la matrice mat convenable
while nbmat>=1
result{n,m}=mat;
break;
end
nbmat=nbmat-1;
m=m+1;
if(nbmat==12)
n=2;
m=1;
end
if (nbmat==8)
n=3;
m=1;
end
if(nbmat==4)
n=4;
m=1;
end
end
end
disp(result);
figure(8), imshow(result); |
Partager