bonjour,

j'ai une erreur dans mon code et je ne comprend pas le problème cela viendrais de mon && dans la ligne en rouge mais pourtant avant cela marche quelqu'un peux m'aider SVP Merci

Operands to the || and && operators must be convertible to logical scalar values.
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
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
61
clc
%charger une image dcm
 IM = fileparts(mfilename('fullpath'));
[filename,pathname]=uigetfile({'*.*','All Files' },'Choisir le fichier dicom ');

%lire fichier dicom
[A,map]= dicomread(strcat(pathname,filename));

% %ajuster les couleurs
I=imadjust(A);
figure,imshow(I)
%convertion en double precision
I=double(I)/255; 
%getpts permet de choisir un ensemble de points sur l'image a laide de la souris.
%Coordonnées des points sélectionnés sont retournés dans X et Y
[y,x]=getpts; 
%arrondit a un entier
y1=round(x);              
x1=round(y);              
%taille de l'image
[M,N]=size(I); 

stack=[y1,x1];               
suit=1;    
%matrice de zeros de M*N
Y=zeros(M,N);                 
Y(y1,x1)=1; 
count=1;                    
threshold=0.05555;           
sum=I(y1,x1);               
adaptM=stack(1,1); 
adaptN=stack(1,2); 
greyvalue=I(adaptM,adaptN); 

while suit>0 
    adaptM=stack(1,1); 
    adaptN=stack(1,2); 
     
    for u=-1:1
        for v=-1:1
            if adaptM+u<(M+1) && adaptN+u>0 && adaptN+v<(N+1) && adaptN+v>0
                if abs(I(adaptM+u,adaptN+v)-greyvalue)<=threshold && Y(adaptM+u,adaptN+v)==0
                    suit=suit+1;
                    stack(suit,1)=(adaptM+u);
                    stack(suit,2)=(adaptN+v);
                    Y(adaptM+u,adaptN+v)=1;
                    count=count+1;
                    sum=sum+I(adaptM+u,adaptN+v);
                end
            end
        end
    end
    greyvalue=sum/count;                             
       
       
 stack=stack(2:1:suit,:);                             
 suit=suit-1;                                        
   
 end       
       
figure,imshow(Y)