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 :

Filtre Sobel


Sujet :

OpenCV

  1. #1
    Membre averti
    Homme Profil pro
    Inscrit en
    Avril 2011
    Messages
    19
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Avril 2011
    Messages : 19
    Par défaut Filtre Sobel
    bonjour

    je cherche à appliquer le filtre Sobel sur une image et j'ai utilisé la fonction d'OpenCV "Cvsobel" mais qu'on j’exécute mon programme il se plante

    please aider moi

  2. #2
    Membre éprouvé Avatar de Nhaps
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Mars 2011
    Messages
    350
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 36
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : Industrie

    Informations forums :
    Inscription : Mars 2011
    Messages : 350
    Par défaut
    Bonjour,

    Sans rien il est trés difficile de pouvoir répondre, montre nous ton code ou une partie. On pourra par la suite voir ce qu'il ne va pas

  3. #3
    Membre averti
    Homme Profil pro
    Inscrit en
    Avril 2011
    Messages
    19
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Avril 2011
    Messages : 19
    Par défaut
    voila le code qu j'ai fait
    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
     
    #include "cv.h"
    #include "highgui.h"
     
    int
    main()
    {
        IplImage* img0;
        IplImage* img1;
        IplImage* sobel=cvCreateImage(cvGetSize(img0),img0->depth,1);
     
        /* load image */
        img0=cvLoadImage("im1.jpg");
     
    /*On vérifie l'origine de l'image chargée et si elle n'est pas en haut à gauche, il faut la corriger*/
        int flip=0;
        if(img0->origin!=IPL_ORIGIN_TL)
        {
            flip=CV_CVTIMG_FLIP;
        }
        img1=cvCreateImage(cvGetSize(img0),img0->depth,1);
        cvCvtColor(img0,img1,CV_BGR2GRAY);
        cvSobel(img1,sobel,3,3,3);
     
        cvNamedWindow("img", 1);
        cvNamedWindow("img1", 1);
     
        cvShowImage("img", img0);
        cvShowImage("img",sobel);
     
        cvWaitKey(0);
     
        /* be tidy */
        cvDestroyAllWindows();
        cvReleaseImage(&img0);
        cvReleaseImage(&sobel);
        return 0;
    }

  4. #4
    Membre averti
    Profil pro
    Inscrit en
    Octobre 2009
    Messages
    27
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Octobre 2009
    Messages : 27
    Par défaut
    Bonjour !

    Le filtre de Sobel d'OpenCV nécessite une image avec une profondeur supérieure à l'image d'origine. Tout simplement car le produit de convolution appliqué donne des résultats qui vont outrepasser les limites de l'images d'origine (par multiplication ..).
    En général, les images utilisées ont une profondeur de 8 bits et donc, pour votre image Sobel, si vous utilisez une profondeur de 32 bits cela ne devrait plus poser de problème.

    Cependant, si vous voulez conserver une image de Sobel sur 8 bits (personnellement je trouve que cela donne un meilleur rendu pour les contours) alors vous devrez appliquer le filtre de convolution par vous même (en utilisant la fonction cvFilter2D).

    Autre chose, dans la fonction que vous implémentez (cvSobel()), les paramètres de dérivation suivant X et Y que vous avez entrés risquent de ne donner aucun résultat ..
    Utilisez plutôt les valeurs de ``0,1'' ou ``1,0'' (valeurs utilisant la matrice ``standard'' de Sobel).

  5. #5
    Membre averti
    Homme Profil pro
    Inscrit en
    Avril 2011
    Messages
    19
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Avril 2011
    Messages : 19
    Par défaut
    ok merci pour ces informations maintenant mon problème est résolu

  6. #6
    Membre averti
    Homme Profil pro
    Inscrit en
    Avril 2011
    Messages
    19
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Avril 2011
    Messages : 19
    Par défaut
    ok merci pour ces informations maintenant mon problème est résolu

Discussions similaires

  1. filtre Sobel
    Par codesource1 dans le forum Traitement d'images
    Réponses: 2
    Dernier message: 18/03/2015, 21h03
  2. Problème Filtre Sobel (en niveau de gris)
    Par xav89 dans le forum Traitement d'images
    Réponses: 2
    Dernier message: 04/04/2010, 23h44
  3. filtre de sobel sur image jpg, ne marche pas (matlab)
    Par Imène_23 dans le forum Images
    Réponses: 7
    Dernier message: 20/05/2009, 22h36
  4. [Débutant] conv2 filtre sobel+image.jpg
    Par Astraya dans le forum Images
    Réponses: 5
    Dernier message: 17/03/2009, 23h26
  5. faire apparaitre le contour d'une image par filtre SOBEL
    Par bilzzbenzbilz dans le forum Traitement d'images
    Réponses: 33
    Dernier message: 04/03/2009, 18h18

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