使用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获取单个程序CPU使用情况趋势图
Mar 10 Python
Python读取指定目录下指定后缀文件并保存为docx
Apr 23 Python
python调用百度地图WEB服务API获取地点对应坐标值
Jan 16 Python
python获取txt文件词向量过程详解
Jul 05 Python
Python 依赖库太多了该如何管理
Nov 08 Python
解决pyshp UnicodeDecodeError的问题
Dec 06 Python
Windows上安装tensorflow  详细教程(图文详解)
Feb 04 Python
配置python的编程环境之Anaconda + VSCode的教程
Mar 29 Python
python继承threading.Thread实现有返回值的子类实例
May 02 Python
python使用for...else跳出双层嵌套循环的方法实例
May 17 Python
利用python3筛选excel中特定的行(行值满足某个条件/行值属于某个集合)
Sep 04 Python
python自动化测试三部曲之request+django实现接口测试
Oct 07 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
一个oracle+PHP的查询的例子
2006/10/09 PHP
PHP&MYSQL服务器配置说明
2006/10/09 PHP
一道求$b相对于$a的相对路径的php代码
2010/08/08 PHP
php实现高效获取图片尺寸的方法
2014/12/12 PHP
Yii中使用PHPExcel导出Excel的方法
2014/12/26 PHP
laravel 修改.htaccess文件 重定向public的解决方法
2019/10/12 PHP
js实现动态添加、删除行、onkeyup表格求和示例
2013/08/18 Javascript
JS格式化数字保留两位小数点示例代码
2013/10/15 Javascript
jquery插件jquery.nicescroll实现图片无滚动条左右拖拽的方法
2015/08/10 Javascript
nodejs 的 session 简单使用
2016/06/06 NodeJs
Angular 路由route实例代码
2016/07/12 Javascript
jQuery实现底部浮动窗口效果
2016/09/07 Javascript
关于webuploader插件使用过程遇到的小问题
2016/11/07 Javascript
Bootstarp基本模版学习教程
2017/02/01 Javascript
vue实现百度搜索下拉提示功能实例
2017/06/14 Javascript
详解利用 Vue.js 实现前后端分离的RBAC角色权限管理
2017/09/15 Javascript
jQuery实现百度图片移入移出内容提示框上下左右移动的效果
2018/06/05 jQuery
Vue使用NPM方式搭建项目
2018/10/25 Javascript
Vue 实现前端权限控制的示例代码
2019/07/09 Javascript
Vue两个版本的区别和使用方法(更深层次了解)
2020/02/16 Javascript
javascript中call,apply,bind的区别详解
2020/12/11 Javascript
[03:01]2014DOTA2国际邀请赛 DC:我是核弹粉,为Burning和国土祝福
2014/07/13 DOTA
[03:06]2018年度CS GO最具人气解说-完美盛典
2018/12/16 DOTA
[01:03:27]NAVI vs EG 2019国际邀请赛小组赛 BO2 第一场 8.15
2019/08/17 DOTA
[41:17]完美世界DOTA2联赛PWL S3 access vs CPG 第二场 12.13
2020/12/17 DOTA
python统计一个文本中重复行数的方法
2014/11/19 Python
Python机器学习k-近邻算法(K Nearest Neighbor)实例详解
2018/06/25 Python
使用matplotlib中scatter方法画散点图
2019/03/19 Python
Python3.7.0 Shell添加清屏快捷键的实现示例
2020/03/23 Python
Django实现图片上传功能步骤解析
2020/04/22 Python
css3 条纹化和透明化表格Firefox下测试成功
2014/04/15 HTML / CSS
高级销售员求职信
2013/10/25 职场文书
英语教育专业自荐信
2014/05/29 职场文书
代收款委托书范本
2014/10/01 职场文书
社保缴纳证明申请书
2014/11/03 职场文书
opencv用VS2013调试时用Image Watch插件查看图片
2021/07/26 Python