|
from typing import List |
|
import os |
|
|
|
from PIL.Image import Image |
|
import cv2 |
|
import numpy as np |
|
|
|
|
|
def save_video(images_list: List[Image], video_path: str): |
|
"""Saves a video from a list of images |
|
|
|
Args: |
|
images_list (List[Image]): A list of PIL images. |
|
video_path (str): The path to save to video to. |
|
""" |
|
images = [np.array(img) for img in images_list] |
|
height, width, _ = images[0].shape |
|
|
|
fps = len(images) // 20 |
|
video = cv2.VideoWriter(video_path, 0, fps, (width, height)) |
|
|
|
for img in images: |
|
video.write(cv2.cvtColor(img, cv2.COLOR_RGB2BGR)) |
|
|
|
cv2.destroyAllWindows() |
|
video.release() |
|
|