IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Images Discussion :

Reconnaissance de forme


Sujet :

Images

  1. #1
    Membre éprouvé Avatar de anisj1m
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Juillet 2006
    Messages
    1 067
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : Tunisie

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juillet 2006
    Messages : 1 067
    Points : 955
    Points
    955
    Par défaut Reconnaissance de forme
    Bonjour;
    je voudrais connaître une méthode pour faire de la reconnaissance de forme par Matlab.
    Mon problème est : en entrée j'ai une image et je voudrais avoir en sortie ses composantes . Par exemple : "cette image contient une cercle et un rectangle".
    Merci beaucoup de bien vouloir m'aider.
    Ce qu'on appelons le hasard n'est que notre incapacité à comprendre un degré d'ordre supérieur.

  2. #2
    Membre éclairé
    Avatar de Kangourou
    Profil pro
    Inscrit en
    Mars 2003
    Messages
    579
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2003
    Messages : 579
    Points : 859
    Points
    859
    Par défaut
    La reconnaissance de formes est un probleme qui n'est ni simple nin generique, trouver une methode universelle est donc un peu illusoire...

    Cela dit il y a quelques outils de base :
    - bien maitriser les fonctions de la BAO image processing, en particulier les fonctions de filtres (imfilter), qui permettent (entre autres) de mettre en valeurs les bords des objets dans l'image de depart
    - utiliser des contours actifs ou des lignes de partage des eaux pour extraire les regions correspondant a chaque objet
    - trouver/developper des fonction de fitting de la primitive geometrique (rectangle ou cercle ou courbe polynomiale ou autre) en fonction de points detectes dans l'image
    - ou alors utiliser des algorithme du type transformee de hough pour avoir le centre des cercles de l'image

    voila, ce sont des reponses generale, mais je crois que la question l'est aussi.

    A+

  3. #3
    Membre éprouvé Avatar de anisj1m
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Juillet 2006
    Messages
    1 067
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : Tunisie

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juillet 2006
    Messages : 1 067
    Points : 955
    Points
    955
    Par défaut il est general mais en peut le raffiner
    je vous remercie tres beaucoup kangourou pour ton presieuse aide ,

    moi j'ai un projet qui est : j'ai un ensemble d'objet ,generalement dans des images , qui sont representer par des attribues geometriques et radiometriques , et je doit detectes les objets de ses images en generant des hypotheses sur ses objet a l'aide des fonction matlab.


    merci tres infiniment maintenant je peut savoir d'ou je partirais dans mon projet , les filtres
    merciii
    Ce qu'on appelons le hasard n'est que notre incapacité à comprendre un degré d'ordre supérieur.

  4. #4
    Membre éprouvé Avatar de anisj1m
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Juillet 2006
    Messages
    1 067
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : Tunisie

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juillet 2006
    Messages : 1 067
    Points : 955
    Points
    955
    Par défaut
    - j'ai compris le premier pas (les filtres ) et j'ai bien debuter merci beaucoup ; mais j'ai trouver un

    problem :
    je n'est pas compris la deuxieme point qui est :

    - utiliser des contours actifs ou des lignes de partage des eaux pour extraire les regions

    correspondant a chaque objet

    est ce que je doit utiliser les fonctions contour en matlab ? car moi je sait que ses fonctions

    permer de dessiner mais non pas d'extraire les region pouvez vous m'indiquer quelque fonction
    et merci infiniment ...
    Ce qu'on appelons le hasard n'est que notre incapacité à comprendre un degré d'ordre supérieur.

  5. #5
    Membre à l'essai
    Inscrit en
    Février 2004
    Messages
    19
    Détails du profil
    Informations forums :
    Inscription : Février 2004
    Messages : 19
    Points : 15
    Points
    15
    Par défaut
    Salut dans ce meme contexte y'a t il une fonction ou une procedure sous Matlab qui permet de calculer le rayon d'un cercle?
    Merci
    Salut

  6. #6
    Expert confirmé
    Avatar de tug83
    Homme Profil pro
    MATLAB Geek !
    Inscrit en
    Juin 2006
    Messages
    1 781
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : France, Alpes de Haute Provence (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : MATLAB Geek !
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juin 2006
    Messages : 1 781
    Points : 4 039
    Points
    4 039
    Par défaut
    Citation Envoyé par yacine mezzi
    Salut dans ce meme contexte y'a t il une fonction ou une procedure sous Matlab qui permet de calculer le rayon d'un cercle?
    Merci
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    function h = circle(x,y,r)
     
    hold on
    th = 0:pi/50:2*pi;
    xunit = r * cos(th) + x;
    yunit = r * sin(th) + y;
    h = plot(xunit, yunit);
    hold off
    ou
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    function h = circle2(x,y,r)
    d = r*2;
    px = x-r;
    py = y-r;
    h = rectangle('Position',[px py d d],'Curvature',[1,1]);
    daspect([1,1,1])
    MATLAB 8.2 (R2013b)

    le blog des MATLAB geeks

  7. #7
    Membre éprouvé
    Avatar de rostomus
    Homme Profil pro
    Doctorant électronique et traitement du signal
    Inscrit en
    Décembre 2006
    Messages
    791
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France

    Informations professionnelles :
    Activité : Doctorant électronique et traitement du signal

    Informations forums :
    Inscription : Décembre 2006
    Messages : 791
    Points : 1 205
    Points
    1 205
    Par défaut
    Citation Envoyé par anisj1m
    est ce que je doit utiliser les fonctions contour en matlab ? car moi je sait que ses fonctions

    permer de dessiner mais non pas d'extraire les region pouvez vous m'indiquer quelque fonction
    et merci infiniment ...
    Bonjour,
    Je connais quelques trucs pour pouvoir extraire des region,mais je ne sais pas si ca va vous aider.
    - rendre d'abord l'image en binaire im2bw
    - etiqueter les regions en utilisant bwlabel
    un exemple de code:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
     
    x=imread('..............');
    level=graythresh(x);
    bw=im2bw(x,level);
    L=bwlabel(bw);
    reg=regionprops(L,'Centroid');
    imshow(x);hold on
    for i=1:length(reg)
         plot(reg(i).Centroid(1) , reg(i).Centroid(2),'*')
    end
    MATLAB 7.4 (R2007a) WIN XP SP2
    -------------------------------------

  8. #8
    Membre éprouvé
    Avatar de rostomus
    Homme Profil pro
    Doctorant électronique et traitement du signal
    Inscrit en
    Décembre 2006
    Messages
    791
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France

    Informations professionnelles :
    Activité : Doctorant électronique et traitement du signal

    Informations forums :
    Inscription : Décembre 2006
    Messages : 791
    Points : 1 205
    Points
    1 205
    Par défaut
    Citation Envoyé par yacine mezzi
    Salut dans ce meme contexte y'a t il une fonction ou une procedure sous Matlab qui permet de calculer le rayon d'un cercle?
    Merci
    Je vous propose la même méthode que j'ai proposé à anisj1m, sauf que vous devez ajouter à la fonction regionprops l'option 'EquivDiameter' et l'afficher quelque part:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    reg=regionprops(L,'Centroid','EquivDiameter');
    pour y acceder:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    reg(k).EquivDiameter
    MATLAB 7.4 (R2007a) WIN XP SP2
    -------------------------------------

Discussions similaires

  1. Reconnaissance de forme par réseau neuronal
    Par Rémiz dans le forum Méthodes prédictives
    Réponses: 34
    Dernier message: 28/05/2007, 16h41
  2. Reconnaissance de "forme" sur une fonction
    Par Nemerle dans le forum Traitement du signal
    Réponses: 13
    Dernier message: 20/10/2006, 11h23
  3. reconnaissance de formes dans un Fichier Avi
    Par renovator dans le forum C++Builder
    Réponses: 1
    Dernier message: 05/07/2006, 09h40
  4. [MasterPage] Reconnaissance de Form
    Par Kylen dans le forum ASP.NET
    Réponses: 8
    Dernier message: 04/07/2006, 15h33
  5. Algos pour reconnaissance de formes
    Par Laurent Gomila dans le forum Algorithmes et structures de données
    Réponses: 14
    Dernier message: 09/12/2005, 10h34

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo