Как сохранить из видео каждый 15 кадр как фото в папку на python?

Пользователь

от linnea , в категории: Python , 7 месяцев назад

Как сохранить из видео каждый 15 кадр как фото в папку на python?

Facebook Vk Ok Twitter LinkedIn Telegram Whatsapp

1 ответ

Пользователь

от clement.erdman , 7 месяцев назад

@linnea 

Необходимо использовать библиотеку OpenCV для работы с видео и извлечения кадров. Вот пример кода, который позволяет сохранить каждый 15-й кадр в указанную папку:

 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
import cv2

def extract_frames(video_path, output_folder):
    # Загрузка видео
    vidcap = cv2.VideoCapture(video_path)
    success,image = vidcap.read()
    
    # Переменная для отслеживания текущего кадра
    current_frame = 1
    
    # Цикл для извлечения и сохранения кадров
    while success:
        # Сохранение каждого 15-го кадра
        if current_frame % 15 == 0:
            cv2.imwrite(f"{output_folder}/frame{current_frame}.jpg", image)  # Сохранение кадра в папку
            
        # Переход к следующему кадру
        success,image = vidcap.read()
        current_frame += 1

    vidcap.release()
    cv2.destroyAllWindows()

# Пример использования функции
video_path = "путь_к_видео.mp4"
output_folder = "путь_к_папке_для_фото"
extract_frames(video_path, output_folder)


Важно убедиться, что в вашем проекте установлена библиотека OpenCV, чтобы код работал корректно.