|
常言道“温故而知新”,写此文章就是对自己目前学习内容的小小的总结与记录。
本文力求用最简洁的语言,详细的代码将此部分内容讲解清楚,但由于博主同样是刚刚接触OpenCV,或许表达上有些瑕疵,还望读者能够指教探讨,大家共同进步。
博主机器配置为:VS2013+opencv2.4.13+Win-64bit。
若本文能给读者带来一点点启示与帮助,我就很开心了。
===========================分割线========================
读取视频也是常用的操作,本节将使用VideoCapture类读取播放视频。
本节内容仅仅是个简洁版,只能读取显示视频,无其他相关操作。
======================分割线==================
代码演示
/*
使用VideoCapture类读取播放视频操作--简洁版
*/
#include <opencv2/core/core.hpp>
#include <opencv2/highgui/highgui.hpp>
#include <opencv2/imgproc/imgproc.hpp>
#include <iostream>
using namespace std;
using namespace cv;
int main()
{
//【1】读取视频文件
VideoCapture capture("D:\\OutPutResult\\ImageTest\\tt.mp4");
//【2】循环显示每一帧
while (true)
{
Mat frameImg; //定义一个Mat变量,用于存储每一帧的图像
capture >> frameImg; //读取当前帧
/*若视频播放完成,退出循环*/
if (frameImg.empty())
{
break;
}
imshow("读取视频", frameImg); //显示当前帧
waitKey(40); //每帧画面存在40ms,即1秒25帧
}
return 0;
}
===========================分割线===========================
的内容有些相似,请读者反复观察这两节内容,发现它们的不同。哪一个是调用摄像头,哪一个是读取本机视频文件。
本节仅仅是简单是实现了读取视频文件,如果想知道如何获取视频帧的数量,尺寸,帧率等信息,请关注下一节内容。
==================================END==================================== |