Мне удалось извлечь кадры из видеофайла продолжительностью 297 секунд с помощью приведенного ниже кода, однако мне нужны только кадры с частотой кадров = 5. Извлеченные изображения должны иметь частоту 5 кадров, а общее количество кадров должно быть быть 298. Видео файл 30 кадров в секунду и в формате mp4.
import cv2
import os
vid = cv2.VideoCapture("/content/Dataset/video.mp4")
try:
if not os.path.exists('/content/data'):
os.makedirs('/content/data')
except OSError:
print ('Error: Creating directory of data')
currentframe = 0
while(True):
ret,frame = vid.read()
if ret:
name = '/content/data/frame' + str(currentframe) + '.jpg'
cv2.imwrite(name, frame)
currentframe += 1
if currentframe == 298:
break
vid.release()
cv2.destroyAllWindows()
print('Completed')