GIF和JPEG的Python和PIL像素值不同

时间:2011-04-27 05:58:25

标签: python python-imaging-library gif jpeg

我对使用PIL加载功能打开的图像返回的像素值有疑问。我使用以下代码:

frame = Image.open(fname).load()
a = frame[10, 10]

如果我加载GIF图像,a是整数值43.但如果我将图像转换为JPEG并重新运行代码,则a是元组(253, 254, 100)

为什么呢?我怎样才能将(253, 254, 100)转换回43?

感谢。

1 个答案:

答案 0 :(得分:7)

GIF是托盘化的,而JPEG是RGB。转换图像的行为处理调色板,因此您必须查看GIF中的调色板条目以找到与所需颜色最接近的匹配。