• OpenCV_avi读入视频


    View Code
     1 int _tmain(int argc, _TCHAR* argv[])
    2 {
    3 CvCapture* capture=0;
    4 //读入视频文件
    5 capture = cvCreateFileCapture("tree.avi");
    6 if(!capture)
    7 return -1;
    8 //将下一帧视频文件载入内存
    9 IplImage *bgr_frame = cvQueryFrame(capture);
    10
    11 //获取capture的各种属性
    12 //打开一个视频文件进行此操作,并将各帧图像转换 为对数极坐标格式。将装换后的太入戏逐帧写入视频文件。直到读入结束。
    13 double fps = cvGetCaptureProperty(capture,CV_CAP_PROP_FPS);
    14
    15 CvSize size = cvSize(
    16 (int)cvGetCaptureProperty(capture,CV_CAP_PROP_FRAME_WIDTH),
    17 (int)cvGetCaptureProperty(capture,CV_CAP_PROP_FRAME_HEIGHT)
    18 );
    19
    20 /* initialize video file writer
    21 第一个参数是用来指定新建视频的名称。
    22 第二个参数是视频压缩的编码方式。Opencv用cv_fourcc宏来指定编码格式。
    23 第三个参数是用来指定播放的帧率
    24 第四个参数是用来指定图像的大小。
    25 */
    26 CvVideoWriter *writer = cvCreateVideoWriter("tree2.avi",CV_FOURCC('M','J','P','G'),fps,size);
    27 IplImage* logpolar_frame = cvCreateImage(size,IPL_DEPTH_8U,3);
    28
    29 while((bgr_frame=cvQueryFrame(capture))!=NULL)
    30 {
    31 cvLogPolar(bgr_frame,logpolar_frame,cvPoint2D32f(bgr_frame->width/2,bgr_frame->height/2),40,CV_INTER_LINEAR+CV_WARP_FILL_OUTLIERS);
    32
    33 cvWriteFrame(writer,logpolar_frame);
    34 }
    35
    36 cvReleaseVideoWriter(&writer);
    37 cvReleaseImage(&logpolar_frame);
    38 cvReleaseCapture(&capture);
    39 return (0);
    40 }

  • 相关阅读:
    PHP运行及语句及逻辑
    数据库基础,表及SQL语句
    php后台修改人员表信息
    php后台增加删除修改跳转页面
    用PHP访问数据库
    php登录注册页面及加载
    php做登录注册页面及加载
    实现基于物理的渲染
    Tile-Based Deferred Rendering
    矩阵基础 2
  • 原文地址:https://www.cnblogs.com/slysky/p/2195841.html
Copyright © 2020-2023  润新知