我如何读取视频文件在openCV中使用

How can I read a video file for use in openCV?

本文关键字:文件 openCV 视频 何读取 读取      更新时间:2023-10-16

我想从"avi文件"中读取视频文件,然后逐帧输入,在openCV中处理。我该怎么做呢?在openCV中有这样的函数吗?我应该使用视频阅读框架吗?

阅读视频文件的好框架是什么?

使用视频序列
从视频序列中捕获一帧

从相机初始化捕获:

CvCapture* capture = cvCaptureFromCAM(0); // capture from video device #0

从文件初始化捕获:

CvCapture* capture = cvCaptureFromAVI("infile.avi");
Capturing a frame:
IplImage* img = 0; 
if(!cvGrabFrame(capture)){              // capture a frame 
    printf("Could not grab a framen7");
    exit(0);
}
img=cvRetrieveFrame(capture);// retrieve the captured frame

要同时从多个摄像机获取图像,首先从每个摄像机获取图像。在抓取完成后检索捕获的图像。

释放捕获源:

cvReleaseCapture(&capture);

注意设备捕获的图像是由捕获函数分配/释放的。不需要显式地释放它。