码迷,mamicode.com
首页 > 其他好文 > 详细

opencv再学习(1):视频的读取和滚动条的添加

时间:2017-03-24 18:04:56      阅读:247      评论:0      收藏:0      [点我收藏+]

标签:name   names   void   using   core   pos   mat   release   stream   

蝴蝶书中的21页。(由于此书主要还是用着IplImage的方式,为了方便,我还是尽量改成Mat吧。)

这部分主要进行播放AVI视频及滚动条的实现。

#include<iostream>
#include<opencv2\ml\ml.hpp>
#include<opencv2\core\core.hpp>
#include<opencv2\highgui\highgui.hpp>
#include<opencv2\imgproc\imgproc.hpp>

using namespace std;
using namespace cv;

CvCapture *capture;//视频捕捉器
void onTrackbarSlide(int pos) {//滚动函数
cvSetCaptureProperty(capture, CV_CAP_PROP_POS_FRAMES, pos);
}

int main(int argc, char* argv[]) {

namedWindow("Example");
capture = cvCreateFileCapture("F:\\迅雷下载\\[电影天堂www.dy2018.com]比利·林恩的中场战事BD中英双字.rmvb");
Mat image;
int frames = (int)cvGetCaptureProperty(capture, CV_CAP_PROP_FRAME_COUNT);//获取视频的全部帧数

if (frames != 0) {
cvCreateTrackbar("Position", "Example", 0, frames, onTrackbarSlide);
}
while (1) {
image = cvQueryFrame(capture);
resize(image, image, Size(600, 400));//压缩图片大小
if (image.empty())
break;
imshow("Example", image);
char c = waitKey(3);
if (c == 27) break;
}
cvReleaseCapture(&capture);
cvDestroyWindow("Example");
return 0;
}

opencv再学习(1):视频的读取和滚动条的添加

标签:name   names   void   using   core   pos   mat   release   stream   

原文地址:http://www.cnblogs.com/tt123/p/6611101.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!