如何从一堆jpgs创建gif动画

Posted

技术标签:

【中文标题】如何从一堆jpgs创建gif动画【英文标题】:how to create gif animation from a stack of jpgs 【发布时间】:2011-09-07 23:46:48 【问题描述】:

我有大约 200 张 jpg 图片。我需要将它们堆叠起来,以便将它们转换为简单的动画 gif 图像。是否有任何免费工具可用于完成这项工作?我的操作系统是windows。 我对输出的质量不太在意。

【问题讨论】:

【参考方案1】:

尝试使用ImageMagick 的转换实用程序。过去,我曾用它从一组图像(任何格式)中创建动画 gif。

使用命令

convert -delay 20 -loop 0 *.jpg animated.gif

【讨论】:

umm.. 没有比这更轻松的等待工具了吗? Imagemagick 是此类任务的标准工具。这不完全是“轻量级”,但无论如何你是什么意思?这是一个成熟的命令行程序,可用于任何 Linux 发行版和其他平台。 @Jan-PhilipGehrcke 这需要花一些时间阅读文档,在文档中找到正确的选项,并进行一些试验和错误。我同意它不是最令人愉快的工具,但它功能强大且用途广泛。 (随着命令行程序的发展,convert 是更容易/更方便的程序之一。) 我一直认为 ImageMagick 是最好的工具。我相信你也可以使用 ffmpeg,但这也不是轻量级的,哈哈。【参考方案2】:

可能想看看 GiftedMotion:http://www.onyxbits.de/giftedmotion

【讨论】:

【参考方案3】:

ImageJ 和 FIJI 提供了强大的 GUI 来执行此操作(FIJI 是 ImageJ 的重新包,其中还包括一些广泛使用的插件)。这些功能强大(但免费!)的程序可能有点矫枉过正,但根据您的需要,这可能是可行的方法,因为这对生物学家来说是一项常见且至关重要的任务。

FIJI 还可以打开大量不同类型的图像,可以保存为 GIF 或 AVI,并且非常容易编写脚本(内部使用 Python 或 Java),用于自动执行自定义任务等。

分步说明(来自Here 和Here)如下:

    将您的图像放在一个文件夹中,并按顺序命名它们(例如,确保它们 以正确的顺序按字母顺序打开,也许通过添加 所需的帧号到文件名的开头)。 (在 MacOS 上,this automator action 可能会有所帮助) 在 FIJI 中,选择“文件 > 导入 > 图像序列...” 选择您的文件夹,然后选择任何选项(例如缩放图像) 使用结果窗口中的“播放”按钮预览视频 角落。 要更改帧率,请选择Image > Stacks > Animation > Animation Options...

    选择File > Save As > Animated GIF...AVI... 就完成了。

    对于GIF,您可以选择帧之间的延迟(即帧速率)和循环选项。对于AVI,您可以选择帧速率。

【讨论】:

如何使用 ImageJ / Fiji 和截图创建 gif:opensourceov.org/2017/04/creating-animated-gifs-using-imagej【参考方案4】:

如果您想要一个灵活的在线解决方案,我只使用了GIFmaker.me,效果很好。它允许您更改帧顺序、更改大小、设置速度和设置重复周期。完成后,您可以查看动画 GIF 并下载。

编辑:我刚刚使用了 GIFmaker 在其网站上引用的另一个在线工具。 GIFcreator 更加灵活,让您可以复制帧、更改每帧的延迟、删除帧和反转帧。它还具有更灵活的调整大小功能。

【讨论】:

GIFcreator 可以快速完成工作并拥有我需要的所有功能。【参考方案5】:

理论上这是可行的

ffmpeg -f image2 -i image%d.jpg video.avi
ffmpeg -i video.avi -pix_fmt rgb24 -loop_output 0 out.gif

【讨论】:

以上是关于如何从一堆jpgs创建gif动画的主要内容,如果未能解决你的问题,请参考以下文章

从一组 png 图像创建动画 gif

如何在 Java 中创建动画 gif?

使用 ImageMagick 创建的动画 gif 具有故障块颜色背景

如何在matlab中从一组图像中制作gif图像?

如何使用 PHP 冻结动画 gifs/转换为 jpg?

如何创建动画 GIF