opencv再学习:视频的读取和滚动条的添加
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了opencv再学习:视频的读取和滚动条的添加相关的知识,希望对你有一定的参考价值。
蝴蝶书中的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再学习:视频的读取和滚动条的添加的主要内容,如果未能解决你的问题,请参考以下文章
浏览器在滑动滚动条的时候画面一直闪?像水平波纹一样,这是为啥啊?怎么样改变卅?