OpenCV是一个强大的计算机视觉库,而不是视频流编码器或者解码器。希望大家不要走入这个误区,可以把这部分简单单独看待。目前,OpenCV只支持avi的格式,而且生成的视频文件不能大于2GB,而且不能添加音频。如果你想突破这些限制,我建议你最好还是看看ffMpeg,而不是浪费时间在OpenCV上。不过也可以利用视频后期合成工具制作。闲言少叙,进入重点VideoWriter类。

这个类是highgui交互很重要的一个工具类,可以方便我们容易的将图片序列保存成视频文件。类内成员函数有构造函数,open,isOpened,write(也可以用<<),使用还是很简单的。

使用很简单,先调用构造函数确定文件的名称,格式,帧率,帧大小,是否彩色。其中格式作为第二个参数,OpenCV提供的格式是未经过压缩的,目前支持的格式如下:

CV_FOURCC('P', 'I', 'M', '1') = MPEG-1 codec

CV_FOURCC('M', 'J', 'P', 'G') = motion-jpeg codec
CV_FOURCC('M', 'P', '4', '2') = MPEG-4.2 codec 
CV_FOURCC('D', 'I', 'V', '3') = MPEG-4.3 codec 
CV_FOURCC('D', 'I', 'V', 'X') = MPEG-4 codec 
CV_FOURCC('U', '2', '6', '3') = H263 codec 
CV_FOURCC('I', '2', '6', '3') = H263I codec

CV_FOURCC('F', 'L', 'V', '1') = FLV1 codec

然后就<<不停的把image传进去就行啦,太简单了,我都不好意思写了。上代码:

[cpp] view plaincopy
  1. #include <opencv2/core/core.hpp>
  2. #include <opencv2/highgui/highgui.hpp>
  3. using namespace cv;
  4. void main()
  5. {
  6. VideoCapture capture(0);
  7. VideoWriter writer("VideoTest.avi", CV_FOURCC('M', 'J', 'P', 'G'), 25.0, Size(640, 480));
  8. while (capture.isOpened())
  9. {  
    1. Mat frame;
    2. if ((frame.rows==0)||(frame.cols==0))
      {
      printf("frame capture failed\n");
      system("pause");
      exit(0);
      }
  10. capture >> frame;
  11. writer << frame;
  12. imshow("video", frame);
  13. if (cvWaitKey(20) == 27)
  14. {
  15. break;
  16. }
  17. }
  18. }

保存处理后的视频文件相关推荐

  1. ollyDbg 保存修改后的.exe文件

    ollybug 破解注册机时,破解者可能需要保存.exe文件.我们将按照如下步骤来保存修改后的可执行文件. 第一:选中被修改的部分,如图为NOP的部分. 第二:用右键选中,选择编辑,选择复制到可执行文 ...

  2. LabelImg 无法保存修改后的xml文件

    LabelImg 无法保存修改后xml 文件 今天标注数据,忽然发现无法保存修改之后的xml 文件,保存之后重新打开还是修改之前的xml 查看LabelImg信息如下: Img: F:\Fan\own ...

  3. 屏幕录像后的视频文件,如何压缩变小?

    有时需要录制游戏,电影,在线教学,聊天视频, 而且要保证录制出来后的视频也是要够清晰,录制出来的视频,文件不能太大,文件体积要小,这样便于节省存储空间,利于传输,QVE屏幕录制可以将录制完后的视频,在 ...

  4. AE渲染后的视频文件播放时很卡,不流畅

    2014-11-13 AE渲染要更改渲染格式 一般我们用avi,但是要注意的是改成avi之后如果用默认的格式渲染,那么渲染出来的文件超大,播放的时候也会卡顿. 此时你要设置格式选项 默认的是None. ...

  5. 【OpenCV 例程 300篇】252.视频文件的读取与保存

    『youcans 的 OpenCV 例程300篇 - 总目录』 [youcans 的 OpenCV 例程 300篇]252. 视频文件的读取与保存 视频文件是由一系列图像组成的,视频的每一帧都是一幅图 ...

  6. DRM-内容数据版权加密保护技术学习(上):视频文件打包实现(转)

    1. DRM介绍: DRM,英文全称Digital Rights Management, 可以翻译为:内容数字版权加密保护技术. DRM技术的工作原理是,首先建立数字节目授权中心.编码压缩后的数字节目 ...

  7. 将视频文件旋转90°的方法

    VLC播放器旋转 FFmpeg旋转 VLC播放器旋转 step1:打开VLC播放器,打开要播放的视频文件: step2:选择[工具]->[效果及滤镜] step3:在"调节与效果&qu ...

  8. 字幕文件与视频文件对不上的处理方式

    阅读原文 序言 最近给自己的私人影院下了很多电影,会出现一种情况:很多字幕网站的字幕都是比较老的,字幕可以适配1080p(或者比较早)的视频,但是有部分2160p的视频的字幕很难找,经常下了一堆字幕, ...

  9. 压缩视频文件怎么压缩最小?

    压缩视频文件怎么压缩最小?相信每个小伙伴都和我一样,希望电脑里每个文件的体积都能小一点,这样才能不占用更多的存储空间,文件上起来也方便,发送给别人的时候也不会有限时,一会就能发送成功.但往往总是事与愿 ...

最新文章

  1. 打印机十大共性故障解决方法
  2. 孙鑫VC视频学习笔记一
  3. Jenkins配置基于角色的项目权限管理--转
  4. pycharm弹出提示信息Server's certificate is not trusted
  5. JZOJ 2413. 【NOI2005】维护数列
  6. 聚焦 | 阿里灵杰AI工程化峰会来了
  7. BCVP第2期:项目已完成升级.NET5.0
  8. macos可以升级到指定版本吗_承装承修承试可以跨级升级吗?
  9. 逻辑回归详解及Python实现
  10. 四元数和欧拉角在线转换
  11. 阶段1 语言基础+高级_1-3-Java语言高级_08-JDK8新特性_第3节 两种获取Stream流的方式_8_Stream流中的常用方法_skip...
  12. 单片机原理及应用 张鑫_单片机原理及应用 张鑫 课后习题答案 电子工业出版社 单片机原理及应用 张鑫 课后习题答案 电子工业出版社.doc...
  13. 深度解析dubbo源码 (dubbo整体设计) (二)
  14. 便携式文件夹加密器 lockdir 5.74
  15. DOS获取注册表键值
  16. excel柱状图自定x轴y轴_Excel制作双坐标轴图表与把X轴与Y轴改为月份及使坐标轴带方向...
  17. 基于node.js的在线聊天室
  18. 小学计算机设备维护制度,中学设备管理维护规章制度
  19. Ubuntu下 百度在线语音合成使用
  20. 互联网创业的五大定律

热门文章

  1. Introduction to the Service Provider Interfaces--官方文档
  2. spring源码分析之cache demo
  3. 1到1亿的自然数,求所有数的拆分后的数字之和
  4. Http Message Converters with the Spring Framework--转载
  5. Java 编程的动态性, 第4部分: 用 Javassist 进行类转换--转载
  6. jboss学习 - vfs---转载
  7. 大数据分析币圈动态: ETH、BTC、BCH每秒交易均呈负增长! 以太坊网络传播时间再缩短
  8. GMIS 2017嘉宾王小川:人工智能技术与应用思考
  9. 小工匠聊架构 - 缓存与数据库【双写不一致】【读写并发不一致】解决方案一览
  10. 小工匠聊架构-超高并发秒杀系统设计 06_数据一致性