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 :

Enregistrement et lecture d'un flux


Sujet :

OpenCV

  1. #1
    Candidat au Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Janvier 2014
    Messages
    4
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Allemagne

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

    Informations forums :
    Inscription : Janvier 2014
    Messages : 4
    Points : 4
    Points
    4
    Par défaut Enregistrement et lecture d'un flux
    Bonjour,

    Dans le cadre d'un projet étudiant, j’utilise OpenCV pour récupérer l'image d'une Webcam et l'envoyer par internet.

    J’arrive à récupérer les images dans un objet Mat.

    Pour la suite, je comptais récupérer la couleur de chaque pixel et la placer dans un buffer pour ensuite l'envoyer. Mais je n'ai pas trouvé de méthodes ou autres dans la classe Mat permettant de récupérer le contenu de l'image pixel par pixel.

    Y a t-il un moyen de le faire? Sinon, quelle autre méthode pourrais-je utiliser?

    Merci d'avance

  2. #2
    Invité
    Invité(e)
    Par défaut
    Bonjour,

    C'est la méthode template Mat::at
    Tu peux aussi accéder au pointeur membre .data

  3. #3
    Candidat au Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Janvier 2014
    Messages
    4
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Allemagne

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

    Informations forums :
    Inscription : Janvier 2014
    Messages : 4
    Points : 4
    Points
    4
    Par défaut
    Ok, Merci les 2 fonctionnent, data() m'a l'ai plus adapté pour être ensuite copié à nouveau dans un objet Mat.

    J'aurais cependant une autre question:

    En utilisant .data(), comment sont structurés les données pour chaque pixel et comment est-il possible d'avoir la taille totale des données?

  4. #4
    Invité
    Invité(e)
    Par défaut
    Dans le cas général, on accède au pixel (i,j) par :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    cv::Mat im:
    for(int i=0; i<im.rows; i++){
        for(int j=0; j<im.cols; j++){
            im.data[im.step*i + im.channels()*j]      // B
            im.data[im.step*i + im.channels()*j + 1]  // G
            im.data[im.step*i + im.channels()*j + 2]  // R
        }
    }

  5. #5
    Candidat au Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Janvier 2014
    Messages
    4
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Allemagne

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

    Informations forums :
    Inscription : Janvier 2014
    Messages : 4
    Points : 4
    Points
    4
    Par défaut
    Ok, c'est exactement ce qu'il me fallait.

    Merci beaucoup.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Lecture d'un flux RSS en C
    Par geexskill dans le forum Réseau
    Réponses: 4
    Dernier message: 28/08/2006, 13h58
  2. [FLASH MX] Lecture d'un flux XML
    Par oxa dans le forum Flash
    Réponses: 2
    Dernier message: 02/06/2006, 12h33
  3. Problème d'enregistrements en lecture seule.
    Par baphomet712 dans le forum MFC
    Réponses: 2
    Dernier message: 24/11/2005, 18h03
  4. [Audio] Enregistrement et lecture de flux...
    Par remixtech dans le forum Langage
    Réponses: 2
    Dernier message: 29/10/2005, 12h07
  5. [Réseau] détecter la fin de lecture dans un flux entrant
    Par al85 dans le forum Entrée/Sortie
    Réponses: 5
    Dernier message: 30/03/2005, 21h06

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