原文:http://blog.csdn.net/qq78442761/article/details/54173104
OpenCV通过VideoCapture类,来对视频进行读取,调用摄像头
读取视频:
1.先实例化再初始化
VideoCapture capture;
Capture.open("1.avi");
2.实例化的同时进行初始化
VideoCapture capture("1.avi");
播放视频:
视频读如到VideoCapture类对象之后,用一个循环将每一帧显示出来
while(1)
{
Mat frame;
capture>>frame;
imshow("读取视频",frame);
waitkey(30);
}
调用摄像头
将代码VideoCapture capture("1.avi")中的1.avi换成0就可以了
下面来看一段代码:
- #include <opencv2\opencv.hpp>
- using namespace cv;
- using namespace std;
- int main()
- {
- //读取视频或摄像头
- VideoCapture capture("1.avi");
- while (true)
- {
- Mat frame;
- capture >> frame;
- imshow("读取视频", frame);
- waitKey(30); //延时30
- }
- return 0;
这是读取文件然后进行播放:
下面是运行结果:
下面看看工程目录的图
下面是打开摄像头的代码:
- #include <opencv2\opencv.hpp>
- using namespace cv;
- using namespace std;
- int main()
- {
- //读取视频或摄像头
- VideoCapture capture(0);
- while (true)
- {
- Mat frame;
- capture >> frame;
- imshow("读取视频", frame);
- waitKey(30); //延时30
- }
- return 0;
- }
运行结果: