如何将动画的.gif文件拆分为其组成框架?


44

如何轻松拆分动画的.gif文件?我想看每一帧。

我真的希望不要将每个框架都导出到目录中。如果可能,我想在一个应用程序中单独查看它们。

在Linux上可以吗?

Answers:


52

尝试使用The Gimp打开它们;我相信它将打开每帧一层的GIF动画。

您说您不想将所有帧都转储到目录中的文件中,但是无论如何我都会告诉您::安装ImageMagick或graphicsmagick,然后:

对于ImageMagick:

convert animation.gif target.png

对于graphicsmagick:

gm convert animation.gif target.png

它将帧写入target0.png,target1.png等。然后,您可以输入目录并运行eog,它将向您显示同一应用程序上的所有框架。当您不再需要框架时,只需rm target*.png


imagemagick太棒了!
fccoelho

1
imagemagic convert对我来说失败了,因为gif的每个图像似乎都被表示为一个新的透明背景层,而convert给了这些透明层:upload.wikimedia.org/wikipedia/commons/5/5d/AstarExample.gif
Ciro Santilli新疆改造中心法轮功六四事件

我在gimp中打开了gif,但是我仍然不知道如何单独查看每个帧-我只看到最后一帧。我正在使用此动画:/tmp/Native-Native-American-Nations-Territorial-Claims-over-NAFTA-countries-1750-2008.gif
nealmcb

3
GraphicsMagick需要具有可工作的形式gm convert some-image.gif +adjoin some-image%d.png。或者,gm convert some-image.gif -coalesce +adjoin some-image%d.png对于具有变化的偏移的大小变化的子帧。
l --marc l

1
指定convert-coalesce选项错过了用户期望的选项。
Marcus

41

如果各个框架具有透明区域并且彼此重叠,则可以将convert命令与“ -coalesce”选项一起使用,以生成一组文件target-0.png,target-1.png等,每个文件都合并前一个文件的序列图片:

convert -coalesce animation.gif target.png

1
很棒的评论,但需要解释。基本上,它解决了@cirosantilli使用ImageMagick将看起来喜欢的更新返回到特定屏幕区域时遇到的问题。-coalesce合并这些更新以完成渲染。
AnthonyVO 2014年

3
应该注意的是(从ImageMagick版本6.7.7开始)似乎存在一些内存泄漏:不要尝试-coalesce长时间的.gif屏幕录像,它可能会消耗所有可用的内存并可能挂起整个系统。
大约

4
您可以通过以下方式指定输出文件名:convert -coalesce animation.gif target.%04d.png
Trevor Boyd Smith

2

对我来说,与ImageMagick(版本信息:6.8.9-9 Q16 x86_64 2017-07-31

convert gif.gif gif.pdf

制作一个pdf文件,每页都是输入gif的框架,那么您可以在所选的pdf查看应用程序中逐帧浏览


这似乎过于复杂,不像OP想要的那样。
David Foerster

要使每个框架都作为.pdf页面中的内容,是一个好主意,只需考虑到此方法可能有问题,就需要调整应用程序
love.by.Jesus

2

使用mpv。在桌面上打开它。将gif拖入其中。使用s键拍摄所需/单个框架的屏幕截图。如果您的gif速度很快,您甚至可能会暂停。非常快捷的方法。

===========

您可能想先使用这些设置[一旦设置,就不必再次执行]

gedit ~/.config/mpv/mpv.conf

并输入并保存:

--screenshot-format 选项:jpg jpeg png(默认值:jpg)

获得最高的png质量:

--screenshot-format=png
--screenshot-png-compression=9

或者如果您想要jpg

--screenshot-jpeg-quality 整数(0到100)(默认值:90)

使用mpv --list-options 其他细节


嗨:)回到安德鲁46。尝试了金普,感到沮丧。mpv不能做很多事情:]
shantiq '18
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.