前言
这篇文章主要讲述如何读取视频并且获取一帧图像和帧率
一、代码
1 #include <opencv2/opencv.hpp>
2 #include <iostream>
3 using namespace cv;
4 int main()
5 {
6 VideoCapture cap;
7
8 cap.open("C://Users//john//Desktop//VID20211016121229.mp4");
9
10 if (!cap.isOpened())
11 {
12 std::cout << "不能打开视频文件" << std::endl;
13 return -1;
14 }
15
16 double fps = cap.get(CAP_PROP_FPS);
17 std::cout << "fps" << fps << std::endl;
18 while (1)
19 {
20 cv::Mat frame;
21 bool rSucess = cap.read(frame);
22 if (!rSucess)
23 {
24 std::cout << "不能从视频文件中读取帧" << std::endl;
25 break;
26 }
27 else
28 {
29 cv::imshow("frame", frame);
30 }
31 waitKey(0);
32
33 }
34 }
总结
代码运行成功,就可以成功从视频中读取一帧并且获取帧率。