Get pixel's RGB using PIL
image, pixel, python, python-imaging-library, rgb
Solution
Yes, this way:
im = Image.open('image.gif')
rgb_im = im.convert('RGB')
r, g, b = rgb_im.getpixel((1, 1))
print(r, g, b)
(65, 100, 137)
The reason you were getting a single value before with `pix[1, 1]` is because GIF pixels refer to one of the 256 values in the GIF color palette.
See also this SO post: Python and PIL pixel values different for GIF and JPEG and this PIL Reference page contains more information on the `convert()` function.
By the way, your code would work just fine for `.jpg` images.
Problem
Is it possible to get the RGB color of a pixel using PIL? I'm using this code: ``` im = Image.open("image.gif") pix = im.load() print(pix[1,1]) ``` However, it only outputs a number (e.g. `0` or `1`) and not three numbers (e.g. `60,60,60` for R,G,B). I guess I'm not understanding something about the function. I'd love some explanation. Thanks a lot.