opencv c++如何读取本地视频
时间: 2023-10-06 21:08:29 浏览: 106
opencv 读取视频
要在OpenCV C++中读取本地视频,可以使用`cv::VideoCapture`类。以下是示例代码:
```c++
#include <opencv2/opencv.hpp>
#include <iostream>
using namespace cv;
using namespace std;
int main()
{
// 打开本地视频文件
VideoCapture cap("video.mp4");
// 检查视频是否成功打开
if (!cap.isOpened())
{
cerr << "Error opening video file" << endl;
return -1;
}
// 循环读取视频帧
while (true)
{
Mat frame;
cap >> frame; // 读取下一帧
// 检查是否读取到了帧
if (frame.empty())
break;
// 显示帧
imshow("Video", frame);
// 等待用户按下按键,退出循环
if (waitKey(10) == 27)
break;
}
// 释放视频流和关闭窗口
cap.release();
destroyAllWindows();
return 0;
}
```
在上面的代码中,我们首先使用`VideoCapture`类打开本地视频文件,并检查是否成功打开。然后,在一个无限循环中,我们读取下一帧,检查是否读取到了帧,在窗口中显示帧,并等待用户按下按键以退出循环。最后,我们释放视频流和关闭窗口。
阅读全文