使用python-cv2实现视频的分解与合成的示例代码


Posted in Python onOctober 26, 2020

1.视频分解图片

我们使用cv2.VideoCapture来读取视频

import cv2
cap = cv2.VideoCapture('1.mp4')
isOpened = cap.isOpened  # 判断视频是否可读
print(isOpened)
fps = cap.get(cv2.CAP_PROP_FPS) # 获取图像的帧,即该视频每秒有多少张图片
width = int(cap.get(cv2.CAP_PROP_FRAME_WIDTH)) # 获取图像的宽度和高度
height = int(cap.get(cv2.CAP_PROP_FRAME_HEIGHT))
print(fps, width, height)
i = 0
while(isOpened):
  if i == 10:
    break
    
  # 读取每一帧,falg表示是否读取成功,frame为图片的内容
  (flag, frame) = cap.read()  
  filename = 'img' + str(i) + '.jpg' # 文件的名字
  if flag:
    cv2.imwrite(filename, frame, [cv2.IMWRITE_JPEG_QUALITY,100]) # 保存图片
  i += 1

2.图片合成视频

我们使用cv2.VideoWrite方法来创建一个video写入器

用cv2.VideoWriter_fourcc创建视频编解码器

要创建mp4类型的视频文件,视频编解码器为cv2.VideoWriter_fourcc('M', 'J', 'P', 'G')

import cv2
img = cv2.imread('img0.jpg')
width = img.shape[0]
height = img.shape[1]
size = (height, width)
print(size)

videoname = "2.mp4"  # 要创建的视频文件名称 
fourcc = cv2.VideoWriter_fourcc('M', 'J', 'P', 'G') # 编码器 
fps = 5 # 帧率

# 1.要创建的视频文件名称 2.编码器 3.帧率 4.size
videoWrite = cv2.VideoWriter(videoname,fourcc, fps, size)
for i in range(10):
  filename = 'img' + str(i) + '.jpg'
  img = cv2.imread(filename)
  videoWrite.write(img) # 写入

720 1280

到此这篇关于使用python-cv2实现视频的分解与合成的文章就介绍到这了,更多相关使用python-cv2实现视频的分解与合成内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章希望大家以后多多支持三水点靠木!

Python 相关文章推荐
Python测试人员需要掌握的知识
Feb 08 Python
python3中函数参数的四种简单用法
Jul 09 Python
python使用Matplotlib画条形图
Mar 25 Python
python打包生成的exe文件运行时提示缺少模块的解决方法
Oct 31 Python
对python中的乘法dot和对应分量相乘multiply详解
Nov 14 Python
python+opencv 读取文件夹下的所有图像并批量保存ROI的方法
Jan 10 Python
python适合人工智能的理由和优势
Jun 28 Python
PyQt Qt Designer工具的布局管理详解
Aug 07 Python
python函数enumerate,operator和Counter使用技巧实例小结
Feb 22 Python
Python3监控windows,linux系统的CPU、硬盘、内存使用率和各个端口的开启情况详细代码实例
Mar 18 Python
Python键鼠操作自动化库PyAutoGUI简介(小结)
May 17 Python
python中的被动信息搜集
Apr 29 Python
python递归函数用法详解
Oct 26 #Python
Python实现LR1文法的完整实例代码
Oct 25 #Python
Python操作word文档插入图片和表格的实例演示
Oct 25 #Python
python时间time模块处理大全
Oct 25 #Python
使用AJAX和Django获取数据的方法实例
Oct 25 #Python
Python Tkinter实例——模拟掷骰子
Oct 24 #Python
Python+OpenCV图像处理——图像二值化的实现
Oct 24 #Python
You might like
php curl的深入解析
2013/06/02 PHP
Symfony2使用第三方库Upload制作图片上传实例详解
2016/02/04 PHP
Yii2表单事件之Ajax提交实现方法
2017/05/04 PHP
PHP使用标准库spl实现的观察者模式示例
2018/08/04 PHP
javascript中获取选中对象的类型
2007/04/02 Javascript
JavaScript在IE中“意外地调用了方法或属性访问”
2008/11/19 Javascript
jquery实现文字由下到上循环滚动的实例代码
2013/08/09 Javascript
JS获取Table中td值的方法
2015/03/19 Javascript
JavaScript常用标签和方法总结
2015/09/01 Javascript
JS实现iframe自适应高度的方法示例
2017/01/07 Javascript
vue调用高德地图实例代码
2017/04/28 Javascript
利用JS制作万年历的方法
2017/08/16 Javascript
详谈innerHTML innerText的使用和区别
2017/08/18 Javascript
javascript原生封装一个淡入淡出效果的函数测试实例代码
2018/03/19 Javascript
vue excel上传预览和table内容下载到excel文件中
2019/12/10 Javascript
微信小程序学习总结(五)常见问题实例小结
2020/06/04 Javascript
[00:08]DOTA2勇士令状等级奖励“天外飞星”
2019/05/24 DOTA
Python科学计算环境推荐——Anaconda
2014/06/30 Python
Python 冒泡,选择,插入排序使用实例
2015/02/05 Python
Python中使用第三方库xlrd来写入Excel文件示例
2015/04/05 Python
Python的组合模式与责任链模式编程示例
2016/02/02 Python
Python 2.x如何设置命令执行的超时时间实例
2017/10/19 Python
python读出当前时间精度到秒的代码
2019/07/05 Python
pygame实现俄罗斯方块游戏(对战篇1)
2019/10/29 Python
快速解决Django关闭Debug模式无法加载media图片与static静态文件
2020/04/07 Python
Python如何使用正则表达式爬取京东商品信息
2020/06/01 Python
django rest framework使用django-filter用法
2020/07/15 Python
python爬取”顶点小说网“《纯阳剑尊》的示例代码
2020/10/16 Python
python批量生成身份证号到Excel的两种方法实例
2021/01/14 Python
雷曼兄弟的五金店:Lehman’s Hardware Store
2019/04/10 全球购物
公务员政审单位鉴定材料
2014/05/16 职场文书
孩子教育的心得体会
2014/09/01 职场文书
四查四看整改措施
2014/09/19 职场文书
党委干部批评与自我批评发言稿
2014/09/28 职场文书
工作感想范文
2015/08/07 职场文书
postgresql 删除重复数据案例详解
2021/08/02 PostgreSQL