Esto es tan simple como se pone. Haga una imagen RGB, un píxel grande. Establezca el valor de píxel en (a, b, c). Salvar. El problema es que la imagen guardada tiene un valor de píxel diferente a continuación (a, b, c). Usualmente, con + -1 en uno de los canales, como si fuera ruido aleatorio, pero es consistente. Heres el código:PIL cambia el valor de píxel al guardar
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]
La salida de este es: (0, 3, 0) (1, 3, 0)
consistente.
Si uso (4, 2, 0) que el píxel para guardar, la salida es: (4, 2, 0) (3, 2, 0)
y (0,10, 0) da: (0, 10, 0) (0, 10, 1)
por ejemplo.
¿Por qué cambia el valor al guardar? ¿Cómo lo evito? Por favor ayuda.
Gracias.
Gracias a ton hombre! ¡¡¡¡Te amo!!!! – void