我的错误是:
错误:C2228:'。open'的左边必须有class / struct / union,我不知道 知道解决这个问题。
#include "dialog.h"
#include "ui_dialog.h"
#include <QTimer>
#include <stdio.h>
#include <iostream>
#include <opencv2\video\video.hpp>
#include <opencv2\opencv.hpp>
#include "opencv2/imgproc/imgproc.hpp"
#include "opencv2/highgui/highgui.hpp"
#include "opencv2/flann/miniflann.hpp"
using namespace cv; <i> all the new API is put into "cv" namespace. Export its content</i>
using namespace std;
Dialog::Dialog(QWidget *parent) : QDialog(parent),ui(new Ui::Dialog){
ui->setupUi(this);
capture.open("E:\\Six Degree of Separation.avi");
tmrTimer = new QTimer(this);
connect(tmrTimer,SIGNAL(timeout()),this,SLOT(ProcessFrameAndUpdateGUI()));
tmrTimer ->start(20);
}
答案 0 :(得分:1)
应该有一个cv::VideoCapture capture;
的实例。
您可以使用capture.isOpened()
检查它是否已打开。如果文件成功打开或者摄像机已成功初始化,则返回true。