《OpenCV图像处理》——1.6 读取和写入视频文件-阿里云开发者社区

开发者社区> 华章计算机> 正文

《OpenCV图像处理》——1.6 读取和写入视频文件

简介:
+关注继续查看

本节书摘来自华章计算机《OpenCV图像处理》一书中的第1章,第1.6节,作者:[西]葛罗瑞亚·布埃诺·加西亚(Gloria Bueno García)著,更多章节内容可以访问云栖社区“华章计算机”公众号查看

1.6 读取和写入视频文件

视频处理的是运动图像,而不是静止图像。视频资源可以是一个专用摄像机、网络摄像头、视频文件或图像文件序列。在OpenCV中,VideoCapture类和VideoWriter类为视频处理中所涉及的捕获和记录任务提供了一个易用的C++ API。
1.?recVideo示例代码
recVideo示例是一个简短的代码片段,使您可以了解如何使用一个默认摄像机作为一个捕捉设备,来抓取帧,对它们进行边缘检测,并且将新的转换视频帧作为一个文件保存。而且,创建两个窗口同时显示原始帧和处理过的帧。该示例的代码为:
screenshot
screenshot

在本示例中,应该快速浏览一下如下这些函数:
double VideoCapture::get(int propId):这个函数为一个VideoCapture对象返回指定的属性值。在videoio.hpp头文件中包含了基于DC1394(IEEE 1394数码相机规范)属性的一个完整列表。
static int VideoWriter::fourcc(char c1, char c2, char c3, char c4):这个函数把四个字符连接起来形成一个fourcc码。在示例中,MSVC代表微软视频(仅在Windows上可用)。
bool VideoWriter::isOpened():如果写入视频的对象被成功初始化,这个函数返回true。例如,使用一个不正确的编解码器会产生一个错误。
注意,在一个系统中有效的fourcc码依赖于本地安装的编解码器。
VideoCapture& VideoCapture::operator>>(Mat& image):这个函数抓取、解码并返回下一帧。这个方法和布尔函数VideoCapture::read(OutputArray image)等价。可以使用这个函数而不使用函数VideoCapture::grab(),然后使用VideoCapture::retrieve()。
VideoWriter& VideoWriter::operator<<(const Mat& image):这个函数写入下一帧。这个方法和布尔函数VideoWriter::write(const Mat& image)等价。
在本示例中,有一个读取/写入循环,可同时地获取并处理窗口事件。waitKey(1000/fps)函数调用负责执行这个任务。在这个示例中,1000/fps表示返回外部循环之前等待的毫秒数。尽管不精确,但对于录制的视频仍能获取每秒帧数的一个近似度量。
void VideoCapture::release():这个函数释放视频文件或采集设备。尽管在本示例中没有必要显式地包含,但为了说明它的使用,示例中仍包含了这个
函数。

版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。

相关文章
Visual Studio 2013编辑HTML文件无设计视图的解决方案
在Visual Studio 2013中编辑HTML文件,会发现没有设计视图。 解决方法:点击Visual Studio 2013的”工具“菜单,再点击”选项“—>文本编辑器—>文件扩展名,右侧输入html,再下拉列表选HTML(Web窗体)编辑器,点添加,确定。
798 0
Web系统下Office文档的处理 之OpenXml应用分类资料
本文对常见的处理参考和工具提供一个简要的参考。 对于实际的解决方案参考如下地址(有很多的分类知识) http://blogs.msdn.com/b/ericwhite/archive/2008/10/20/eric-white-s-blog-s-table-of-contents.
889 0
带你读《InDesign CC排版设计全攻略:视频教学版》之二:图形与图像处理
InDesign是一款主流的专业排版设计软件,被广泛应用于书刊、媒体、平面设计、印刷出版和数字媒体等领域。本书图文并茂地讲解中文版InDesign CC 2018的各项功能、应用技巧和设计手段。为了达到学以致用的目的,全书以丰富示例详解软件的各项实用功能和重点参数,并穿插介绍大量的工作流程以及书刊、画册的编排经验和设计方法。另外,本书还提供了几个具有挑战性的综合案例,让你跟随书中的设计思路一步步地实现项目要求的效果。本书提供了丰富的设计案例和供下载的教学视频,特别适合InDesign新手阅读。对具有一定使用经验的用户,其中的案例也有很好的参考价值。本书还可作为职业学校、培训机构的教学用书。
434 0
构建在线教育弹性高可用视频处理架构实战
对于负责建设视频处理系统的技术团队而言,这样的业务场景就留给了他们一系列的挑战。
1019 0
视频文件格式分析(1):avi格式
近日某网盘对用户保存其中的部分私人视频进行篡改,使得这部分视频无论是在线或者下载后均无法播放。我们借着研究对应方法,修复被非法篡改的视频数据,恢复正常使用的机会,研究一下avi的数据格式。
1056 0
【OpenCV学习】子区域处理
作者:gnuhpc 出处:http://www.cnblogs.com/gnuhpc/ #pragma comment( lib, "cxcore.lib" ) #pragma comment( lib, "cv.
558 0
10059
文章
0
问答
来源圈子
更多
+ 订阅
文章排行榜
最热
最新
相关电子书
更多
文娱运维技术
立即下载
《SaaS模式云原生数据仓库应用场景实践》
立即下载
《看见新力量:二》电子书
立即下载