toromis | Bonjour,
Je travaille en ce moment sur un projet de détection de formes sur opencv v2.4.6 mais mon programme plante lors de l’instruction cv::findContours.
Pour info, je compile en mode Debug sous Visual Studio 2012.
Voici ce que m'affiche Visual lorsque j’exécute le programme pas à pas :
Exception non gérée à 0x775F2C39 (ntdll.dll) dans Shapes.exe : 0xC0000005 : Violation d'accès lors de la lecture de l'emplacement 0x88FFFFFF.
Ci-dessous mon code, très inspiré du tutoriel d'opencv sur la détection de contours. Pardonnez sa simplicité mais j'ai essayé de le réduire au minimum.
Code :
- #include <iostream>
- #include <opencv2/core/core.hpp>
- #include <opencv2/highgui/highgui.hpp>
- #include <opencv2/imgproc/imgproc.hpp>
- int valeur=50;
- const int VALEUR_MAX=100;
- cv::Mat image;
- void contoursCanny (int,void*)
- {
- cv::Mat gray;
- std::vector<std::vector<cv::Point>> contours;
- std::vector<cv::Vec4i> hierarchy;
- unsigned int i;
- cv::cvtColor( image, gray, CV_BGR2GRAY );
- cv::Canny(gray,gray,valeur,2*valeur);
- //cv::findContours( gray, contours, hierarchy, CV_RETR_TREE, CV_CHAIN_APPROX_SIMPLE);//Detection de contours avec hierarchie
- cv::findContours( gray, contours, CV_RETR_LIST, CV_CHAIN_APPROX_SIMPLE);//Detection de contours sans hierarchie
- cv::waitKey();
- [....]
- }
- int main (int argc,char** argv)
- {
- cv::VideoCapture capture(0);
- char *titre="Sortie Webcam",
- *titre2="Parametres";
- char esc;
- if (!capture.isOpened())
- {
- fprintf(stderr, "Impossible de recuperer l image de la webcam." );
- return EXIT_FAILURE;
- }
- cv::namedWindow(titre,CV_WINDOW_AUTOSIZE);
- cv::namedWindow(titre2,CV_WINDOW_AUTOSIZE);
- cv::createTrackbar("Canny",titre2,&valeur,VALEUR_MAX,contoursCanny);
- while (1)
- {
- capture>>(image);
- contoursCanny(0,0);
- cv::imshow (titre, image);
- esc=cv::waitKey (10);
- if (esc==27)break;
- }
- return 0;
- }
|
L'instruction en commentaire ne fonctionne pas non plus
Est ce que quelqu'un peut m'aider ?
Merci d'avance. Message édité par toromis le 19-07-2013 à 16:55:51
|