使用Python实现跳帧截取视频帧

时间:2021-08-16 19:45:19

本文实例为大家分享了python跳帧截取视频帧的具体代码,供大家参考,具体内容如下

可以*设定时长来截取视频,经实测效果理想。期间遇到的一个麻烦是我的视频文件在d:盘,在原视频d盘目录上不能保存截取的图片文件,后改为在c:盘上保存,正常。具体原因不明,有网友知道原因所在,请告知。

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
import cv2
import os
 
def save_img():
 video_path =r'读入视频路径'
 videos = os.listdir(video_path)
 for video_name in videos:
   videopath=video_path+'\\'+video_name
   print(videopath)
   vc = cv2.videocapture(videopath) #读入视频文件 
   c = 1
   if vc.isopened(): # 判断是否正常打开
   rval, frame = vc.read()
   else:
   rval = false
   timef = 300 # 视频帧计数间隔频率
   a=1
   while rval: # 循环读取视频帧
   rval, frame = vc.read()
   if (c % timef == 0): # 每隔timef帧进行存储操作
    print(video_path+'\\' + str(a) + '.jpg')
    #不能在d:盘原视频目录上保存图像文件,原因不明
    cv2.imwrite(r'保存图片文件路径 '+'\\'+ str(a) + '.jpg', frame)
    cv2.imshow('video',frame)
    a+=1
   c = c + 1
   m=cv2.waitkey(1)
   vc.release()
save_img()

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持服务器之家。

原文链接:https://blog.csdn.net/weixin_41809469/article/details/86482231