python怎么将图片生成视频MP4
本篇内容主要讲解“python怎么将图片生成视频MP4”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“python怎么将图片生成视频MP4”吧!
python图片生成视频MP4
import osimport cv2# 要被合成的多张图片所在文件夹# 路径分隔符最好使用“/”,而不是“\”,“\”本身有转义的意思;或者“\\”也可以。# 因为是文件夹,所以最后还要有一个“/”file_dir = 'C:/Users/YUXIAOYANG/Desktop/tset/'list = []for root ,dirs, files in os.walk(file_dir): for file in files: list.append(file) # 获取目录下文件名列表# VideoWriter是cv2库提供的视频保存方法,将合成的视频保存到该路径中# 'MJPG'意思是支持jpg格式图片# fps = 5代表视频的帧频为5,如果图片不多,帧频最好设置的小一点# (1280,720)是生成的视频像素1280*720,一般要与所使用的图片像素大小一致,否则生成的视频无法播放# 定义保存视频目录名称和压缩格式,像素为1280*720video = cv2.VideoWriter('C:/Users/YUXIAOYANG/Desktop/test.mp4',cv2.VideoWriter_fourcc('m', 'p', '4', 'v'),5,(1981,991))for i in range(1,len(list)): img = cv2.imread('C:/Users/YUXIAOYANG/Desktop/tset/'+list[i-1]) #读取图片 print(img.shape) #img = cv2.resize(img,(1981,991)) #将图片转换为1280*720像素大小 video.write(img) # 写入视频 # 释放资源video.release()
python图片与视频互转(亲测有效)
图片转视频
1.任务需求背景
在标注数据的过程中,需要【反复】浏览大量图片(万张以上的数量级),确认图片中的目标类别以及室内户型布局。
但是,在电脑上浏览图片有很大的不足:(a)需要持续点击鼠标或者键盘;(b)图片加载跟不上点击速度。
值得注意的是:网上有很多代码(图片转视频),但是真正能用的几乎很少,本博文的代码经过测试,可以成功生成视频。
2.代码依赖库
opencv-python==4.5.2numpy==1.19.2glob(python自带模块)
3.代码实战
基本步骤如下:
a. 使用
glob
获取路径下的所有图片;  b.
cv2.imread()
读取所有图片;  c. 将读取的图片存储在新的列表中,
img_array
;  d. 使用
cv2.VideoWriter()
创建VideoWriter
对象,注意参数的设置;  e. 使用
cv2.VideoWriter().write()
保存img_array
中的每一帧图像到视频文件;  f. 释放
VideoWriter
对象;
import cv2import numpy as npimport globimport os# 其它格式的图片也可以img_array = []for filename in glob.glob('E:/3DS1Data/20211118/29984CRL30V00067087/dataset/rgb/*.png'): img = cv2.imread(filename) height, width, layers = img.shape size = (width, height) img_array.append(img)# avi:视频类型,mp4也可以# cv2.VideoWriter_fourcc(*'DIVX'):编码格式# 5:视频帧率# size:视频中图片大小out = cv2.VideoWriter('E:/3DS1Data/20211118/29984CRL30V00067087/dataset/project-all.avi', cv2.VideoWriter_fourcc(*'DIVX'), 5, size)for i in range(len(img_array)): out.write(img_array[i])out.release()
注意事项
通过测试发现,Mp4格式的视频清晰度低于 Avi 视频的清晰度。
到此,相信大家对“python怎么将图片生成视频MP4”有了更深的了解,不妨来实际操作一番吧!这里是编程网网站,更多相关内容可以进入相关频道进行查询,关注我们,继续学习!
免责声明:
① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。
② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341