前言:
此刻各位老铁们对“python视频转码”大约比较珍视,朋友们都想要知道一些“python视频转码”的相关知识。那么小编同时在网络上汇集了一些有关“python视频转码””的相关资讯,希望看官们能喜欢,兄弟们一起来学习一下吧!1 说明:
======
1.1 图片来源:今日头条免费正版图库,下载林心如照片13张。
1.2 环境:python3.8,深度操作系统deepin-linux,微软编辑器vscode,opencv版本4.2.0。
1.3 向女神致敬,哎呀,暴露年龄了。
1.4 学习OpenCV图片转换视频的方法,复习python路径的2种方法。
2 方法一:OS法:
============
2.1 代码:
#第1步:导入模块import osimport cv2#第2步:参数设置#指定路径和文件夹path = '/home/xgj/Desktop/python-clock/pic/'#用os法设置路径filelist = os.listdir(path)fps = 1 #视频每秒1帧,数值越大速度越快size = (640, 480) #需要转为视频的图片的尺寸#第3步:生成视频和路径,生成视频参数设置#注意视频格式AVI,那么参数fourcc不同video = cv2.VideoWriter("/home/xgj/Desktop/python-clock/girl1.avi", cv2.VideoWriter_fourcc('I', '4', '2', '0'), fps, size)#读取图片for item in filelist: if item.endswith('.jpeg'): #找到路径中所有后缀名为.jpeg格式图片,注意其他格式需要上面修改 item = path + item img = cv2.imread(item) #修改图片大小,为指定的统一大小,否则图片大小不一致会失败 shrink = cv2.resize(img, size, interpolation=cv2.INTER_AREA) #写入图片为视频 video.write(shrink)video.release()cv2.destroyAllWindows()
2.2 效果视频:
3 知识点:
=======
3.1 OpenCV的cv2.VideoWriter_fourcc函数:
视频格式为:avi时cv2.VideoWriter_fourcc('I', '4', '2', '0')。
视频格式为:mp4时 cv2.VideoWriter_fourcc(*'MJPG')。
3.2 注意:
cv2.VideoWriter_fourcc(*'MJPG')
等同于:
cv2.VideoWriter_fourcc('M','J','P','G') #opencv 大于3.0版本
4 方法二:glob法
=============
4.1 代码:
# encoding: UTF-8import glob as gbimport cv2#指定路径和文件夹下的所以jpeg文件img_path = gb.glob("/home/xgj/Desktop/python-clock/pic/*.jpeg") #写入视频videoWriter = cv2.VideoWriter('/home/xgj/Desktop/python-clock/girl2.mp4', cv2.VideoWriter_fourcc(*'MJPG'), 2, (640,480))for path in img_path: img = cv2.imread(path) # 保证每张图片的分辨率一样,才能做出可以播放的视频 img = cv2.resize(img,(640,480)) videoWriter.write(img)
4.2 修改图片大小为指定法,也嵌入到代码中,注意与代码一不同。
4.3 python glob模块相关知识。
4.3.1 glob是python自带的一个操作文件的相关模块,功能比较少。
4.3.2 功能:
用它可以查找符合特定规则的文件路径名。
查找文件只用到三个匹配符:"*", "?", "[]"。
"*"匹配0个或多个字符;
"?"匹配单个字符;
"[]"匹配指定范围内的字符,如:[0-9]匹配数字。
4.3.3 glob.glob
可以对文件夹下所有文件进行遍历,并保存为一个list列表。
标签: #python视频转码