【Python】保存文件夹下所有视频文件的每一帧

 1 import cv2
 2 import os
 3 
 4 video_path = './video'
 5 out_frame_path = os.path.join(os.path.dirname(os.path.abspath(__file__)), 'frame_output')
 6 if not os.path.exists(out_frame_path):
 7     os.makedirs(out_frame_path)
 8 print('out_frame_path', out_frame_path)
 9 files = []
10 list = os.listdir(video_path)
11 print('list', list)
12 for i in range(len(list)):
13     item = os.path.join(video_path, list[i])
14     files.append(item)
15 print('files',files)
16 for k,file in enumerate(files):
17     frame_dir = os.path.join(out_frame_path, '%d'%(k+1))
18     if not os.path.exists(frame_dir):
19         os.makedirs(frame_dir)
20     cap = cv2.VideoCapture(file)
21     j = 0
22     print('start prossing NO.%d video' % (k + 1))
23     while True:
24         ret, frame = cap.read()
25         if ret:
26             cv2.imwrite(os.path.join(frame_dir, '%d.jpg'%j), frame)
27             j += 1
28         else:
29             cap.release()
30             break
31     print('prossed NO.%d video'%(k+1))

猜你喜欢

转载自www.cnblogs.com/DJames23/p/12706176.html