您的位置:首页 > 运维架构

OpenCV(学习笔记6)-视频读取与显示

2016-05-07 21:18 519 查看
视频的读取主要利用了OpenCV 中的VideoCapture类。并且还可以对摄像头进行调用。

VideoCapture类的中提供读入视频的方法有两种。

先实例化再初始化

VideoCapture capture;
capture.open("Sugar.avi");


在实例化的同时进行初始化

VideoCapture capture("Sugar.avi");


视频读入到VideoCapture类对象之后,紧接着可以利用一个循环对每一帧进行显示出来。

Sugar.avi同时也需要如同1.jpg那样放入到目录中。

#include<opencv2/opencv.hpp>
using namespace cv;

int main()
{
VideoCapture capture("Sugar.avi");
while(1)
{
Mat frame;
capture>>frame;
imshow("读取视频", frame);
if(waitKey(60) >= 0)
break;

}
return 0;
}


运行结果如下所示:



前面在学习笔记5中写过关于Canny边缘检测,其实在视频中我们也可以加进来。代码如下:

#include<opencv2/opencv.hpp>
using namespace cv;

int main()
{
VideoCapture capture("Sugar.avi");
Mat edges;
while(1)
{
Mat frame;
capture>>frame;
cvtColor(frame, edges, CV_BGR2GRAY);
blur(edges, edges, Size(7, 7));
Canny(edges, edges, 0, 30, 3);
imshow("读取视频", edges);
if(waitKey(60) >= 0)
break;

}
return 0;
}


运行结果如下所示:



关于OpenCV和图像处理以及模式识别更多的学习资料将继续更新,敬请关注本博客。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: