OpenCV--HighGUI视频读写和显示

来源:互联网 发布:淘宝助理天猫版本 编辑:程序博客网 时间:2024/05/16 18:18

下面是基本实例代码:本人用的是 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库中所有视频读写函数的使用说明链接:

  • 1CvCapture
  • 2cvCreateFileCapture
  • 3cvCreateCameraCapture
  • 4cvReleaseCapture
  • 5cvGrabFrame
  • 6cvRetrieveFrame
  • 7cvQueryFrame
  • 8cvGetCaptureProperty
  • 9cvSetCaptureProperty
  • 10cvCreateVideoWriter
  • 11cvReleaseVideoWriter
  • 12cvWriteFrame

    转自http://blog.csdn.net/tanmengwen/article/details/8170115
     

  • 原创粉丝点击