Bonjour,

Nous sommes étudiants en école d'ingénieur et nous avons un projet à réaliser comportant une interface Matlab GUI.

Nous devons donc transformé l'image initiale en image transformée grâce aux seuillages: kmeans, otsu ou Max entropy qui sont des méthodes de seuillage.
Pour ce faire nous avons donc programmé ces méthodes au préalable.

Exemple K-Means:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
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
img=imread('notre-image.bmp');%recherche l'image
seuil=mean(mean(img));
m1=0;
m2=0;
c1=[];
c2=[];
seuilbis=0
s=size(img);
while abs(seuilbis-seuil)>1
 
for i=1:s(1)
for j=1:s(2)
if img(i,j)<seuil
c1=[c1 img(i,j)]; 
else
c2=[c2 img(i,j)];
end
end
seuil=seuilbis;
end
m1=mean(c1);
m2=mean(c2);
seuilbis=(m1+m2)/2;
 
end
seuil
imbin=im2bw(img,seuil/255);
figure;
imshow(imbin);
Notre problématique est: Comment, en utilisant le bouton kmeans par exemple, utiliser l'image chargée (image initiale) dans le cadre de gauche (qui est un "axes1") et retourner dans le cadre de droite (axes2) notre image transformée ??

Si quelqu'un pourraît nous aider, ce serait vraiment sympathique