我有一系列图像,我想从中创建视频。理想情况下,我可以为每一帧指定一个帧持续时间,但固定帧速率也可以。我在 wxPython 中执行此操作,因此我可以渲染到 wxDC,或者我可以将图像保存到文件中,例如 PNG。是否有 Python 库可以让我从这些帧创建视频(AVI、MPG 等)或动画 GIF?
编辑:我已经尝试过 PIL,但它似乎不起作用。有人可以用这个结论纠正我或建议另一个工具包吗?这个链接似乎支持了我关于 PIL 的结论:http://www.somethinkodd.com/oddthinking/2005/12/06/python-imaging-library-pil-and-animated-gifs/
最佳答案
我建议不要使用来自 visvis 的 images2gif,因为它在 PIL/Pillow 方面存在问题并且没有得到积极维护(我应该知道,因为我是作者)。
请改用 imageio ,它是为了解决这个问题而开发的,并且打算保留。
快速而肮脏的解决方案:
import imageio
images = []
for filename in filenames:
images.append(imageio.imread(filename))
imageio.mimsave('/path/to/movie.gif', images)
对于较长的电影,请使用流式方法:
import imageio
with imageio.get_writer('/path/to/movie.gif', mode='I') as writer:
for filename in filenames:
image = imageio.imread(filename)
writer.append_data(image)
关于python - 在 Python 中以编程方式生成视频或动画 GIF?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/753190/