配置:

window10 64位系统
python3.6

cv2模块安装
pip install opencv-python

1、需求

之前使用cv2模块进行过视频截帧,但是现在试试将截帧的图片进行一个合并。

2、代码

1、注意事项

1、图片的大小必须都是一样的尺寸,和代码中的size一样
2、地址我的代码图片设置位jpg格式图片了,如图需要其他图片,请自己修改代码
3、视频我默认保存到图片的目录下了。

2、之际上代码:

import os

import cv2


def makeVideo(path, size):
    filelist = os.listdir(path)
    filelist2 = [os.path.join(path, i) for i in filelist]
    print(filelist2)
    fps = 1  # 我设定位视频每秒1帧,可以自行修改
    # size = (1920, 1080)  # 需要转为视频的图片的尺寸,这里必须和图片尺寸一致
    video = cv2.VideoWriter(path + "\\Video.avi", cv2.VideoWriter_fourcc('M', 'J', 'P', 'G'), fps,
                            size) 

    for item in filelist2:
        print(item)
        if item.endswith('.jpg'):
            print(item)
            img = cv2.imread(item)
            video.write(img)

    video.release()
    cv2.destroyAllWindows()
    print('视频合成生成完成啦')


if __name__ == '__main__':
    path = r'E:\000photo\photo'
    # 需要转为视频的图片的尺寸,必须所有图片大小一样,不然无法合并成功
    size = (1920, 1080)
    makeVideo(path, size)