如何将图片保存成视频(imageio、opencv和ffmpeg)

测试下来发现,imageio 速度比 cv2 的要慢,所以普通保存推荐 cv2,要gpu加速需要额外配置或者修改

imageio

底层也是调用的ffmpeg,以下是python代码

python 复制代码
import imageio
import os

# 读取要保存为视频的图片
images = []
for filename in os.listdir('path/to/images/folder'):
    images.append(imageio.imread('path/to/images/folder/' + filename))

# 指定保存视频的名称和帧率
video_name = 'output_video.mp4'
fps = 25

# 使用 imageio 保存视频
with imageio.get_writer(video_name, fps=fps) as video_writer:
    for image in images:
        video_writer.append_data(image)

在上面的代码中,我们首先使用 os.listdir() 函数获取要保存为视频的所有图片的文件名,然后使用 imageio.imread() 函数读取每个文件并将其添加到 images 列表中。接下来,我们指定要保存的视频的名称和帧率。最后,我们使用 imageio.get_writer() 函数创建一个视频写入器,然后使用 video_writer.append_data() 函数将每个图像添加到视频中。

这样,您就可以使用 imageio 库保存视频了。请确保您已经正确指定了要保存的图片路径和视频名称,并指定了正确的帧率。

cv2

python 复制代码
import cv2
import os

#图片路径
im_dir = '/home/x/out/xxx_imags'
#输出视频路径
video_dir = '/home/xxxx/out/xxxx.avi'
#帧率
fps = 30  
#图片数 
num = 426
#图片尺寸
img_size = (841,1023)

#fourcc = cv2.cv.CV_FOURCC('M','J','P','G')#opencv2.4
fourcc = cv2.VideoWriter_fourcc('M','J','P','G') #opencv3.0
videoWriter = cv2.VideoWriter(video_dir, fourcc, fps, img_size)

for i in range(1,num):
    im_name = os.path.join(im_dir, str(i).zfill(6)+'.jpg')
    frame = cv2.imread(im_name)
    videoWriter.write(frame)
    print im_name

videoWriter.release()
print 'finish'

ffmpeg

from : https://blog.csdn.net/xindoo/article/details/121451318

python 复制代码
ffmpeg -r 10 -f image2 -i %d.jpeg output1.mp4

GPU加速

可能能加速10倍以上,但是需要安装GPU版本
Ubuntu上安装ffmpeg-cuda加速
替换Python的imageio包中自带的ffmpeg以支持GPU编解码加速

https://www.jianshu.com/p/59da3d350488

相关推荐
向宇it1 小时前
【AI视频】生成AI短剧、漫剧
人工智能·ai·音视频·动画·ai视频·短剧
一抹烟霞2 小时前
# 视频隐空间基础
人工智能·音视频
jbk33113 小时前
画面重构,字幕配音原创,彻底改变视频指纹暗水印,剪映二次视频创作关键技术教程分享
人工智能·音视频·剪辑软件·剪映自动化软件
hz567893 小时前
实时音视频SDK选型指南:TRTC、WebRTC与音视频PaaS能力对比
安全·音视频·webrtc·实时音视频·信息与通信·paas
EasyDSS3 小时前
私有化音视频系统/视频直播点播EasyDSS一体化音视频平台助力校园全场景数字化转型
音视频
半壶清水3 小时前
PaddlePaddle、easyocr与OpenCV工具识别书法图片内容,自动批量重命名图片文件的方法
人工智能·opencv·ocr·paddlepaddle
南山有乔木7893 小时前
酷狗音乐如何转换MP3格式?kgg/kgm/kgma转mp3格式转换方法整理
音视频
searchforAI4 小时前
Ai好记 vs Get笔记:AI音视频笔记工具深度测评对比
人工智能·笔记·学习·ai·音视频·语音识别
sali-tec4 小时前
C# 基于OpenCv的视觉工作流-章81-弯脚检测
图像处理·人工智能·opencv·算法·计算机视觉
oort1234 小时前
VLStream 全开源可私有化的AI视频平台 真能解决传统项目的痛点吗? 太实用了
人工智能·开源·音视频