更改.gif图像中每个像素的颜色数量?

时间:2017-04-23 12:44:50

标签: python image image-processing

是否可以在Python中将256色gif图像重新转换为128色或64色gif图像?

我尝试使用imageio库

import imageio

def myfunction(inputgif, outputgif, duration):
  gifimage = imageio.mimread(inputgif)
  for i in range(len(gifimage)):
     gifimage[i] = gifimage[i]/4

  with imageio.get_writer(outputgif, mode='I', duration=duration) as writer:
      for x in range(len(gifimage)):
        writer.append_data(gifimage[x])
  writer.close()

它有效,但是,问题是图像文件仍然认为“他的宇宙”是颜色的256个可能值(从0到255),而不是从0到64(因为我将所有值除以4 )。这使得图像变得更暗,而不是使用64(4位)可能的颜色。

我的目标是通过减少颜色数来获得有损数据压缩。

1 个答案:

答案 0 :(得分:0)

GIF格式仅支持8位调色板条目。

即使支持较少,节省的也是微不足道的:7位为12.5%,6位为25%。