[EMAIL PROTECTED] wrote: > I use im.getpixel((x,y)) to find out the colour of a pixel. > But how can I find out in which color model the the return value is? > > For example for png picture format > > im.getpixel((20,50)) gives the result 60. > > What does the value mean?
the im.mode attribute tells you what color model the image is using (see the documentation for details). > Is it possible to find out the RGB model values? assuming the mode is "P" (for 8-bit palette images), you can either convert the entire image to RGB and then pick out the values for the pixels you need image = im.convert("RGB") rgb = image.getpixel((x, y)) or crop out just the pixel you want and convert that one: rgb = im.crop((x, y, x+1, y+1)).convert("RGB").getpixel((0, 0)) or use the pixel value as an index into the palette array: p = im.getpalette() v = im.getpixel((x, y)) rgb = p[v*3:v*3+3] </F> _______________________________________________ Image-SIG maillist - Image-SIG@python.org http://mail.python.org/mailman/listinfo/image-sig