使用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入门教程
Feb 08 Python
python笔记(2)
Oct 24 Python
Python自动重试HTTP连接装饰器
Apr 28 Python
基于Python数据可视化利器Matplotlib,绘图入门篇,Pyplot详解
Oct 13 Python
Python生成短uuid的方法实例详解
May 29 Python
python实现嵌套列表平铺的两种方法
Nov 08 Python
python 自动批量打开网页的示例
Feb 21 Python
pybind11和numpy进行交互的方法
Jul 04 Python
PyTorch的自适应池化Adaptive Pooling实例
Jan 03 Python
Pyqt5 关于流式布局和滚动条的综合使用示例代码
Mar 24 Python
python selenium 获取接口数据的实现
Dec 07 Python
Python采集壁纸并实现炫轮播
Apr 30 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
收音机术语解释
2021/03/01 无线电
一个MYSQL操作类
2006/11/16 PHP
PHP页面输出时js设置input框的选中值
2016/09/30 PHP
php修改数组键名的方法示例
2017/04/15 PHP
PHP实现多图上传和单图上传功能
2018/05/17 PHP
微信公众平台开发教程⑥ 微信开发集成类的使用图文详解
2019/04/10 PHP
Avengerls vs Newbee BO3 第二场2.18
2021/03/10 DOTA
javascript下给元素添加事件的方法与代码
2007/08/13 Javascript
JavaScript中链式调用之研习
2011/04/07 Javascript
jQuery实现按键盘方向键翻页特效
2015/03/18 Javascript
JS基于面向对象实现的放烟花效果
2015/05/07 Javascript
微信小程序开发教程-手势解锁实例
2017/01/06 Javascript
微信小程序实现倒计时补零功能
2018/07/09 Javascript
vuex2中使用mapGetters/mapActions报错的解决方法
2018/10/20 Javascript
优雅的elementUI table单元格可编辑实现方法详解
2018/12/23 Javascript
Vue通过getAction的finally来最大程度避免影响主数据呈现问题
2020/04/24 Javascript
nuxt 服务器渲染动态设置 title和seo关键字的操作
2020/11/05 Javascript
详解Python3中字符串中的数字提取方法
2017/01/14 Python
对pandas中iloc,loc取数据差别及按条件取值的方法详解
2018/11/06 Python
python aiohttp的使用详解
2019/06/20 Python
python算法与数据结构之冒泡排序实例详解
2019/06/22 Python
python保存字典和读取字典的实例代码
2019/07/07 Python
python 进程的几种创建方式详解
2019/08/29 Python
Python实现元素等待代码实例
2019/11/11 Python
python opencv实现gif图片分解的示例代码
2019/12/13 Python
python logging.basicConfig不生效的原因及解决
2020/02/20 Python
基于Python把网站域名解析成ip地址
2020/05/25 Python
加拿大健康、婴儿和美容产品在线购物:Well.ca
2016/11/30 全球购物
医务人员自我评价
2014/01/26 职场文书
办公室文员工作职责
2014/01/31 职场文书
课外小组活动总结
2014/08/27 职场文书
机关干部四风问题自查报告及整改措施
2014/10/26 职场文书
安全承诺书
2015/01/19 职场文书
小学少先队工作总结2015
2015/05/26 职场文书
公司备用金管理制度
2015/08/04 职场文书
Windows和Linux上部署Golang并运行程序
2022/04/22 Servers