OpenCV--HighGUI视频读写和显示

OpenCV视频处理:HighGUI读写与显示
本文介绍了如何使用OpenCV的HighGUI库进行视频读写和显示操作,提供了一个基于OpenCV2.4.2的基本实例代码。

下面是基本实例代码:本人用的是 Opencv2.4.2

#include "opencv2/core/core.hpp"
#include "opencv2/highgui/highgui.hpp"
using namespace cv;

#include "iostream"
using namespace std;

CvCapture *capture = NULL;
CvVideoWriter* writer = NULL;
IplImage *frame = NULL;
int FPS = 15;

int _tmain(int argc, _TCHAR* argv[])
{

	//打开摄像头
	if(!(capture = cvCaptureFromCAM(0)))
	{
		fprintf(stderr,"Can't open the camera0!\n");
	}
	//设置视频分别率属性
	double w = 1280, h = 720;
	cvSetCaptureProperty ( capture, CV_CAP_PROP_FRAME_WIDTH,  w );  
	cvSetCaptureProperty ( capture, CV_CAP_PROP_FRAME_HEIGHT, h );
	//创建视频文件写入器 
	frame = cvQueryFrame(capture);
	writer = cvCreateVideoWriter("video.avi",CV_FOURCC('X', 'V', 'I', 'D'),FPS,cvSize(frame->width,frame->height),1);
	if(writer == NULL)
	{
		fprintf(stderr,"Can't create the video writer");
	}

	cvNamedWindow("Capture");
	while (1)
	{
		
		frame = cvQueryFrame(capture);   //循环获取视频帧
		cvWriteFrame(writer,frame);      //将视频帧写入CvVideoWriter中保存
		cvShowImage("Capture",frame);    //现实画面
		int key = cvWaitKey(25);         //ESC 退出
		if( key == 27 ) 
		{
			break;
		}
	}

	cvReleaseVideoWriter(&writer);
	cvReleaseCapture(&capture);
	cvDestroyWindow("Capture");
	return 0;
}


下面是代码中要用到HighGUI库中所有视频读写函数的使用说明链接:

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值