Bonjour,
Mon environnement :
- Win 7 64
- Opencv 2.4.4 compiler mingw par cmake 2.8
- Qt 5.0.1
Ce que j'arrive à faire :
- compiler un affiche widget qt simple
- afficher une image par qlabel sous qt
- afficher une image par opencv (opencv pur par qt creator)
- afficher une video en direct de la webcam (opencv pur par qt creator)
Où je bloque :
- afficher une video issue d'un fichier avi
Objectif afficher une video (avi, webcam) dans un qlabel
Erreur voir la pièce jointe
code : 1_opencv.pro
code : main.cpp
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 CONFIG += console SOURCES += main.cpp INCLUDEPATH += E:\opencv\build\include\ LIBS += -LE:\opencv\build\bin \ -lopencv_core244 \ -lopencv_highgui244 \ -lopencv_imgproc244 \ -lopencv_features2d244 \ -lopencv_calib3d244 \ -lopencv_contrib244 \ -lopencv_flann244 \ -lopencv_gpu244 \ -lopencv_legacy244 \ -lopencv_ml244 \ -lopencv_nonfree244 \ -lopencv_objdetect244 \ -lopencv_photo244 \ -lopencv_stitching244 \ -lopencv_video244 \ -lopencv_videostab244
la compilation est ok, une fenetre s'affiche mais sans image et cela plante dans la fenetre console (voir copie écran)
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 #include <iostream> #include <opencv2/opencv.hpp> using namespace std; using namespace cv; int main(int argc, char *argv[]) { Mat m; VideoCapture cap; cap.open("d:/cube4.avi"); cout<<cap.isOpened()<<endl; namedWindow("window",1); while(1){ cap>>m; imshow("window",m); waitKey(33); } return 0; }
si je remplace
par
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 cap.open("d:/cube4.avi");
alors cela fonctionne je reçois la vidéo de ma webcam
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 cap.open(0);
Merci
Partager