python怎么将图片生成视频MP4

其他教程   发布日期:2023年11月15日   浏览次数:395

本篇内容主要讲解“python怎么将图片生成视频MP4”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“python怎么将图片生成视频MP4”吧!

    python图片生成视频MP4

    1. import os
    2. import cv2
    3. # 要被合成的多张图片所在文件夹
    4. # 路径分隔符最好使用“/”,而不是“”,“”本身有转义的意思;或者“”也可以。
    5. # 因为是文件夹,所以最后还要有一个“/”
    6. file_dir = 'C:/Users/YUXIAOYANG/Desktop/tset/'
    7. list = []
    8. for root ,dirs, files in os.walk(file_dir):
    9. for file in files:
    10. list.append(file) # 获取目录下文件名列表
    11. # VideoWriter是cv2库提供的视频保存方法,将合成的视频保存到该路径中
    12. # 'MJPG'意思是支持jpg格式图片
    13. # fps = 5代表视频的帧频为5,如果图片不多,帧频最好设置的小一点
    14. # (1280,720)是生成的视频像素1280*720,一般要与所使用的图片像素大小一致,否则生成的视频无法播放
    15. # 定义保存视频目录名称和压缩格式,像素为1280*720
    16. video = cv2.VideoWriter('C:/Users/YUXIAOYANG/Desktop/test.mp4',cv2.VideoWriter_fourcc('m', 'p', '4', 'v'),5,(1981,991))
    17. for i in range(1,len(list)):
    18. img = cv2.imread('C:/Users/YUXIAOYANG/Desktop/tset/'+list[i-1]) #读取图片
    19. print(img.shape)
    20. #img = cv2.resize(img,(1981,991)) #将图片转换为1280*720像素大小
    21. video.write(img) # 写入视频
    22. # 释放资源
    23. video.release()

    python图片与视频互转(亲测有效)

    图片转视频

    1.任务需求背景

    在标注数据的过程中,需要【反复】浏览大量图片(万张以上的数量级),确认图片中的目标类别以及室内户型布局。

    但是,在电脑上浏览图片有很大的不足:(a)需要持续点击鼠标或者键盘;(b)图片加载跟不上点击速度。

    值得注意的是:网上有很多代码(图片转视频),但是真正能用的几乎很少,本博文的代码经过测试,可以成功生成视频。

    2.代码依赖库

    1. opencv-python==4.5.2
    2. numpy==1.19.2
    3. globpython自带模块)

    3.代码实战

    基本步骤如下:

    • a. 使用

      1. glob
      获取路径下的所有图片;  
    • b.

      1. cv2.imread()
      读取所有图片;  
    • c. 将读取的图片存储在新的列表中,

      1. img_array
      ;  
    • d. 使用

      1. cv2.VideoWriter()
      创建
      1. VideoWriter
      对象,注意参数的设置;  
    • e. 使用

      1. cv2.VideoWriter().write()
      保存
      1. img_array
      中的每一帧图像到视频文件;  
    • f. 释放

      1. VideoWriter
      对象;
    1. import cv2
    2. import numpy as np
    3. import glob
    4. import os
    5. # 其它格式的图片也可以
    6. img_array = []
    7. for filename in glob.glob('E:/3DS1Data/20211118/29984CRL30V00067087/dataset/rgb/*.png'):
    8. img = cv2.imread(filename)
    9. height, width, layers = img.shape
    10. size = (width, height)
    11. img_array.append(img)
    12. # avi:视频类型,mp4也可以
    13. # cv2.VideoWriter_fourcc(*'DIVX'):编码格式
    14. # 5:视频帧率
    15. # size:视频中图片大小
    16. out = cv2.VideoWriter('E:/3DS1Data/20211118/29984CRL30V00067087/dataset/project-all.avi',
    17. cv2.VideoWriter_fourcc(*'DIVX'),
    18. 5, size)
    19. for i in range(len(img_array)):
    20. out.write(img_array[i])
    21. out.release()

    注意事项

    通过测试发现,Mp4格式的视频清晰度低于 Avi 视频的清晰度。

    以上就是python怎么将图片生成视频MP4的详细内容,更多关于python怎么将图片生成视频MP4的资料请关注九品源码其它相关文章!