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 :

Qt et OpenCV


Sujet :

OpenCV

  1. #1
    Membre du Club
    Profil pro
    Inscrit en
    Janvier 2009
    Messages
    74
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2009
    Messages : 74
    Points : 41
    Points
    41
    Par défaut Qt et OpenCV
    Bonjour, j'essai de faire une application console avec qt et openCV mais lorsque j'introduit une fonction de OpenCV dans mon code, je n'est plus rien qui s'affiche dans la console. voici mon code principal.


    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
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    87
    88
    89
    90
    91
    92
    93
    94
    95
    96
    97
    98
    99
    100
    101
    102
    103
    104
    105
    106
    107
    108
    109
    110
    111
     
    #include "MetaDataGenerator.hpp"
     
    #include <QDir>
    #include <QTextStream>
    #include <cv.h>
    #include <highgui.h>
     
     
     
     
    MetaDataGenerator::MetaDataGenerator( int argc, char *argv[] ) :
    QCoreApplication( argc, argv ),
    m_cascade(0)
    {
        m_imageTypeFilter << "*.bmp" << "*.jpg" << "*.png" << "*.gif";
     
        m_faceDetectionConfigFileName = "haarcascade_frontalface_alt.xml";
        m_imgSrcDirName    = "images";
        m_metaDonneDirName = "imagesMetaData";
    }
     
    #include <iostream>
     
    MetaDataGenerator::~MetaDataGenerator(){
        //cvReleaseHaarClassifierCascade( &m_cascade );
    }
     
     
     
    int MetaDataGenerator::exec(){
        QTextStream console(stderr);
        QDir imgDir(m_imgSrcDirName);
        QDir metaDataDir(m_metaDonneDirName);
        QImage currentImg;
        int currentImgFaceCount = 0;
        //int currentImgColorCount = 0;
     
        imgDir.setNameFilters( m_imageTypeFilter );
        metaDataDir.setNameFilters( QStringList("*.xml") );
     
     
     
     
        //------------------------------------
        //    charge le fichier de cascade
        //------------------------------------
        //cvLoad( "", 0, 0, 0 );
     
        if( !m_cascade ){
            console << "Le fichier " << m_faceDetectionConfigFileName << " est manquant !";
            QCoreApplication::exit( -1 );
        }
     
     
     
     
     
        if( !imgDir.exists() ){
            console << "Le repertoire " << imgDir.path() << " n'existe pas !";
            console.flush();
            QCoreApplication::exit( -1 );
        }
     
     
        if( imgDir.count() == 0 ){
            console << "Le repertoire " << imgDir.path() << " ne contient pas d'image !";
            console.flush();
            QCoreApplication::exit( -1 );
        }
     
     
        if( !metaDataDir.exists() ){
            console << "Le repertoire " << imgDir.path() << " n'existe pas !";
            console.flush();
            QCoreApplication::exit( -1 );
        }
     
     
        if( metaDataDir.count() == 0 ){
            console << "Le repertoire " << metaDataDir.path() << " ne contient pas de fichier de métadonées !";
            console.flush();
            QCoreApplication::exit( -1 );
        }
     
     
        // Pour chaque Image
        foreach( QString imageFileName, imgDir.entryList() ){
            console << "Traitement de l'image " << imageFileName << "....\n";
            console.flush();
     
     
            currentImg.load( imgDir.path() + "\\" + imageFileName );
            currentImgFaceCount = detectFaceCount( currentImg );
     
            console << "Nombre de face détecté : " << currentImgFaceCount << "\n";
            console << "Nombre de couleur : " << currentImg.colorCount() << "\n";
            console.flush();
        }
     
     
     
        return QCoreApplication::exec();
    }
     
     
     
     
    int MetaDataGenerator::detectFaceCount( const QImage& img ){
        return 0;
    }

  2. #2
    Membre du Club
    Profil pro
    Inscrit en
    Octobre 2005
    Messages
    52
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2005
    Messages : 52
    Points : 60
    Points
    60
    Par défaut
    OpenCV change peut etre la sortie standard...

    à tu essayé d'écrire sur la console à coups de qWarning() et autres qDebug()?

    est ce que ton .pro contient bien CONFIG+=console ?

Discussions similaires

  1. OpenCV sous vista
    Par gandanlf dans le forum OpenCV
    Réponses: 10
    Dernier message: 16/03/2007, 15h55
  2. probleme avec opencv
    Par dz_robotix dans le forum Visual C++
    Réponses: 2
    Dernier message: 06/03/2007, 10h39
  3. Réponses: 1
    Dernier message: 01/10/2006, 15h44
  4. Traitement d'image java OpenCV
    Par moris113 dans le forum Multimédia
    Réponses: 1
    Dernier message: 12/07/2006, 19h12
  5. [Qt]Afficher une image d'openCV dans un pixmap
    Par astragoth dans le forum Qt
    Réponses: 8
    Dernier message: 14/03/2006, 15h14

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