python将文件夹下所有png图片转化为MP4视频-泓源视野

python将文件夹下所有png图片转化为MP4视频

#for python3 et colab blender
#author h4ckg3h2y1_lvwuwei_byy3.com
#find demo.avi in content dir
import cv2
import glob
def resize(img_array, align_mode):
    _height = len(img_array[0])
    _width = len(img_array[0][0])
    for i in range(1, len(img_array)):
        img = img_array[i]
        height = len(img)
        width = len(img[0])
        if align_mode == 'smallest':
            if height < _height:
                _height = height
            if width < _width:
                _width = width
        else:
            if height > _height:
                _height = height
            if width > _width:
                _width = width
    for i in range(0, len(img_array)):
        img1 = cv2.resize(img_array[i], (_width, _height), interpolation=cv2.INTER_CUBIC)
        img_array[i] = img1
    return img_array, (_width, _height)
def images_to_video(path):
    img_array = []
    for filename in glob.glob(path+'/*.png'):
        img = cv2.imread(filename)
        if img is None:
            print(filename + " is error!")
            continue
        img_array.append(img)
    # 图片的大小需要一致
    img_array, size = resize(img_array, 'largest')
    fps = 1
    out = cv2.VideoWriter('demo.avi', cv2.VideoWriter_fourcc(*'DIVX'), fps, size)
    for i in range(len(img_array)):
        out.write(img_array[i])
    out.release()
def main():
    path = "/gdrive/MyDrive/blender/image"
    images_to_video(path)
if __name__ == "__main__":
    main()
本文由 泓源视野 作者:admin 发表,其版权均为 泓源视野 所有,文章内容系作者个人观点,不代表 泓源视野 对观点赞同或支持。如需转载,请注明文章来源。
1

发表评论

Protected with IP Blacklist CloudIP Blacklist Cloud
您是第823454 位访客, 您的IP是:[172.70.34.63]