Статья Автор: Деникина Наталья Владимировна

Создание GIF из MP4

Создание GIF из MP4

from PIL import Image

filename = 'moving_circle.mp4'
# Чтение видео и создание GIF
cap = cv2.VideoCapture('wave_effect.mp4')
frames = []

while cap.isOpened():
    read_ok, frame = cap.read()
    if not read_ok:
        break
    frame_rgb = cv2.cvtColor(frame, cv2.COLOR_BGR2RGB)
    img = Image.fromarray(frame_rgb)
    frames.append(img)

cap.release()

# Сохранение в GIF
frames[0].save('moving_circle.gif', save_all=True, append_images=frames[1:], duration=50, loop=0)

OpenCV не предоставляет прямого метода для создания GIF-файлов. Однако, вы можете использовать OpenCV совместно с библиотекой Pillow (PIL) для конвертации кадров в GIF. Вот как это можно сделать, как в вашем примере:

  1. Чтение видео с помощью OpenCV.
  2. cv2.cvtColor(frame, cv2.COLOR_BGR2RGB) Преобразование каждого кадра из BGR в RGB.
  3. Image.fromarray(frame_rgb) Создание объекта Image из массива. 
  4. frames.append(img) Добавление всех кадров в список.
  5. frames[0].save('wave_effect.gif', save_all=True, append_images=frames[1:], duration=50, loop=0): Сохраняет список изображений в GIF с заданной длительностью кадров и зацикливанием. 
Пропустить Навигационные Ссылки.
Чтобы оставить комментарий нужна авторизация
Печать