On Mon, Jul 22, 2013 at 6:15 PM, Vittorio Spina <[email protected]>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).
Questo potrebbe voler dire che non sarai mai in grado di ricostruire con
esattezza l'immagine iniziale.
A cosa serve la funzione?
La puoi modificare o te la trovi così com'è senza possibilità di toccarla?
Non riesci a postare un esempio di immagine originale e la stringa ottenuta?
Ciao.
Marco.
--
http://beri.it/ - Un blog
http://beri.it/i-miei-libri/ - Qualche libro
_______________________________________________
Python mailing list
[email protected]
http://lists.python.it/mailman/listinfo/python