Palette and alpha

Andres Moreira <[email protected]>
Newsgroups gmane.comp.python.image
Message-ID <20091026184908.GA5945@atlantis>
Hi all, 

 I'm using the below code to extract colors, but now, I need to extract colours with 
 the alpha channel. 

 I've read the PIL Doc and googling a lot, and I didn't find any information of 
 how to load a RGBA palette, so the extractcolours method can couple with image
 alpha sections.
 
    def load_palette(colour_map):
        mapim = Image.open(colour_map)
        palette = [color[:3] for _, color in mapim.getcolors()]

        # Flatten colors to be accepted by PIL
        palette = tuple(reduce(lambda a, b: a+b, palette))

        # create palette
        self.impalette = Image.new("P", (1, 1)) 
        self.impalette.putpalette(palette)

    def extractcolours(filename):
        pilimage = Image.open(filename)
        im_quantized = pilimage.convert("RGB").quantize(palette=self.impalette)
        im_in_rgba = im_quantized.convert("RGBA", dither=self.dither)
        return im_in_rgba.getcolors()
     
 What I've get with this code for images with transparency is the list of colours, 
 and the one colour : (0,0,0,255) (and all the ohters colors with alpha = 255)

 The convert tool from Imagemagick, return me the list of colours with all the 
 non-(0,0,0) colours with alpha channel = 255 and (0,0,0,0). 
 So with this list, I can couple with the aplha sections removed from my results.

 It's possible to do this with PIL?

 Thanks a lot.

Andres
_______________________________________________
Image-SIG maillist  -  [email protected]
http://mail.python.org/mailman/listinfo/image-sig
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.