python提取视频帧并保存,python截取视频帧
在这个例子中,python分享了读取视频流和提取视频帧的具体代码。具体内容如下
方法通过图像库和图像库
1.安装环境:
pip安装图像
Pip安装sk映像
此时,请安装“sci kit-image` package ”,而不是“sk image ”)
因此,只需按照说明进行操作:
pip安装scikit-图像
环境已成功安装。
用python安装ffmpge(用于解码视频流)
导入图像
imageio . plugins . ffmpeg . download(
此时您可以得到一个提示:
imageio:‘ffmpeg。“Linux 64”不是wasnotfoundonyourcomputer下载itnow.try1 .从https://github . com/imageio-binaries/raw/master/ffmpeg/ffmpeg . linue下载
开始下载ffmpeg
注意:下载此文件时很容易断开连接。请拿下载工具下载,然后放在下一个路径。这样,该文件将被视为已下载。
路径:/root/。imageio/ffmpeg/ffmpeg.linux6
如果该行没有断开,则文件存储在上述路径中。
下次可以直接导入视频流。
使用imageio库提取视频帧
用法:
#编码:utf-8
进口实验室
导入图像
#带注释的代码只需要运行一次,然后默认下载完成。
# imageio . plugins . ffmpeg . download(
导入sk图像
进口编号为NP
#视频的绝对路径
filename=video/01_01.wmv
#您可以选择解码工具。
vid=imageio.get _ reader(文件名, ffmpeg )))))).
对于num,iminenumerate(vid):
#image的类型是mageio.core.util.Image,可以在下面的注释行中将其转换为arrary
打印即时消息(
image=skimage.img_as_float(im)。astype(NP.float64)))))))))))))).
图=pylab .图(
fig.suptitle(图片#{})。format (num),fontsize=20).
pylab.imshow(im)).
pylab.show(
2:通过cv2库
用法:
导入cv2
video _ full _ path= video/01 _ 01 . wmv
cap=cv2 . video capture(video _ full _ path))。
打印cap.isOpened(
frame_count=1
成功=真
while(成功) :
成功,frame=cap.read(
打印“读取新框架:”,成功
params=[]
# params . append(cv . cv _ im write _ pxm _ binary)).
Params.append(1)).
cv2 . im write( video _ % d.jpg % frame _ count,frame,params)))))))))))))).
帧计数=帧计数1
cap.release(
有一个问题。Cap.isopen))总是输出false,表示打开失败。不识字,问题还没解决。大神解决了我就告诉你!
以上是本文的全部内容,希望对大家的学习有所帮助。另外,希望大家多多支持编剧们。
郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。