Bonjour,

pour ma méthode que j'essaye d'utiliser je dois combiner la connectivité floue avec l"algorithme de coupe de graphe ,l'idée se base sur l'utilisation des régions segmentées à partir de la connectivité floue comme des pixels germe pour la source et le puit pour la coupe de graphe

voici le code pour récupérer les coordonnées

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
FC=afc(S,K);%Absolute FC
 
    u=FC>thresh;
    v=FC<thresh;
 
   s=regionprops(u, 'PixelIdxList');%listes de pixels de l'objet
   t=regionprops(v, 'PixelIdxList');%listes de pixels de l'arrière plan
 
   [a,b]=size(s);
   [w,c,z]= size(t)
 
   for i=1:a
       for j=1:b
           [y,x] = ind2sub(size(u), s(i,j).PixelIdxList);
       end
   end
   for k=1:w
       for d=1:c
           [y1,x1] = ind2sub(size(v), t(k,d).PixelIdxList);
       end
   end
pour la coupe de graphe j'ai opté l'algorithme basé sur le flot max présent dans lien suivant http://www.mathworks.com/matlabcentr...v1.0/CMF_Cut.m

j'ai essayé de changer les variables Cs et Ct comme suit
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
 
Cs=-log([x y])
Ct=-log([x1 y1])
le problème c'est qu'on effectuant l'autre partie présente dans le code ,l'index va déborder la taille max de la matrice

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
u = double((Cs-Ct) >= 0);
ps = min(Cs, Ct);
pt = ps;
puisque [x y] et [x1 y1] n'ont pas la même taille

Si vous avez une idée à me proposé je vous serai gré