opencv入门学习(有关视频)

来源:互联网 发布:微信链接网络出错1003 编辑:程序博客网 时间:2024/04/29 22:43

从opencv中文手册中获取的相关知识,有关视频处理部分:

1、从视频流中捕捉一帧画面
(1) OpenCV 支持从摄像头或视频文件(AVI格式)中捕捉帧画面.
(2) 初始化一个摄像头捕捉器:
CvCapture* capture = cvCaptureFromCAM(0); // capture from video device #0
(3) 初始化一个视频文件捕捉器:
CvCapture* capture = cvCaptureFromAVI("infile.avi");

(4) 捕捉一帧画面:
IplImage* img = 0;
if(!cvGrabFrame(capture)){ // capture a frame
printf("Could not grab a frame\n\7");
exit(0);}
img=cvRetrieveFrame(capture); // retrieve the captured frame
若要从多个摄像头中同步捕捉画面,则须首先从每个摄像头中抓取一帧,紧接着要将被捕捉的帧画面恢复到一
个IplImage*型图像中。(译注:这一过程其实可以用 cvQueryFrame() 函数一步完成)

(5) 释放视频流捕捉器:
cvReleaseCapture(&capture);
注意由视频流捕捉器得到的图像是由捕捉器分配和释放内存的,不需要单独对图像进行释放内存的操作。

0 0