Python读取视频的两种方法(imageio和cv2)
作者:搬砖小怪兽 发布时间:2023-10-04 13:45:06
标签:python,读取视频,imageio,cv2
用python读取视频有两种主要方法,大家可依据自己的需求进行使用。
方法一:
使用imageio库,没有安装的可用pip安装或自己下载,安装好后重启终端即可调用。
import pylab
import imageio
#视频的绝对路径
filename = '/path/to/your/video.mp4'
#可以选择解码工具
vid = imageio.get_reader(filename, 'ffmpeg')
for im in enumerate(vid):
#image的类型是mageio.core.util.Image可用下面这一注释行转换为arrary
#image = skimage.img_as_float(im).astype(np.float32)
fig = pylab.figure()
fig.suptitle('image #{}'.format(num), fontsize=20)
pylab.imshow(image)
pylab.show()
方法二:
用cv2库,用这种方法的好处是返回的就是arrary,不用转换,但方法一可以指定显示某一帧,而这种方法是从头读到尾。
import numpy as np
import matplotlib.pyplot as plt
import pylab
import imageio
import skimage.io
import numpy as np
import cv2
cap = cv2.VideoCapture('/path/to/your/video.mp4')
while(cap.isOpened()):
ret, frame = cap.read()
cv2.imshow('image', frame)
k = cv2.waitKey(20)
#q键退出
if (k & 0xff == ord('q')):
break
cap.release()
cv2.destroyAllWindows()
大家可能注意到,两种方法的显示方法也是不一样的,这里不详细展开,实践一下便很清楚了。
来源:https://blog.csdn.net/aa846555831/article/details/52382173


猜你喜欢
- 写在前面:最近在做的person功能,由于后期系统中person人数较多,不利用查找person,故需求方将要求可以自己编辑每页显示的数目,
- 我最近也在研究MySQL性能优化的路上,那么今天也算个学习笔记吧!在小伙伴们开发的项目中,对于MySQL排查问题找出性能瓶颈来说,最容易发现
- 在JavaScript中对字符串进行转义和反转义操作,常用的方法莫过于使用encodeURI (decodeURI)、encodeURICo
- 示例: 创建Table CREATE TABLE [dbo].[xmlTable]( [id] [int] IDENTITY(1,1) NO
- 本文实例讲述了python妹子图简单爬虫实现方法。分享给大家供大家参考。具体如下:#!/usr/bin/env python#coding:
- 本文实例对比分析了python中lambda与def的用法。分享给大家供大家参考。具体分析如下:1、lambda用来创建匿名函数,不同于de
- 上个星期,大佬分享了一个验证身份证号合法性的库:id_validator,没空去试着用一下看看,今天有点时间,来试着用下这个库。1、首先,要
- 一、 软件配置安装必备爬虫环境软件:python 3.8pip install requestspip install beautifuls
- 平常我们使用js代码获取的时间都是客户端的时间,那么有什么办法在浏览器中显示的是服务器断的时间吗?请看下面代码:<span id=&q
- SQL语句更改表所有者SQL语句更改表所有者单个修改所有者sql语句如下:查询分析器输入:EXEC sp_changeobject
- 一.怎样删除一个表中某个字段重复的列呀,举个例子 表[table1] id name 1 &nb
- 最近看到了两行 JavaScript 代码,很受启发。1. 封装 DOM 属性在 JavaScript 中,我们可以获取HTML元素的属性值
- 关于如何区分艺术和设计的话题总是玄之又玄,并因此引发的争论也有很长一段时间。艺术家和设计师都基于相同的知识基础来创作视觉作品,但他们创作的理
- 本文实例讲述了Python解析json的方法。分享给大家供大家参考,具体如下:刚学习到Python中解析json的方法,觉得有必要在这里坐下
- 相机固定不动,通过标定版改动不同方位的位姿进行抓拍import cv2camera=cv2.VideoCapture(1)i = 0whil
- 视频加密流程图:后端获取保利威的视频播放授权token,提供接口api给前端参考文档:http://dev.polyv.net/2019/v
- 说明:原来安装的python为64位,故安装的pyinstaller和打包后的exe都为64位。而64位的exe文件在32位的win7操作系
- matplotlib窗口图标默认是matplotlib的标志,如果想修改怎么改呢?由于我选择的matplotlib后端是PyQT5,直接查看
- 方式一: os.fork()# -*- coding:utf-8 -*-"""pid=os.fork() &n
- 本文详细介绍了array_slice函数的详细用法以及一些常用的array_slice实例程序,分享给大家供大家参考。具体分析如下:arra