import cv2
import os
fourcc = cv2.VideoWriter_fourcc('m', 'p', '4', 'v') # 设置输出视频为mp4格式
# cap_fps是帧率,可以根据随意设置
cap_fps = 10
# 注意!!!
# size要和图片的size一样,但是通过img.shape得到图像的参数是(height,width,channel),但是此处的size要传的是(width,height),这里一定要注意注意不然结果会打不开,比如通过img.shape得到常用的图片尺寸
size = (688,550)
# 设置输出视频的参数,如果是灰度图,可以加上 isColor = 0 这个参数
# video = cv2.VideoWriter('results/result.avi',fourcc, cap_fps, size, isColor=0)
# video = cv2.VideoWriter('result.mp4', fourcc, cap_fps, size)
# 生成主目录下所有文件夹下的所有文件,生成视频
path = 'yourpath'
file_lst = os.listdir(path)
for filename in file_lst:
file_path=os.path.join(path,filename)
file_lst_1 =os.listdir(file_path)
resulename = filename + '.mp4'
video = cv2.VideoWriter(resulename, fourcc, cap_fps, size)
for filename_1 in file_lst_1:
img = cv2.imread(path + filename+'/'+filename_1)
video.write(img)
video.release()
print(f"finish{filename}")
# file_lst = os.listdir(path)
# for filename in file_lst:
# img = cv2.imread(path + filename)
# video.write(img)
# video.release()
生成主目录下所有文件夹下的所有文件,每个文件夹的图片生成一个视频