1

有没有一种编程方法可以将两个图像转换为动画序列(例如,动画 GIF),如下例所示?

来自 memrise.com,在两张图片之间显示动画 GIF

该图像序列取自http://memrise.com课程,似乎没有手动编辑的帧,但似乎使用某种形状变形算法自动转换。是否有一个通用术语来描述这样的动画或算法?给定一对图像,ImageMagick 或 Photoshop/Gimp 中是否有生成此类动画的功能?

理想情况下,该技术可以是可编写脚本的,因此我可以为几对起始图像创建动画。

编辑:我刚刚被告知 Gimp 在 Filters->Animation->Blend 下的工具,它似乎与 jQuery morph 做同样的事情:每一帧i都是start + (finish - start)/N*i. 换句话说,您将每个像素独立地从开始值过渡到结束值,而没有任何形状变形。给出的示例更加复杂,因为它修改了两个图像的轮廓以实现其引人注目的效果。

其他示例:

4

4 回答 4

2

虽然这是一个老问题,但由于提到了 ImageMagick,对于从谷歌来到这里的任何人来说,可能值得看看这个名为 shapemorph 的 imagemagick 插件

于 2014-12-06T11:56:30.377 回答
1

GIMP 不能直接执行此操作,但多年来,第三方发布的一系列(现在维护不善)插件可以执行此操作。搜索这个的关键词是“morph”——你应该找到一堆独立的程序来做这件事,从“免费”到成熟的自由软件,比如xmorph

于 2012-12-06T11:21:44.843 回答
1

给定成对的矢量文件(.wmf 扩展名),可以在 Visual Basic for Applications 中使用 shapenodes 的线性插值来为 GIF 动画创建帧,尽管这需要一些时间来解释。有关一些示例,请参见

http://www.giless.co.uk/animatorMorphGIFs.htm(就像幻灯片一样)

从那以后,我也做了一些改进!

于 2014-07-12T13:17:15.220 回答
1

我编写了一个不需要设置手动关键点并且不限于域(如面孔)的工具。无论如何,图像必须相似(例如,从同一角度看的两张脸或两辆汽车)。它仍在进行中,因此结果有时不是很好,或者您必须摆弄参数才能获得良好的结果。

https://github.com/kallaballa/罂粟

火焰到字形变形

我使用以下命令行生成了上述动画:

poppy -o flame.mkv -c30 -p30 -f60 flame.png glyph.png flame.png

于 2022-02-20T20:19:38.330 回答