使用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 相关文章推荐
Java中重定向输出流实现用文件记录程序日志
Jun 12 Python
深入理解Python变量与常量
Jun 02 Python
OpenCV2.3.1+Python2.7.3+Numpy等的配置解析
Jan 05 Python
Python全排列操作实例分析
Jul 24 Python
使用numba对Python运算加速的方法
Oct 15 Python
Python2和Python3中urllib库中urlencode的使用注意事项
Nov 26 Python
python用opencv批量截取图像指定区域的方法
Jan 24 Python
django将数组传递给前台模板的方法
Aug 06 Python
解决Django 在ForeignKey中出现 non-nullable field错误的问题
Aug 06 Python
Python3并发写文件与Python对比
Nov 20 Python
Django如何使用asyncio协程和ThreadPoolExecutor多线程
Oct 12 Python
python 合并多个excel中同名的sheet
Jan 22 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
Windows下的PHP5.0详解
2006/11/18 PHP
Pain 全世界最小最简单的PHP模板引擎 (普通版)
2011/10/23 PHP
php循环语句 for()与foreach()用法区别介绍
2012/09/05 PHP
smarty表格换行实例
2014/12/15 PHP
php给一组指定关键词添加span标签的方法
2015/03/31 PHP
浅谈php错误提示及查错方法
2015/07/14 PHP
php上传大文件失败的原因及应对策略
2015/10/20 PHP
PHP实现限制IP访问及提交次数的方法详解
2017/07/17 PHP
jQuery 使用手册(五)
2009/09/23 Javascript
一样的table?不一样的table(可编辑状态table)
2012/09/19 Javascript
利用JS解决ie6不支持max-width,max-height问题的方法
2014/01/02 Javascript
jQuery遍历json中多个map的方法
2015/02/12 Javascript
js+html5实现canvas绘制圆形图案的方法
2015/06/05 Javascript
JavaScript子窗口调用父窗口变量和函数的方法
2015/10/09 Javascript
JavaScript实现的多种鼠标拖放效果
2015/11/03 Javascript
JS简单实现String转Date的方法
2016/03/02 Javascript
基于Bootstrap的Metronic框架实现页面链接收藏夹功能
2016/08/29 Javascript
Zabbix添加Node.js监控的方法
2016/10/20 Javascript
使用 Node.js 对文本内容分词和关键词抽取
2017/05/27 Javascript
使用JavaScript实现链表的数据结构的代码
2017/08/02 Javascript
使用FormData实现上传多个文件
2018/12/04 Javascript
jQuery实现动态生成年月日级联下拉列表示例
2019/05/11 jQuery
[01:28:44]DOTA2-DPC中国联赛定级赛 RNG vs iG BO3第一场 1月10日
2021/03/11 DOTA
Python内置的HTTP协议服务器SimpleHTTPServer使用指南
2016/03/30 Python
Python 专题五 列表基础知识(二维list排序、获取下标和处理txt文本实例)
2017/03/20 Python
python实现微信远程控制电脑
2018/02/22 Python
python实现批量按比例缩放图片效果
2018/03/30 Python
豪华床上用品、床单和浴室必需品:Peacock Alley
2019/09/04 全球购物
优秀团员个人的自我评价
2013/10/02 职场文书
售后服务经理岗位职责范本
2014/02/22 职场文书
清明节扫墓活动方案
2014/03/02 职场文书
农村改厕实施方案
2014/03/22 职场文书
负责人任命书范本
2014/06/04 职场文书
还在手动盖楼抽奖?教你用Python实现自动评论盖楼抽奖(一)
2021/06/07 Python
【海涛解说】pis亲自推荐,其实你从来不会玩NW
2022/04/01 DOTA
MySQL的表级锁,行级锁,排它锁和共享锁
2022/07/15 MySQL