使用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 django 访问静态文件出现404或500错误
Jan 20 Python
Python设计模式之MVC模式简单示例
Jan 10 Python
Python实现爬虫从网络上下载文档的实例代码
Jun 13 Python
python使用循环打印所有三位数水仙花数的实例
Nov 13 Python
python3爬虫学习之数据存储txt的案例详解
Apr 24 Python
python 实现保存最新的三份文件,其余的都删掉
Dec 22 Python
python中sympy库求常微分方程的用法
Apr 28 Python
Keras 加载已经训练好的模型进行预测操作
Jun 17 Python
利用python下载scihub成文献为PDF操作
Jul 09 Python
浅谈Python3中print函数的换行
Aug 05 Python
python批量修改文件名的示例
Sep 27 Python
Selenium获取登录Cookies并添加Cookies自动登录的方法
Dec 04 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
Zend Studio去除编辑器的语法警告设置方法
2012/10/24 PHP
解析PHP跳出循环的方法以及continue、break、exit的区别介绍
2013/07/01 PHP
PHP关于htmlspecialchars、strip_tags、addslashes的解释
2014/07/04 PHP
中高级PHP程序员应该掌握哪些技术?
2016/09/23 PHP
json-lib出现There is a cycle in the hierarchy解决办法
2010/02/24 Javascript
javascript 面向对象 function类
2010/05/13 Javascript
修改jQuery Validation里默认的验证方法
2012/02/14 Javascript
Jquery 模拟用户点击超链接或者按钮的方法
2013/10/25 Javascript
javascript实现的元素拖动函数宿主为浏览器
2014/07/21 Javascript
JQuery 使用attr方法实现下拉列表选中
2014/10/13 Javascript
Bootstrap嵌入jqGrid,使你的table牛逼起来
2016/05/05 Javascript
jquery实现简单Tab切换菜单效果
2020/07/17 Javascript
jquery.multiselect多选下拉框实现代码
2016/11/11 Javascript
vue.js中mint-ui框架的使用方法
2017/05/12 Javascript
基于BootStrap的前端分页带省略号和上下页效果
2017/05/18 Javascript
BackBone及其实例探究_动力节点Java学院整理
2017/07/14 Javascript
解决canvas画布使用fillRect()时高度出现双倍效果的问题
2017/08/03 Javascript
JSON创建键值对(key是中文或者数字)方式详解
2017/08/24 Javascript
Vue使用json-server进行后端数据模拟功能
2018/04/17 Javascript
vue cli 3.0 搭建项目的图文教程
2019/05/17 Javascript
vue实现购物车案例
2020/05/30 Javascript
Python3.x爬虫下载网页图片的实例讲解
2018/05/22 Python
使用PIL(Python-Imaging)反转图像的颜色方法
2019/01/24 Python
selenium+Chrome滑动验证码破解二(某某网站)
2019/12/17 Python
next在python中返回迭代器的实例方法
2020/12/15 Python
HTML5中视频音频的使用详解
2017/07/07 HTML / CSS
使用HTML5 Canvas API控制字体的显示与渲染的方法
2016/03/24 HTML / CSS
美国宠物美容和宠物用品购物网站:Cherrybrook
2018/12/07 全球购物
企业行政文员岗位职责
2013/12/03 职场文书
装饰资料员岗位职责
2013/12/30 职场文书
中班上学期幼儿评语
2014/04/30 职场文书
初级党校心得体会
2014/09/11 职场文书
消防宣传标语大全
2015/08/03 职场文书
放假通知怎么写
2015/08/18 职场文书
Win11如何启用启动修复 ? Win11执行启动修复的三种方法
2022/04/08 数码科技
微信小程序 根据不同用户切换不同TabBar
2022/04/21 Javascript