用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读取视频流提取视频帧的两种方法的使用技巧和注意事项,需要的朋友参考一下 本文实例为大家分享了python读取视频流提取视频帧的具体代码,供大家参考,具体内容如下 方法一:通过imageio库和skimage库 1. 安装环境: pip install imageio pip install skimage 这时候会报错Pl
本文向大家介绍Python imageio读取视频并进行编解码详解,包括了Python imageio读取视频并进行编解码详解的使用技巧和注意事项,需要的朋友参考一下 读视频和写视频一直由于编解码的问题给程序员造成很多麻烦。对此进行了一些探索。用Python读取视频有两种主要方法,分别是基于imageio库和OpenCV,其中OpenCV加上ffmpeg的安装编译很麻烦,推荐大家使用第一种方法,不
本文向大家介绍python读取和保存视频文件,包括了python读取和保存视频文件的使用技巧和注意事项,需要的朋友参考一下 为了获取视频,应该创建一个 VideoCapture 对象。他的参数可以是设备的索引号,或者是一个视频文件。设备索引号就是在指定要使用的摄像头。 一般的笔记本电脑都有内置摄像头。所以参数就是 0。你可以通过设置成 1 或者其他的来选择别的摄像头。之后,你就可以一帧一帧的捕获视
本文向大家介绍python opencv 读取本地视频文件 修改ffmpeg的方法,包括了python opencv 读取本地视频文件 修改ffmpeg的方法的使用技巧和注意事项,需要的朋友参考一下 Python + opencv 读取视频的三种情况: 情况一:通过摄像头采集视频 情况二:通过本地视频文件获取视频 情况三:通过摄像头录制视频,再读取录制的视频 摄像头采集、本地视频文件的读取、写视频
本文向大家介绍Python读取键盘输入的2种方法,包括了Python读取键盘输入的2种方法的使用技巧和注意事项,需要的朋友参考一下 Python提供了两个内置函数从标准输入读入一行文本,默认的标准输入是键盘。如下: 1.raw_input 2.input raw_input函数 raw_input() 函数从标准输入读取一个行,并返回一个字符串(去掉结尾的换行符): 这将提示你输入任意字符串,然后
我有两个不同的方法,在两个不同的类中。我希望他们都能阅读同一行输入,并检查不同的内容。一个查找“给我冲杯咖啡”之类的说明,另一个查找不同的关键字,如“请”和“谢谢”(这些影响程序对我的反应): 然后我在我的主字符串中调用它们,只是为了测试它们: 我的控制台显示如下: 我知道发生了什么,但我想不出其他办法。我也尝试过使用同一个扫描仪,不同的字符串,但仍然不起作用。我怎样才能使这两种方法都能读取我的第