我有一个关于从PIL加载函数打开的图像返回的像素值的问题。 我使用以下代码:

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

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

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

#1楼 票数:8 已采纳

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

  ask by alex translate from so

未解决问题?本站智能推荐:

3回复

PIL - 将 GIF 帧转换为 JPG

我尝试使用 Python Image Library 将 gif 转换为单个图像,但结果是奇怪的帧 输入 gif 是: 源图片 http://longcat.de/gif_example.gif 在我的第一次尝试中,我尝试将 Image.new 的图像转换为 RGB 图像,255,255,255
1回复

保存在python中时,为什么GIF像素值会更改?

我正在尝试使用LSB方法编写隐写术应用程序,到目前为止,它对于某些图像格式已经足够好了。 但是,它不适用于GIF图像,因为我注意到保存的gif具有几个不同的像素值(通常为+-1),而LSB方法依赖于更改最低有效位,因此,几个不同的值会导致解码算法无法正常运行。 我尝试过同时使用ima
2回复

调整GIF动画大小,pil / imagemagick,python

我想使用python和PIL或PythonMagick更改GIF动画图像的大小。 我找不到解决方案。 PIL和缩略图方法适用于jpg和png但不适用于gif。 ImageMagick有命令mogrify / convert -resize'1280x1024>'但我找不到文档,我不知
2回复

Python枕头从像素制作gif

我有图像和蓝色像素列表。 我想遍历蓝色像素,将它们更改为红色并从中制作 gif。 所以它一定是一条线,因此颜色从蓝色变为红色,但出了点问题 result.gif 它只是一条红线,没有任何动画
1回复

如何用PIL(python-imaging)创建透明的gif(或png)

试图用PIL 创建一个透明的gif。 到目前为止我有这个: 到目前为止,我发现的一切都是指操纵现有图像来调整透明度设置或将透明图像叠加到另一个上。 我只是想创建一个透明的GIF(然后绘制)。
1回复

在标头损坏的Python(PIL)中读取JPEG

我正在尝试在Python 2.7中打开jpeg文件, 这对我不起作用, 尽管尝试外部观看者时,它的打开效果还不错。 JpegImageFile._open一下,结果发现PIL的JpegImagePlugin.py文件中的JpegImageFile._open方法引发了Synta
2回复

Windows上的PIL和JPEG库

我已经从源代码构建了Python的PIL库(由于从安装程序可执行文件安装的版本中存在错误),并且可以从生成计算机上的jpg文件创建Image()对象,但是当我使用PyInstaller打包此Python应用程序时,该应用程序无法打开JPEG图像。 如PIL编码器jpeg所述,我是否没有正确构建
1回复

PIL显示gif中的所有先前帧

问题是我可以看到gif中的所有帧。 期望 :在具有5帧的gif的生命周期中,每帧的帧应该在一小部分时间内可见,并且在gif的末尾仅应该可见第5帧。 实际 :在我的情况下,在gif的结尾我可以看到所有帧1-2-3-4-5。 gif动画中有5个帧,所有帧都是gif格式(静态)我也