jupyter notebook 图片合成视频
import glob
import os
import cv2
import time
"""
图片合成视频
"""
from subprocess import call
def imgs_to_video(srcPath,size,dstPath):
fps =1
out_path = dstPath+str(int(time.time()))+".avi"
fourcc = cv2.VideoWriter_fourcc("I","4","2","0")
video_writer =cv2.VideoWriter(out_path,fourcc,fps,size)
imgs =os.listdir(srcPath)
for filename in imgs:
srcFile = os.path.join(srcPath,filename)
frame =cv2.imread(srcFile)
video_writer.write(frame)
video_writer.release()
"""
视频压缩,需在电脑安装ffmpeg
"""
dir =out_path.strip(".avi")
command ="ffmpeg -i %s.avi %s.mp4"%(dir,dir)
call(command.split())
print("success")
imgs_to_video("F:\jiujiang_picture",(3000,2000),"F:\jiujiang_picture")
- package: glob 、os、cv2、 time
- key;关键步骤和函数
- fps = 设置帧率
- 设置输出路径
- 设置编码格式
- 输出视频的全路径,编码方式,视频画面大小(需要与图片大小一致)
- 读取图片路径下的全部文件
- 读取文件打开文件
- 打开每一张图片 : 把图片写进视频
- .释放写操作