2011-04-07 102 views
5

我正在写一个python/django应用程序,它需要做图像处理,然后将图像组合成一个视频(每个图像是一个帧)。图像处理很简单。我正在使用PIL,但对于转换为视频部分,我卡住了。我发现pyffmpeg,但似乎只是将视频解码为帧,而不是相反。尽管我可能错过了一些东西。我也听说pythonMagick(imagemagick包装)可以做到这一点,但我似乎无法找到任何关于编码的文档。python图像帧到视频

这是运行在Linux服务器上,并且必须是python(因为这是应用程序所在)。

我应该使用什么?

回答

5

使用OpenCV和python绑定。有cv.WriteFrame功能。 Similar question and answer

+0

那么我没有彻底查看答案而设置了这个问题的赏金。当我做了OpenCV的快速检查时,我认为它是用于分析帧而不是创建视频。我做了一个测试,虽然与链接的答案有类似的代码,但很容易创建视频。 – 2011-05-06 12:36:09

2

您可以使用Popen只是在子流程中运行ffmpeg。

1

首先使用下面的命令来安装的ffmpeg:sudo易于安装的ffmpeg

import os 
os.system("ffmpeg -f image2 -r 1/5 -i ./images/swissGenevaLake%01d.jpg -vcodec mpeg4 -y ./videos/swissGenevaLake.mp4") 

详情:

上述代码创建三个影像视频文件,存储在图像文件夹中。每个图像在视频中播放5秒(因为参数:-r 1/5)。这三个文件名称分别为:“swissGenevaLake1.jpg”,“swissGenevaLake2.jpg”和“swissGenevaLake3.jpg”。

希望这会有所帮助。