使用opencv将视频帧转成图片输出


Posted in Python onDecember 10, 2019

本文做的是基于opencv将视频帧转成图片输出,由于一个视频包含的帧数过多,经常我们并不是需要它的全部帧转成图片,因此我们希望可以设置每隔多少帧再转一次图片(本文设置为30帧),若有人需求是只需要前多少帧,也可以类似的改写下代码即可。

本文代码如下:

#include <iostream>
#include "cv.h"
#include "opencv2/opencv.hpp"
 
using namespace std;
using namespace cv;
 
// 描述:将视频帧转成图片输出
void main()
{
	// 获取视频文件
	VideoCapture cap("J:\\CQH\\DLFR\\lab_face\\video\\DSC_0023.MOV");
 
	// 获取视频总帧数
	long totalFrameNumber = cap.get(CV_CAP_PROP_FRAME_COUNT);
	cout << "total frames: " << totalFrameNumber << endl;
 
	Mat frame;
	bool flags = true;
	long currentFrame = 0;
 
	while (flags){
		// 读取视频每一帧
		cap.read(frame);
 
		stringstream str;
		str << "cqh" << currentFrame << ".jpg";
		cout << "正在处理第" << currentFrame << "帧" << endl;
		printf("\n");
 
		// 设置每30帧获取一次帧
		if (currentFrame % 30 == 0){
			// 将帧转成图片输出
			imwrite("J:\\CQH\\DLFR\\lab_face\\videoToImages\\DSC_0023\\" + str.str(), frame);
		}
		// 结束条件
		if (currentFrame >= totalFrameNumber){
			flags = false;
		}
		currentFrame++;
	}
	
	system("pause");
}

运行结果如下:

使用opencv将视频帧转成图片输出

以上这篇使用opencv将视频帧转成图片输出就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
python列出目录下指定文件与子目录的方法
Jul 03 Python
玩转python爬虫之URLError异常处理
Feb 17 Python
python实现用户登录系统
May 21 Python
Python操作RabbitMQ服务器实现消息队列的路由功能
Jun 29 Python
浅析python中的分片与截断序列
Aug 09 Python
Diango + uwsgi + nginx项目部署的全过程(可外网访问)
Apr 22 Python
Python基于最小二乘法实现曲线拟合示例
Jun 14 Python
浅述python中深浅拷贝原理
Sep 18 Python
在pycharm中python切换解释器失败的解决方法
Oct 29 Python
python 实现将list转成字符串,中间用空格隔开
Dec 25 Python
Python try except异常捕获机制原理解析
Apr 18 Python
PyTorch中torch.tensor与torch.Tensor的区别详解
May 18 Python
django框架cookie和session用法实例详解
Dec 10 #Python
python selenium实现发送带附件的邮件代码实例
Dec 10 #Python
opencv设置采集视频分辨率方式
Dec 10 #Python
django框架forms组件用法实例详解
Dec 10 #Python
django框架auth模块用法实例详解
Dec 10 #Python
django框架中间件原理与用法详解
Dec 10 #Python
Django2 连接MySQL及model测试实例分析
Dec 10 #Python
You might like
php抓取网站图片并保存的实现方法
2015/10/29 PHP
简单谈谈PHP中的include、include_once、require以及require_once语句
2016/04/23 PHP
PHP设计模式之装饰器(装饰者)模式(Decorator)入门与应用详解
2019/12/13 PHP
javascript 自定义事件初探
2009/08/21 Javascript
extjs tabpanel限制选项卡数量实现思路及代码
2013/04/02 Javascript
判断某个字符在一个字符串中是否存在的js代码
2014/02/28 Javascript
JavaScript的Number对象的toString()方法
2015/12/18 Javascript
Angularjs使用directive自定义指令实现attribute继承的方法详解
2016/08/05 Javascript
利用CSS、JavaScript及Ajax实现图片预加载的三大方法
2017/01/22 Javascript
源码分析Vue.js的监听实现教程
2017/04/23 Javascript
Bootstrap 3多级下拉菜单实例
2017/11/23 Javascript
jquery.picsign图片标注组件实例详解
2018/02/02 jQuery
vue + vuex todolist的实现示例代码
2018/03/09 Javascript
使用D3.js+Vue实现一个简单的柱形图
2018/08/05 Javascript
使用weixin-java-tools完成微信授权登录、微信支付的示例
2018/09/26 Javascript
vue刷新页面时去闪烁提升用户体验效果的实现方法
2018/12/10 Javascript
详解微信小程序开发聊天室—实时聊天,支持图片预览
2019/05/20 Javascript
JavaScript实现简单计算器功能
2019/12/19 Javascript
ElementUI 修改默认样式的几种办法(小结)
2020/07/29 Javascript
vue动画—通过钩子函数实现半场动画操作
2020/08/09 Javascript
Vue 数据响应式相关总结
2021/01/28 Vue.js
Python多进程通信Queue、Pipe、Value、Array实例
2014/11/21 Python
关于python的bottle框架跨域请求报错问题的处理方法
2017/03/19 Python
解决phantomjs截图失败,phantom.exit位置的问题
2018/05/17 Python
对Python多线程读写文件加锁的实例详解
2019/01/14 Python
python实现的生成word文档功能示例
2019/08/23 Python
从pandas一个单元格的字符串中提取字符串方式
2019/12/17 Python
python图形界面开发之wxPython树控件使用方法详解
2020/02/24 Python
CSS3中使用RGBA设置透明度的示例
2015/08/04 HTML / CSS
什么是事务?为什么需要事务?
2012/01/09 面试题
2014年小学元旦活动方案
2014/02/12 职场文书
个人社会实践自我鉴定
2014/03/24 职场文书
2014年协会工作总结
2014/11/22 职场文书
2016猴年春节慰问信
2015/11/30 职场文书
简述python四种分词工具,盘点哪个更好用?
2021/04/13 Python
Nginx 安装SSL证书完成HTTPS部署
2022/04/28 Servers