Python读取视频的两种方法(imageio和cv2)


Posted in Python onApril 15, 2018

用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()

大家可能注意到,两种方法的显示方法也是不一样的,这里不详细展开,实践一下便很清楚了。

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Python 相关文章推荐
python练习程序批量修改文件名
Jan 16 Python
零基础写python爬虫之爬虫编写全记录
Nov 06 Python
Python标准库之sqlite3使用实例
Nov 25 Python
python编写爬虫小程序
May 14 Python
Python生成随机验证码的两种方法
Dec 22 Python
Python实现去除列表中重复元素的方法小结【4种方法】
Apr 27 Python
Python爬虫框架scrapy实现的文件下载功能示例
Aug 04 Python
详解将Django部署到Centos7全攻略
Sep 26 Python
python基于gevent实现并发下载器代码实例
Nov 01 Python
基于python+selenium的二次封装的实现
Jan 06 Python
详解python中GPU版本的opencv常用方法介绍
Jul 24 Python
Python中qutip用法示例详解
Oct 02 Python
python2.7实现FTP文件下载功能
Apr 15 #Python
python实现多线程网页下载器
Apr 15 #Python
Python实现定时精度可调节的定时器
Apr 15 #Python
Python编写一个优美的下载器
Apr 15 #Python
python实现音乐下载器
Apr 15 #Python
tensorflow 1.0用CNN进行图像分类
Apr 15 #Python
tensorflow学习笔记之mnist的卷积神经网络实例
Apr 15 #Python
You might like
一个php作的文本留言本的例子(一)
2006/10/09 PHP
ecshop 订单确认中显示省市地址信息的方法
2010/03/15 PHP
有关js的变量作用域和this指针的讨论
2010/12/16 Javascript
jQuery中实现动画效果的基本操作介绍
2013/04/16 Javascript
jQuery extend 的简单实例
2013/09/18 Javascript
理解javascript正则表达式
2016/03/08 Javascript
JS函数arguments数组获得实际传参数个数的实现方法
2016/05/28 Javascript
js本地图片预览实现代码
2016/10/09 Javascript
详解Angular-cli生成组件修改css成less或sass的实例
2017/07/27 Javascript
vue.js框架实现表单排序和分页效果
2017/08/09 Javascript
vue注册组件的几种方式总结
2018/03/08 Javascript
Vue 源码分析之 Observer实现过程
2018/03/29 Javascript
Vue项目中使用jsonp抓取跨域数据的方法
2019/11/10 Javascript
JS函数基本定义与用法示例
2020/01/15 Javascript
javascript设计模式 ? 简单工厂模式原理与应用实例分析
2020/04/09 Javascript
Vue切换Tab动态渲染组件的操作
2020/09/21 Javascript
Python中使用异常处理来判断运行的操作系统平台方法
2015/01/22 Python
python使用三角迭代计算圆周率PI的方法
2015/03/20 Python
Python编程实现两个文件夹里文件的对比功能示例【包含内容的对比】
2017/06/20 Python
Python 3.x 判断 dict 是否包含某键值的实例讲解
2018/07/06 Python
使用Python做定时任务及时了解互联网动态
2019/05/15 Python
基于TensorFlow中自定义梯度的2种方式
2020/02/04 Python
详解基于 Canvas 手撸一个六边形能力图
2019/09/02 HTML / CSS
Gap加拿大官网:Gap Canada
2017/08/24 全球购物
干部对照检查材料范文
2014/08/26 职场文书
乡镇干部个人对照检查材料思想汇报(原创篇)
2014/09/28 职场文书
2015年党员公开承诺书范文
2015/01/22 职场文书
培训督导岗位职责
2015/04/10 职场文书
小学生手册家长意见
2015/06/03 职场文书
申论不会写怎么办?教您掌握这6点思维和原则
2019/07/17 职场文书
详解Python 3.10 中的新功能和变化
2021/04/28 Python
MySQL中VARCHAR与CHAR格式数据的区别
2021/05/26 MySQL
MySQL中出现乱码问题的终极解决宝典
2021/05/26 MySQL
Mysql 如何实现多张无关联表查询数据并分页
2021/06/05 MySQL
python实现手机推送 代码也就10行左右
2022/04/12 Python
Redis基本数据类型哈希Hash常用操作命令
2022/06/01 Redis