使用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中用于处理字符串的center()方法
May 18 Python
浅谈Python的文件类型
May 30 Python
Python2.7编程中SQLite3基本操作方法示例
Aug 09 Python
用pandas中的DataFrame时选取行或列的方法
Jul 11 Python
python twilio模块实现发送手机短信功能
Aug 02 Python
Python一键查找iOS项目中未使用的图片、音频、视频资源
Aug 12 Python
FFrpc python客户端lib使用解析
Aug 24 Python
关于Python形参打包与解包小技巧分享
Aug 24 Python
Python获取当前脚本文件夹(Script)的绝对路径方法代码
Aug 27 Python
python DES加密与解密及hex输出和bs64格式输出的实现代码
Apr 13 Python
一文解决django 2.2与mysql兼容性问题
Jul 15 Python
如何在C++中调用Python
May 21 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 简单日历实现代码
2009/10/28 PHP
PHP获取浏览器信息类和客户端地理位置的2个方法
2014/04/24 PHP
PHP Warning: Module 'modulename' already loaded in问题解决办法
2015/03/16 PHP
基于php实现七牛抓取远程图片
2015/12/01 PHP
Yii2第三方类库插件Imagine的安装和使用
2017/07/06 PHP
Laravel Eloquent分表方法并使用模型关联的实现
2019/11/25 PHP
php计数排序算法的实现代码(附四个实例代码)
2020/03/31 PHP
jQuery 表单验证插件formValidation实现个性化错误提示
2009/06/23 Javascript
javascript 添加和移除函数的通用方法
2009/10/20 Javascript
20个非常有用的PHP类库 加速php开发
2010/01/15 Javascript
jQuery选中select控件 无法设置selected的解决方法
2010/09/01 Javascript
JS表单验证的代码(常用)
2016/04/08 Javascript
JS生成不重复的随机数组的简单实例
2016/07/10 Javascript
vue2.0实现倒计时的插件(时间戳 刷新 跳转 都不影响)
2017/03/30 Javascript
详解Vuejs2.0 如何利用proxyTable实现跨域请求
2017/08/03 Javascript
返回上一个url并刷新界面的js代码
2020/09/12 Javascript
Vue常用API、高级API的相关总结
2021/02/02 Vue.js
十个Python程序员易犯的错误
2015/12/15 Python
Python探索之URL Dispatcher实例详解
2017/10/28 Python
python实现点击按钮修改数据的方法
2019/07/17 Python
python实现猜数字游戏
2020/03/25 Python
python 实现将list转成字符串,中间用空格隔开
2019/12/25 Python
Python tkinter 下拉日历控件代码
2020/03/04 Python
Python字符串hashlib加密模块使用案例
2020/03/10 Python
Python grpc超时机制代码示例
2020/09/14 Python
4款Python 类型检查工具,你选择哪个呢?
2020/10/30 Python
css3制作彩色边线3d立体按钮的示例(css3按钮)
2014/05/06 HTML / CSS
中国专业的音频分享平台:喜马拉雅
2019/05/24 全球购物
美国在线鞋类零售商:LifeStride
2019/06/09 全球购物
爱国卫生月活动总结范文
2014/04/25 职场文书
交通文明倡议书
2014/05/16 职场文书
小学生读书活动总结
2014/06/30 职场文书
销售顾问工作计划书
2014/09/15 职场文书
2014年教师学期工作总结
2014/11/08 职场文书
文明倡议书
2015/01/19 职场文书
2015年班主任个人工作总结
2015/03/31 职场文书