imageio:如何提高输出gif的质量?

时间:2016-12-11 09:49:05

标签: python image animation gif freeimage

  • 我有一个.png(PIL)图片列表,我希望将它们组合成一个动画gif
  • 为此,我目前正在使用imageio
  • 但是,我无法找到一种方法来制作优质 GIF

据我所知,我可以更改两种类型的设置。用于读取.png的imageio.imread()设置和用于编写gif的imageio.mimwrite()设置。根据{{​​1}},

  1. imageio.help()仅为imageio.imread()PNG-PIL提供一个读取参数,其中包含布尔值。这对我的输出gif没有任何改变。
  2. ignoregamma可以指两种格式。第一个是imageio.mimwrite()。此格式的输出仅显示一帧,因此不合需要。 Output here
  3. GIF-PIL具有第二种格式imageio.mimwrite()。这产生了更有希望的输出,具有以下选项:
    • GIF-FI会生成一个包含指定帧数和帧速率的完整gif,但会产生“已损坏”的内容。有点质量Output here
    • 'quantizer':'wu'生成一个完整的GIF,其中包含更好的“更少损坏”和“#39;质量比'wu',但不能很好地处理颜色。请注意右下方的图例如何改变其颜色。 Output here
  4. 以下是我可以获得的最佳质量的相关代码('quantizer':'nq'GIF-FI

    nq

    使用一个字符串列表参数调用该函数,该参数包含要编译为gif的.png图像的完整路径。

1 个答案:

答案 0 :(得分:0)

GIF格式每帧只能处理256种颜色。 quantizer参数确定将用于查找这些颜色的方法。

控制使用哪种颜色的最佳方法可能是减少颜色数量(至256)。