Exception non gérée à 0x7c812afb - openCV [Résolu]

Messages postés
15
Date d'inscription
dimanche 12 octobre 2008
Dernière intervention
28 novembre 2011
- 12 oct. 2011 à 23:15 - Dernière réponse :
Messages postés
15
Date d'inscription
dimanche 12 octobre 2008
Dernière intervention
28 novembre 2011
- 28 nov. 2011 à 12:26
Bonjour,

Je travail sur une application qui affiche deux flux vidéos provenant de deux camera. Pour l'affichage j'utilise la bibliothèque Open CV, et se passe bien. Mais quand j’arrête l’exécution, une Exception s'affiche :" Exception non gérée à 0x7c812afb dans Test2.exe*: Exception Microsoft C++*: cv::Exception à l'emplacement mémoire 0x0011fc44.."
#include "stdafx.h"
#include <cv.h>
#include <highgui.h>
 
int _tmain(int argc, _TCHAR* argv[])
{
    CvCapture *capture = 0;
    CvCapture *capture1 = 0;
    IplImage  *frame = 0;
    IplImage  *frame1 = 0;
    int key = 0;
 
    /* initialize camera */
    capture = cvCaptureFromCAM( 0 );
    capture1 = cvCaptureFromCAM( 1 );
 
/* always check */
    if ( !capture ) {
        fprintf( stderr, "Cannot open initialize webcam!\n" );
        return 1;
    }
if ( !capture1 ) {
        fprintf( stderr, "Cannot open initialize webcam!\n" );
        return 1;
    }
 
    /* create a window for the video */
    cvNamedWindow( "result", CV_WINDOW_AUTOSIZE );
    cvNamedWindow( "result1", CV_WINDOW_AUTOSIZE );
 
    while( key != 'q' ) {
        /* get a frame */
        frame = cvQueryFrame( capture );
frame1 = cvQueryFrame( capture1 );
 
        /* always check */
        if( !frame ) break;
if( !frame1 ) break;
 
/* display current frame */
        cvShowImage( "result", frame );
cvShowImage( "result1", frame1 );
key = cvWaitKey( 50 );
    }
 
    /* free memory */
        cvDestroyWindow( "result" );
cvDestroyWindow( "result1" );
        cvReleaseCapture( &capture );
cvReleaseCapture( &capture1 );
cvReleaseImage(&frame);
cvReleaseImage(&frame1);
    return 0;
}


Je sais pas où est le problème? et d'où vient cette exception?
Est ce qu'il quelqu'un connait le problème ou a une idée qui aide de résoudre cette Exception?
Merci d'avance.
Afficher la suite 

Votre réponse

3 réponses

Meilleure réponse
Messages postés
1466
Date d'inscription
vendredi 2 janvier 2004
Dernière intervention
14 février 2014
- 14 oct. 2011 à 19:06
3
Merci
salut,

Si ton problème se présente à la fermeture, il doit se trouver dans cette partie:
/* free memory */
cvDestroyWindow( "result" );
cvDestroyWindow( "result1" );
cvReleaseCapture( &capture );
cvReleaseCapture( &capture1 );
cvReleaseImage(&frame);
cvReleaseImage(&frame1);

Tu dois certainement liberer un objet qui se retrouve utilisé dans une fonction suivante. Es-tu sur de l'ordre d'appel de ces fonctions ?

@++

Merci cs_patatalo 3

Avec quelques mots c'est encore mieux Ajouter un commentaire

Codes Sources a aidé 86 internautes ce mois-ci

Commenter la réponse de cs_patatalo
Messages postés
788
Date d'inscription
mardi 8 juillet 2003
Dernière intervention
8 mars 2017
- 13 oct. 2011 à 09:06
0
Merci
Bonjour,
Ne pourrais-tu pas passer en mode debug et répérer, en faisant du pas à pas, l'instruction en cause?


louis
Commenter la réponse de cs_louis14
Messages postés
15
Date d'inscription
dimanche 12 octobre 2008
Dernière intervention
28 novembre 2011
- 28 nov. 2011 à 12:26
0
Merci
Merci bien Patatalo. c'est résolu :)
Commenter la réponse de cs_souma86

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.