gpt4 book ai didi

python - PIL 保存时改变像素值

转载 作者:太空狗 更新时间:2023-10-29 22:16:33 26 4
gpt4 key购买 nike

这很简单。制作一个像素大的 RGB 图像。将像素值设置为 (a,b,c)。节省。问题是,保存的图像与 (a,b,c) 具有不同的像素值。通常,其中一个 channel 上有 +-1,就好像它是随机噪声一样,但它是一致的。继承人的代码:

from PIL import Image
newImg = Image.new('RGB', (1,1), "black")
pixels = newImg.load()
pixels[0,0] = (0,3,0)
newImg.save("point.jpg")
savedImage = Image.open("point.jpg")
pixelsSaved = savedImage.load()

print pixels[0,0]
print pixelsSaved[0,0]

输出结果是:(0, 3, 0)(1, 3, 0)

始终如一。

如果我使用 (4, 2, 0) 作为要保存的像素,则输出为:(4, 2, 0)(3, 2, 0)

和 (0,10,0) 给出:(0, 10, 0)(0, 10, 1)

例如。

为什么值在保存时会发生变化?我该如何预防?请帮忙。

谢谢。

最佳答案

将其另存为 .png.jpg 是一种有损压缩格式。

关于python - PIL 保存时改变像素值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11603528/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com