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 :

Redimmensionner une capture d'image


Sujet :

OpenCV

  1. #1
    Futur Membre du Club
    Profil pro
    Inscrit en
    Juin 2008
    Messages
    11
    Détails du profil
    Informations personnelles :
    Localisation : Canada

    Informations forums :
    Inscription : Juin 2008
    Messages : 11
    Points : 5
    Points
    5
    Par défaut Redimmensionner une capture d'image
    Bonjour,

    Je suis nouvel utilisateur d'OpenCV, j'ai reussi a recuperer une image de Webcam et a la retourner, mais je ne sais pas comment la resizer.
    Dans ma fonction callback fonctionne pour FLIP, mais pas dans l'autre cas (resize) :
    void callback(IplImage* image)
    {
    // Flip image
    #ifdef FLIP
    cvFlip(image, image, 1);

    // Resize image
    #else
    IplImage *newImage;
    CvSize newSize;
    newSize.height = 200; // par exemple, image initiale = 480
    newSize.width = 200; // par exemple, image initiale = 640
    cvResize(image, newImage, CV_INTER_LINEAR);
    cvCopyImage(newImage, image);
    #endif
    }

    Merci pour vos avis !

    Doh

  2. #2
    Membre du Club
    Profil pro
    Inscrit en
    Juillet 2007
    Messages
    61
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2007
    Messages : 61
    Points : 44
    Points
    44
    Par défaut
    salut,
    je pense tout d'abord que le cvCopyImage ne fonctionne que si les 2images ont la meme taille. Pourquoi vouloir copier d'ailleurs alors que ta réponse est dans "NewImage" ?
    Affiche NewImage tu verras que ton image est bien 'resizer' :-)

  3. #3
    Futur Membre du Club
    Profil pro
    Inscrit en
    Juin 2008
    Messages
    11
    Détails du profil
    Informations personnelles :
    Localisation : Canada

    Informations forums :
    Inscription : Juin 2008
    Messages : 11
    Points : 5
    Points
    5
    Par défaut
    La fonction callback est une fonction de traitement de l'image qui est appelee automatiquement pour faire un traitement sur l'image (comme le flip), mais il n'y a pas d'affichage a faire dans cette fonction. Ma crainte est qu'il ne soit pas possible de changer la taille de l'image dans cette fonction, c'est pour cela que je demande l'avis d'experts.

    Merci
    Doh

  4. #4
    Membre actif Avatar de Vinsss84
    Profil pro
    Inscrit en
    Février 2008
    Messages
    175
    Détails du profil
    Informations personnelles :
    Localisation : France, Rhône (Rhône Alpes)

    Informations forums :
    Inscription : Février 2008
    Messages : 175
    Points : 207
    Points
    207
    Par défaut
    Citation Envoyé par k3ops Voir le message
    salut,
    je pense tout d'abord que le cvCopyImage ne fonctionne que si les 2images ont la meme taille. Pourquoi vouloir copier d'ailleurs alors que ta réponse est dans "NewImage" ?
    Affiche NewImage tu verras que ton image est bien 'resizer' :-)
    c'est effectivement l'erreur dans ton code ; tu n'a pas le droit de réaliser cette copie.
    =>
    OpenCv Addict

  5. #5
    Futur Membre du Club
    Profil pro
    Inscrit en
    Juin 2008
    Messages
    11
    Détails du profil
    Informations personnelles :
    Localisation : Canada

    Informations forums :
    Inscription : Juin 2008
    Messages : 11
    Points : 5
    Points
    5
    Par défaut
    Citation Envoyé par Vinsss84 Voir le message
    c'est effectivement l'erreur dans ton code ; tu n'a pas le droit de réaliser cette copie.
    Mais alors comment retailler une capture video ?

    Doh

  6. #6
    Membre actif Avatar de Vinsss84
    Profil pro
    Inscrit en
    Février 2008
    Messages
    175
    Détails du profil
    Informations personnelles :
    Localisation : France, Rhône (Rhône Alpes)

    Informations forums :
    Inscription : Février 2008
    Messages : 175
    Points : 207
    Points
    207
    Par défaut
    En changeant directement les paramètres de capture via le pilote de ta camera.
    Après ca depend, quelle librairie utilises tu pour la capture?
    =>
    OpenCv Addict

  7. #7
    Futur Membre du Club
    Profil pro
    Inscrit en
    Juin 2008
    Messages
    11
    Détails du profil
    Informations personnelles :
    Localisation : Canada

    Informations forums :
    Inscription : Juin 2008
    Messages : 11
    Points : 5
    Points
    5
    Par défaut
    Citation Envoyé par Vinsss84 Voir le message
    En changeant directement les paramètres de capture via le pilote de ta camera.
    Après ca depend, quelle librairie utilises tu pour la capture?
    J'utilise cvCam (cvCamInit, cvCamStart) pour cela (j'ai un peu modifie cvCamStart pour positionner mon image ou je veux dans la window).

    Merci

    Doh

  8. #8
    Membre actif Avatar de Vinsss84
    Profil pro
    Inscrit en
    Février 2008
    Messages
    175
    Détails du profil
    Informations personnelles :
    Localisation : France, Rhône (Rhône Alpes)

    Informations forums :
    Inscription : Février 2008
    Messages : 175
    Points : 207
    Points
    207
    Par défaut
    Avec cv cam tu disposes de la fonction
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
     int cvcamSetProperty(int camera, const char* property, void* value);
    qui te permet notament de regler la resolution de ta caméra dans mes souvenirs.
    =>
    OpenCv Addict

  9. #9
    Futur Membre du Club
    Profil pro
    Inscrit en
    Juin 2008
    Messages
    11
    Détails du profil
    Informations personnelles :
    Localisation : Canada

    Informations forums :
    Inscription : Juin 2008
    Messages : 11
    Points : 5
    Points
    5
    Par défaut
    Citation Envoyé par Vinsss84 Voir le message
    Avec cv cam tu disposes de la fonction
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
     int cvcamSetProperty(int camera, const char* property, void* value);
    qui te permet notament de regler la resolution de ta caméra dans mes souvenirs.
    Un grand merci !
    J'etais en train de modifier cvCam pour y arriver, ta suggestion est bien plus simple !!

    Doh

Discussions similaires

  1. [C#][GDI+]Capture d'une portion d'image
    Par WOLO Laurent dans le forum Windows Forms
    Réponses: 1
    Dernier message: 22/11/2007, 08h29
  2. redimmensionner une image
    Par boodhir dans le forum Général JavaScript
    Réponses: 3
    Dernier message: 18/03/2007, 02h39
  3. Réponses: 2
    Dernier message: 05/07/2006, 15h21
  4. Capture d'image sur une vidéo en cours
    Par Bill14 dans le forum Langage
    Réponses: 2
    Dernier message: 17/10/2005, 12h34

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