微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

Python怎么从视频中截取某一帧?Python提取视频帧的方法是什么

视频和图片在计算机上都被称为媒体文件,而视频它本质上是由连续的图片按照时间轴顺序来组成的,而图片在视频之中被称之为帧。那么下面这篇文章会来详细讲解一下,python提取视频帧的方法,感兴趣的小伙伴可以一起来往下阅读学习哦。

1.python提取视频某一帧图片需要使用到的第三方库为opencv,因为它可以来对视频文件进行处理。先定义两个变量并分别复制为0和1,它们表示的意思就是视频帧数以及提取视频帧的频率,也就是按照多少帧提取一次,代码如下:

import cv2
import os
times = 0
frame_frequency = 1

2.然后需要再定义一个变量来保存视频帧图片提取出来之后保存在哪一个文件路径内容,并且要调用标准库os之中的模块path,判断这个文件路径的目录是否存在。如果不存在就将其创建出来,代码如下所示:

filepath = "./assets/intersection/temp"
if not os.path.exists(filepath):
  os.makedirs(filepath)

3.之后则是要调用opencv库中的VideoCapture()方法来读取视频文件,该方法之中如果传入的参数为0,那么就会将当前设备上的摄像头视频读取到。而这个读取出来的视频文件需要通过read()方法将每一帧的图片都取出来,代码示例如下所示:

camera = cv2.VideoCapture(video_path)
while True:
  times = times + 1
  res, image = camera.read()
  if times % frame_frequency == 0:
    cv2.imwrite(filepath + '\\' + str(times)+'.jpg', image)

以上代码就是在无限循环之中获取视频每一帧的图片,然后再将这个图片保存在文件夹之中。这些就是关于“Python怎么从视频中截取某一帧?Python提取视频帧的方法是什么”的全部内容了,希望对你有所帮助。

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。

相关推荐