use*_*743 3 imagemagick image-conversion
我正在寻找一种方法将动画 GIF 分解为组成它的图像,并发现许多线程推荐:
convert -coalesce Dijkstra_Animation.gif djik.png
Run Code Online (Sandbox Code Playgroud)
我运行了这个命令,但它失败了。它只产生一个文件 ( djik.png
) 来启动,虽然它的扩展名是.png
,但它实际上是输入的 GIF... 出了什么问题?如何将多帧 GIF 分解为单个帧?
正确的命令应该是:
convert animated.gif output.png
Run Code Online (Sandbox Code Playgroud)
这将为动画 gif 的每一帧创建output-0、output-1、output-2等。
作为旁注,根据 GIF 的处理方式,您可能会或可能不会获得“完整”帧。某些 GIF 具有仅包含部分数据的帧。这些是您将用于-coalesce
重建每个单独帧的 GIF 类型,即
convert -coalesce animated.gif output.png
Run Code Online (Sandbox Code Playgroud)
也就是说,您可能希望仔细检查您拥有的文件是否确实是动画 GIF。有趣的是,我曾在giphy.com上遇到过明显的转换错误(他们将“GIF”存储为视频)导致只下载了一个帧,即使它仍然具有 .gif 扩展名。