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

Traitement d'images Discussion :

Traitement d'image C++ : détection de droites sur une photo


Sujet :

Traitement d'images

  1. #1
    Membre à l'essai
    Profil pro
    Inscrit en
    Juin 2007
    Messages
    30
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Juin 2007
    Messages : 30
    Points : 23
    Points
    23
    Par défaut Traitement d'image C++ : détection de droites sur une photo
    Bonjour,

    je cherche un algorithme efficace pour détecter des droites sur une photo.
    J'ai cherché sur le net et j'ai vu qu'il existe l'algorithme de Hough. Est-ce le meilleur ? Si oui, où puis-je trouver une version pour le compilateur visual C++?

    Merci d'avance

  2. #2
    Rédacteur
    Avatar de pseudocode
    Homme Profil pro
    Architecte système
    Inscrit en
    Décembre 2006
    Messages
    10 062
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 51
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Architecte système
    Secteur : Industrie

    Informations forums :
    Inscription : Décembre 2006
    Messages : 10 062
    Points : 16 081
    Points
    16 081
    Par défaut
    Hough est l'algo le plus généraliste.

    Donc, en l'absence d'info "spécifique" a l'image qui permettrait de faire un algo "spécialement adapté", la réponse est: OUI c'est le meilleur. (avis personnel)

    Pour une implementation C++, je te conseille de prendre une libraire. Par exemple CIMG. Un exemple d'utilisation de Hough est fourni sur le site.
    ALGORITHME (n.m.): Méthode complexe de résolution d'un problème simple.

  3. #3
    Expert éminent
    Avatar de PRomu@ld
    Homme Profil pro
    Ingénieur de Recherche
    Inscrit en
    Avril 2005
    Messages
    4 155
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : France, Vienne (Poitou Charente)

    Informations professionnelles :
    Activité : Ingénieur de Recherche
    Secteur : Enseignement

    Informations forums :
    Inscription : Avril 2005
    Messages : 4 155
    Points : 6 486
    Points
    6 486
    Par défaut
    Afin de faire ton choix dans les différentes bibliothèques qui existent, tu peux consulter ce thread :

    http://www.developpez.net/forums/sho...d.php?t=327261

  4. #4
    Membre à l'essai
    Profil pro
    Inscrit en
    Juin 2007
    Messages
    30
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Juin 2007
    Messages : 30
    Points : 23
    Points
    23
    Par défaut
    En fait, j'ai essayé d'installer ITK et openCV mais c'est pas vraiment simple vu que je suis débutant.
    Pour openCV, j'ai tout installé et j'ai testé avec un exemple tout fait. Ca marche mais les exemples sont écrit en mode console. Je voudrais en fait travailler en mode MFC.
    Je vais essayer CImg. Est-ce plus facile d'utilisation? Peut-on travailler en MFC avec? Existe-t-il un bon tutorial car sur le net je ne trouve pas grand chose de bien expliqué...

    Merci d'avance

  5. #5
    Membre actif
    Profil pro
    Inscrit en
    Juin 2006
    Messages
    385
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2006
    Messages : 385
    Points : 288
    Points
    288
    Par défaut
    bojour,


    opencv et la MFC marche tres bien, où est le probleme ?
    « Aucun homme ne peut rien vous révéler sinon ce qui repose déjà à demi endormi dans l'aube de votre connaissance»

    « No man can reveal to you aught but that which already lies half asleep in the dawning of your knowledge »_(¯`·.__-Alg3ri4nH4ck3r-__.·´¯)_

  6. #6
    Membre à l'essai
    Profil pro
    Inscrit en
    Juin 2007
    Messages
    30
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Juin 2007
    Messages : 30
    Points : 23
    Points
    23
    Par défaut
    Quand j'ouvre openCV avec Visual Studio, j'ai une solution avec 10 projets: cv, cvaux, cvinfo, cvsample, cvtest, cxcore, cxcoretest, cxts, highgui et ml.

    Comment je dois faire à partir de la pour ouvrir un projet MFC?
    Je ne sais pas où écrire mon programme principal...

  7. #7
    Membre actif
    Profil pro
    Inscrit en
    Juin 2006
    Messages
    385
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2006
    Messages : 385
    Points : 288
    Points
    288
    Par défaut
    ah ok,

    dans ce cas la tu va créer un projet genre boite de dialogue, tu va ajouter un control ( bouton ) et pou gerer l'evenement click tu ajoute directement tes fonctions opencv dans le corp de la méthode :

    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
     
     
    void CVideo_timerDlg::Start() 
    {
    	// TODO: Add your control notification handler code here
     
         	frame = cvQueryFrame( capture );  //Ask for the frames in loop
            if( !frame )
              exit(0);          
            cvCopy(frame,actual);
    		actual->origin = frame->origin;
     
    	    OnPaint(); 
     
     
    }
     
     
    void CVideo_timerDlg::Init() 
    {
     
        frame = 0;
    	actual = 0;
        capture = 0;
     
    	capture = cvCaptureFromCAM( -1 );
     
        if( !capture )
        {
            fprintf(stderr,"Could not initialize capturing...\n");
     
        }
     
    	frame = cvQueryFrame( capture );
     
    	preview.Create(frame->width,frame->height,24);
     
    	actual=preview.GetImage();
     
    }
    « Aucun homme ne peut rien vous révéler sinon ce qui repose déjà à demi endormi dans l'aube de votre connaissance»

    « No man can reveal to you aught but that which already lies half asleep in the dawning of your knowledge »_(¯`·.__-Alg3ri4nH4ck3r-__.·´¯)_

  8. #8
    Membre actif
    Profil pro
    Étudiant
    Inscrit en
    Mars 2007
    Messages
    219
    Détails du profil
    Informations personnelles :
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mars 2007
    Messages : 219
    Points : 226
    Points
    226
    Par défaut
    Salut,

    Je viens de finir mon stage durant lequel j'ai fait un logiciel de traitement d'images en C++ avec MFC et CImg.

    Pour faire un nouveau projet, fait nouveau projet MFC et un simple #include <CImg.h>

Discussions similaires

  1. Modifier menu clic droit sur une image
    Par humitake dans le forum Général JavaScript
    Réponses: 4
    Dernier message: 06/05/2011, 18h27
  2. dessinner une droite sur une image
    Par sebac dans le forum Général JavaScript
    Réponses: 8
    Dernier message: 03/03/2010, 12h34
  3. interdire le clic droit sur une image?
    Par bylka dans le forum Général JavaScript
    Réponses: 5
    Dernier message: 19/03/2009, 16h24
  4. déterminer l'orientation de droite sur une image
    Par emboss dans le forum Images
    Réponses: 2
    Dernier message: 10/06/2008, 18h54

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