1.程序思路:
(1)首先读取视频,分帧,然后将分帧后的图片的路径和文件名存在一个txt文件内,但是该txt文件必须在c++工程的文件夹内,如此完成了视频的读取。相关opencv源码的文件的组成结构见一位学者总结:http://www.cnblogs.com/BoyXiao/archive/2010/10/24/1859704.html
(2)视频读取相关函数:
图片、视频显示窗口 :cvNamedWindow( "显示名"),包含在头文件"highgui.h" ,主要是图像、视频输入输出; cvDestroyWindow( "显示名"),释放窗体
视频结构体: CvCapture* capture=cvCreateFileCapture(“文件路径”) ;cvReleaseCapture(&capture);
图片结构体: IplImage* frame=cvLoadImage("文件路线", int颜色);cvReleaseImage(&frame);
图片视频显示窗口:cvShowImage("gray", frame);
延时函数: cvWaitKey(延时整数ms单位)
(3)示范程序
#include"highgui.h"
int main(int argc,char* argv[])
{
cvNamedWindow( "qianqian"); //显示窗口创建
CvCapture* capture = cvCreateFileCapture("D:\\Visual Studio 2015\\qianqian.mp4");//获取视频信息,返回信息 CvCapture结构体信息
IplImage* frame; //图片结构体
while(1)
{
frame = cvQueryFrame(capture);
if(!frame) break ;
cvShowImage( "qianqian",frame);
char c = cvWaitKey(50);
if(c == 27)
break;
}
cvReleaseCapture(&capture);
cvReleaseImage(&frame);
cvDestroyWindow( "qianqian");
return 0;
}