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

OpenCV Discussion :

Rectangle d'aire minimum cvMinAreaRect2


Sujet :

OpenCV

  1. #1
    Candidat au Club
    Femme Profil pro
    informatique
    Inscrit en
    Février 2012
    Messages
    1
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 34
    Localisation : France, Charente (Poitou Charente)

    Informations professionnelles :
    Activité : informatique
    Secteur : High Tech - Électronique et micro-électronique

    Informations forums :
    Inscription : Février 2012
    Messages : 1
    Points : 4
    Points
    4
    Par défaut Rectangle d'aire minimum cvMinAreaRect2
    Bonsoir,

    je cherche d afficher le rectangle d aire minimale d une image ; j ai utiliser pour ça la fonction d opencv cvMinAreaRect2 mais lorsque l exécution j aurai que l image et pas le rectangle ; svp direz moi les quelles les étapes me manque pour arriver a l affichage de rectangle d aire minimale sur une image binaire
    Voici le code que j'ai saisie :

    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
    #include <stdio.h>
    #include <stdlib.h>
    #include <cv.h>
    #include <highgui.h>
    #include <cxcore.h>
    #include <cvaux.h>
     
    IplImage* pic= NULL;
    IplImage* g_gray = NULL;
    int		g_thresh = 100;
    CvMemStorage* 	g_storage = NULL;
     
    CvPoint centre(IplImage* pic)
    {
        CvSeq* contours=0;
        CvPoint offset=cvPoint(0,0);
     
            if( g_storage == NULL )
                {g_gray = cvCreateImage( cvGetSize( pic), 8, 1 );
                 g_storage = cvCreateMemStorage(0);}
    		else {cvClearMemStorage( g_storage );}
     
     
            cvCvtColor( pic, g_gray, CV_BGR2GRAY );
            cvThreshold( g_gray, g_gray, g_thresh, 255, CV_THRESH_BINARY );
            cvFindContours ( g_gray , g_storage,  &contours, sizeof (CvContour), CV_RETR_LIST, CV_CHAIN_APPROX_SIMPLE,offset);
            cvZero( g_gray );
    if(contours)
     
    {
        CvScalar external_color = CV_RGB( rand()&0, rand()&0, rand()&255 );
        CvScalar hole_color=CV_RGB( rand()&0, rand()&255, rand()&0 );
        cvDrawContours ( g_gray, contours,external_color,hole_color, -1, 1, 8, cvPoint(0,0));}
        cvShowImage( "Contours", g_gray );
     
     
    cvMinAreaRect2(contours,g_storage);
    }
     
    int main(int argc, _TCHAR* argv[])
    {
     
     
        pic=cvLoadImage("haven.jpg",CV_LOAD_IMAGE_COLOR);// on charge en couleur pr qu'on puisse dessiner la BE et le CG en couleur sur l'image
        cvNamedWindow("image BE&CG", CV_WINDOW_AUTOSIZE);
    	centre(pic);
     
        cvShowImage("image BE&CG", pic);
        cvWaitKey(0);
        cvDestroyWindow("image BE&CG");
        cvReleaseImage(&pic);
     
        printf("Hello world!\n");
        return 0;
    }
    Merci;

  2. #2
    Membre régulier
    Homme Profil pro
    Étudiant
    Inscrit en
    Octobre 2011
    Messages
    84
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Octobre 2011
    Messages : 84
    Points : 114
    Points
    114
    Par défaut
    Salut,

    Je pense qu'il y aun truc qui ne vas pas tu essayes d'afficher g_gray .
    Mais tu ne déclare pas la fenetre Contours.
    Si tu fais un cvNamedWindows("Contour") ça ne marche pas mieux?

Discussions similaires

  1. rectangle d'aire minimum ?
    Par shokotoreiki dans le forum Traitement d'images
    Réponses: 7
    Dernier message: 14/05/2011, 19h25
  2. Réponses: 0
    Dernier message: 01/03/2011, 18h20
  3. rectangle d aire minimum «cvMinAreaRect2»
    Par spilberg dans le forum C
    Réponses: 4
    Dernier message: 01/03/2011, 11h51
  4. Fonction qui calcule le rectangle d'aire minimale
    Par lucciana dans le forum OpenCV
    Réponses: 0
    Dernier message: 08/02/2011, 16h30

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