在获取摄像头之前先来熟悉以下OpenCV中视频获取的数据结构的管理方式。
1.CVCapture:视频获取结构
语法:CvCapture * cvCreateFileCapture(const char*filename);
参数 类型 说明
Filename const char* 使用视频文件名
说明:该函数给指定文件的视频流分配和初始化CvCapture。
语法:CvCapture * cvCaptureFromCAM(int index)
参数 类型 说明
语法: IplImage * cvQueryFrame(CvCapture * capture);
参数 类型 说明
Capture CvCapture * 视频获取结构
说明:函数cvQueryFrame从摄像头或者文件中抓取一帧,然后解压并返回这一帧。返回的图像不可以被用户释放或者修改。
返回值:获取的IplImage指针
1.CVCapture:视频获取结构
说明:OpenCV中的视频获取结构。结构CVCapture没有公共接口,他只能被用来作视频获取函数中使用的一个参数。
语法:CvCapture * cvCreateFileCapture(const char*filename);
参数 类型 说明
Filename const char* 使用视频文件名
说明:该函数给指定文件的视频流分配和初始化CvCapture。
返回值:分配的CvCapture
3.cvCaptureFromCAM:从摄像头中获取视频
语法:CvCapture * cvCaptureFromCAM(int index)
参数 类型 说明
Index int index指的是摄像头的索引,当只有一个摄像头时,index设为-1
语法: IplImage * cvQueryFrame(CvCapture * capture);
参数 类型 说明
Capture CvCapture * 视频获取结构
说明:函数cvQueryFrame从摄像头或者文件中抓取一帧,然后解压并返回这一帧。返回的图像不可以被用户释放或者修改。
返回值:获取的IplImage指针