[Python] Aiuto PIL
Marco Beri
marcoberi a gmail.com
Lun 22 Lug 2013 21:31:03 CEST
2013/7/22 Carlo Miron <miron a python.it>
> Il 22 luglio 2013 20:22, Marco Beri <marcoberi a gmail.com> ha scritto::
>
> > On Mon, Jul 22, 2013 at 6:15 PM, Vittorio Spina <
> vittorio.spina a gmail.com>
> > wrote:
> >>
> >> def TranlsateImage(im):
> >> stringImage=bytes()
> >> for pixel in list(im.getdata()):
> >> H=(pixel[2]&248)|pixel[1]>>5
> >> L=((pixel[1]<<3)&224)|pixel[0]>>3
> >> stringImage+=struct.pack('<B',H)
> >> stringImage+=struct.pack('<B',L)
> >> return stringImage
> >> alla quale passo una immagine PIL come argomento (im).
> >
> >
> > La funzione, ad un primo sguardo, sembra degradare l'immagine.
> >
> > L'istruzione H=(pixel[2]&248)|pixel[1]>>5 nei fatti azzera i 3 bit meno
> > significativi di pixel[2] (che credo sia la componente blu del pixel).
>
> Premetto che non conosco l'API di PIL, ma la scelta delle lettere mi
> fa pensare piu` alla codifica HSL_ che a quella RGB.
>
Io invece credo che il tizio che ha scritto la funzione volesse compattare
le tre componenti di un pixel (getdata ritorna RGB) in due byte chiamati
High e Low.
My 2 cents.
Ciao.
Marco.
--
http://beri.it/ - Un blog
http://beri.it/i-miei-libri/ - Qualche libro
-------------- parte successiva --------------
Un allegato HTML è stato rimosso...
URL: <http://lists.python.it/pipermail/python/attachments/20130722/aff0db90/attachment-0001.html>
Maggiori informazioni sulla lista
Python