使用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脚本将绝对url替换为相对url的教程
Apr 24 Python
Python常用的文件及文件路径、目录操作方法汇总介绍
May 21 Python
python各种语言间时间的转化实现代码
Mar 23 Python
Python编程之基于概率论的分类方法:朴素贝叶斯
Nov 11 Python
python微信好友数据分析详解
Nov 19 Python
在Python中COM口的调用方法
Jul 03 Python
python代码编写计算器小程序
Mar 30 Python
python爬虫 urllib模块发起post请求过程解析
Aug 20 Python
WxPython实现无边框界面
Nov 18 Python
Python TKinter如何自动关闭主窗口
Feb 26 Python
python进行参数传递的方法
May 12 Python
python实现图片九宫格分割的示例
Apr 25 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
fleaphp crud操作之findByField函数的使用方法
2011/04/23 PHP
php绘制一条直线的方法
2015/01/24 PHP
利用php抓取蜘蛛爬虫痕迹的示例代码
2016/09/30 PHP
PHP的new static和new self的区别与使用
2019/11/27 PHP
基于Jquery的仿照flash放大图片效果代码
2011/03/16 Javascript
DWZ刷新dialog解决方法
2013/03/03 Javascript
jQuery中removeData()方法用法实例
2014/12/27 Javascript
JavaScript中的标签语句用法分析
2015/02/10 Javascript
通过js获取上传的图片信息(临时保存路径,名称,大小)然后通过ajax传递给后端的方法
2015/10/01 Javascript
Bootstrap每天必学之标签与徽章
2015/11/27 Javascript
jquery实现简单的全选和反选功能
2016/01/02 Javascript
JS变量中有var定义和无var定义的区别以及es6中let命令和const命令
2017/02/19 Javascript
基于Bootstrap框架实现图片切换
2017/03/10 Javascript
详解如何在Vue2中实现组件props双向绑定
2017/03/29 Javascript
JavaScript中 DOM操作方法小结
2017/04/25 Javascript
JavaScript高阶函数_动力节点Java学院整理
2017/06/28 Javascript
vue获取dom元素注意事项
2017/12/28 Javascript
解决IE11 vue +webpack 项目中数据更新后页面没有刷新的问题
2018/09/25 Javascript
微信小程序从注册账号到上架(图文详解)
2019/07/17 Javascript
使用p5.js临摹动态图片
2019/11/04 Javascript
初学python数组的处理代码
2011/01/04 Python
Python中的Descriptor描述符学习教程
2016/06/02 Python
Python3.X 线程中信号量的使用方法示例
2017/07/24 Python
python+selenium实现京东自动登录及秒杀功能
2017/11/18 Python
一份python入门应该看的学习资料
2018/04/11 Python
树莓派使用python-librtmp实现rtmp推流h264的方法
2019/07/22 Python
python字符串分割及字符串的一些常规方法
2019/07/24 Python
Python进程间通信multiprocess代码实例
2020/03/18 Python
浅谈python 调用open()打开文件时路径出错的原因
2020/06/05 Python
如何通过安装HomeBrew来安装Python3
2020/12/23 Python
美国在线眼镜店:GlassesShop
2018/11/15 全球购物
应届生妇产科护士求职信
2013/10/27 职场文书
读书心得体会
2013/12/28 职场文书
士力架广告词
2014/03/20 职场文书
2014年护士长工作总结
2014/11/11 职场文书
Python+uiautomator2实现自动刷抖音视频功能
2021/04/29 Python