有一个需求
将1500张图片合成一段60s的视频
输入1500张照片

代码如下
import os
import cv2
im_dir = "./images/"
video_dir = './video/'
if not os.path.exists(video_dir):
os.makedirs(video_dir)
fps = 25
frames = sorted(os.listdir(im_dir))
img = cv2.imread(os.path.join(im_dir, frames[0]))
img_size = (img.shape[1], img.shape[0])
video_dir = os.path.join(video_dir, 'video.avi')
fourcc = cv2.VideoWriter_fourcc('M', 'J', 'P', 'G')
videowriter = cv2.VideoWriter(video_dir, fourcc, fps, img_size)
for frame in frames:
f_path = os.path.join(im_dir, frame)
image = cv2.imread(f_path)
videowriter.write(image)
print(frame + " has been written!")
videowriter.release()
结果展示

本文介绍了一种使用Python将大量图片文件合成为视频的方法。通过代码示例展示了如何读取指定目录下的图片,并按照顺序将这些静态图像整合成一个连续播放的视频文件。此过程涉及设置帧率、确定图像尺寸及编写循环来逐帧写入。
1万+





