Probleme detection des contours matlab

onetarik Messages postés 8 Statut Membre -  
 ledarou -
Bonjour,
j'ai un probleme lorsque je veux utilisé la fonction 'edge' sur matlab pour la detection des contours
la lecture de l'image se fait normalement mais a l'appelle de edge il me donne l'erreur suivante:

>> I=imread('RADIO.png');
>> BW1= edge(I,'sobel');
??? Error using ==> iptcheckinput
Function EDGE expected its first input, I, to be two-dimensional.

Error in ==> edge>parse_inputs at 564
iptcheckinput(I,{'numeric'},{'nonsparse','2d'},mfilename,'I',1);

Error in ==> edge at 197
[a,method,thresh,sigma,thinning,H,kx,ky] = parse_inputs(varargin{:});

Si kelk 1 peut 'aider c urgent
merci
Configuration: Windows Vista
Firefox 3.0.8

2 réponses

  1. minimoi
     
    Salut ,

    je ne fais que passer. Vu que ton sujet date, tu l'as peut être déjà résolu.

    Il faut que ton image soit en niveau de gris donc tu fais:

    I=imread('RADIO.png');
    Im=im2gray(I);
    BW1= edge(Im,'sobel');

    et ca devrait être bon

    voila
    2
  2. ledarou
     
    im2gray n'existe pas (dans la librairie standard que j'ai en tout cas) il faut mettre rgb2gray et là ca fonctionne ;)

    I=imread('RADIO.png');
    Im=rgb2gray(I);
    BW1= edge(Im,'sobel');
    1