使用 ImageMagick 创建 GIF 图像时出错:异常和闪烁问题太多

Error at creating GIF Image with ImageMagick: too many exceptions and blinking problem

我有一个包含大量具有以下结构的 png 文件的目录:

image1.png
image2.png
...
image3372.png

我正在尝试使用 ImageMagick 创建 GIF 图像,所以在终端中我输入:

sudo apt-get install imagemagick
convert -delay 0.01 -loop 0 *.png myimage.gif

但是我有下一个错误:

...
convert-im6.q16: DistributedPixelCache '127.0.0.1' @ error/distribute-cache.c
/ConnectPixelCacheServer/244.
convert-im6.q16: cache resources exhausted `Image119.png' @ error/cache.c/OpenPixelCache/3984.
convert-im6.q16: too many exceptions (exception processing suspended).

并且创建的GIF不完整:

另外,它闪烁。我认为这是因为它认为 image18 和 image180 是连续的。我该如何解决?

我是运行Ubuntu18岁

编辑: xenoid 建议生成的新图像

  1. 100 frames/second 太过分了。您可以 运行 和 10 frames/sec 并将图像数除以 10(或者至少是标准的 25 frames/sec 然后除以 4)。
  2. *.png 由您的 shell 按字母顺序 展开和排序 ,因此如果您想要按编号顺序排列的帧,请用 0 填充名称:
for n in {1..3372} ; ; do mv image$n.png image$(printf "%04d" $n).png ; done
  1. convert(和其他 IM 命令)似乎使用内存缓存并具有其他自我强制限制(您可以使用 IM 的 identify 命令列出):
>>> identify -list resource
Resource limits:
  Width: 16KP
  Height: 16KP
  List length: 18.446744EP
  Area: 128MP
  Memory: 256MiB
  Map: 512MiB
  Disk: 1GiB
  File: 768
  Thread: 8
  Throttle: 0
  Time: unlimited

您可以提高一个人的上限运行:

convert -limit memory 1000  ...