使用Python opencv实现视频与图片的相互转换


Posted in Python onJuly 08, 2019

因为最近要经常转换数据集进行实验,因此记录一下。

1、视频转图片

即为将视频解析为一帧一帧的图片:

import cv2
vc=cv2.VideoCapture("/home/hqd/PycharmProjects/1/1/19.MOV")
c=1
if vc.isOpened():
  rval,frame=vc.read()
else:
  rval=False
while rval:
  rval,frame=vc.read()
  cv2.imwrite('/home/hqd/PycharmProjects/1/1/19/'+str(c)+'.jpg',frame)
  c=c+1
  cv2.waitKey(1)
vc.release()

2、图片转视频

即为将图片转为视频,这里采用的帧率为30帧/秒:

import cv2import os
fps = 30
fourcc = cv2.VideoWriter_fourcc('M', 'J', 'P', 'G')
video_writer = cv2.VideoWriter(filename='./result.avi', fourcc=fourcc, fps=fps, frameSize=(1920, 1080))
for i in range(0,6000):
  p = i
  if os.path.exists('/home/hqd/PycharmProjects/1/qqqq/'+str(p)+'.jpg'):  #判断图片是否存在
    img = cv2.imread(filename='/home/hqd/PycharmProjects/1/qqqq/'+str(p)+'.jpg')
    cv2.waitKey(100)
    video_writer.write(img)
    print(str(p) + '.jpg' + ' done!')
video_writer.release()

总结

以上所述是小编给大家介绍的使用Python opencv实现视频与图片的相互转换 ,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对三水点靠木网站的支持!
如果你觉得本文对你有帮助,欢迎转载,烦请注明出处,谢谢!

Python 相关文章推荐
python通过urllib2爬网页上种子下载示例
Feb 24 Python
python标准算法实现数组全排列的方法
Mar 17 Python
Python 创建子进程模块subprocess详解
Apr 08 Python
pygame学习笔记(6):完成一个简单的游戏
Apr 15 Python
Python 使用os.remove删除文件夹时报错的解决方法
Jan 13 Python
基于Django与ajax之间的json传输方法
May 29 Python
Python paramiko模块使用解析(实现ssh)
Aug 30 Python
wxPython:python首选的GUI库实例分享
Oct 05 Python
使用遗传算法求二元函数的最小值
Feb 11 Python
Python日志syslog使用原理详解
Feb 18 Python
Python tkinter界面实现历史天气查询的示例代码
Aug 23 Python
python读取mnist数据集方法案例详解
Sep 04 Python
python基于paramiko将文件上传到服务器代码实现
Jul 08 #Python
Python脚本利用adb进行手机控制的方法
Jul 08 #Python
Python Pandas中根据列的值选取多行数据
Jul 08 #Python
详解python调用cmd命令三种方法
Jul 08 #Python
python3.7 使用pymssql往sqlserver插入数据的方法
Jul 08 #Python
Python绘制频率分布直方图的示例
Jul 08 #Python
Python编程实现tail-n查看日志文件的方法
Jul 08 #Python
You might like
用PHP将数据导入到Foxmail的实现代码
2010/09/05 PHP
使用PHP静态变量当缓存的方法
2013/11/13 PHP
PHP中redis的用法深入解析
2014/02/20 PHP
PHP实现懒加载的方法
2015/03/07 PHP
window.open()弹出居中的窗口
2007/02/01 Javascript
My Desktop :) 桌面式代码
2008/12/29 Javascript
javascript 兼容鼠标滚轮事件
2009/04/07 Javascript
Jquery Ajax学习实例5 向WebService发出请求,返回泛型集合数据的异步调用
2010/03/17 Javascript
jquery插件制作 提示框插件实现代码
2012/08/17 Javascript
采用call方式实现js继承
2014/05/20 Javascript
js动态创建标签示例代码
2014/06/09 Javascript
页面刷新时记住滚动条的位置jquery代码
2014/06/17 Javascript
Html5的placeholder属性(IE兼容)实现代码
2014/08/30 Javascript
jQuery实现的个性化返回底部与返回顶部特效代码
2015/10/30 Javascript
整理Javascript基础语法学习笔记
2015/11/29 Javascript
总结Javascript中的隐式类型转换
2016/08/24 Javascript
用最少的JS代码写出贪吃蛇游戏
2018/01/12 Javascript
详解开发react应用最好用的脚手架 create-react-app
2018/04/24 Javascript
JavaScript时间日期操作实例小结【5个示例】
2018/12/22 Javascript
vue悬浮可拖拽悬浮按钮的实例代码
2019/08/20 Javascript
JavaScript 严格模式(use strict)用法实例分析
2020/03/04 Javascript
JavaScript写个贪吃蛇小游戏(超详细)
2020/03/17 Javascript
Python获取当前公网ip并自动断开宽带连接实例代码
2018/01/12 Python
对Python 网络设备巡检脚本的实例讲解
2018/04/22 Python
python计算日期之间的放假日期
2018/06/05 Python
浅析Python 3 字符串中的 STR 和 Bytes 有什么区别
2018/10/14 Python
应用OpenCV和Python进行SIFT算法的实现详解
2019/08/21 Python
简单介绍一下pyinstaller打包以及安全性的实现
2020/06/02 Python
HTML5画渐变背景图片并自动下载实现步骤
2013/11/18 HTML / CSS
英国Amara家居法国网站:家居装饰,现代装饰和豪华礼品
2016/12/15 全球购物
廉政教育心得体会
2014/01/01 职场文书
大班开学家长寄语
2014/04/04 职场文书
男人帮观后感
2015/06/18 职场文书
使用vue-element-admin框架从后端动态获取菜单功能的实现
2021/04/29 Vue.js
基于Redis结合SpringBoot的秒杀案例详解
2021/10/05 Redis
MySQL中的 inner join 和 left join的区别解析(小结果集驱动大结果集)
2023/05/08 MySQL