<html>
  <head>
    <meta content="text/html; charset=ISO-8859-1"
      http-equiv="Content-Type">
  </head>
  <body bgcolor="#FFFFFF" text="#000000">
    <br>
    <br>
    Il 23/07/2013 21:41, Valerio Maggio ha scritto:
    <blockquote
      cite="mid:31AA0F27-2500-406E-A040-A47D6418E1D9@gmail.com"
      type="cite">
      <meta http-equiv="Content-Type" content="text/html;
        charset=ISO-8859-1">
      <br>
      <div>
        <div>On Jul 23, 2013, at 9:35 PM, Marco Beri <<a
            moz-do-not-send="true" href="mailto:marcoberi@gmail.com">marcoberi@gmail.com</a>>
          wrote:</div>
        <br class="Apple-interchange-newline">
        <blockquote type="cite">
          <p dir="ltr">Il giorno 23/lug/2013 20:08, "Valerio Maggio"
            <<a moz-do-not-send="true"
              href="mailto:valerio.maggio@gmail.com">valerio.maggio@gmail.com</a>>
            ha scritto:</p>
          <p dir="ltr">> [Stackoverflow]Using numpy and pil to
            convert 565(16bit-color) to 888(24bit-color) (credo sia
            l'esatto opposto di quello che serve a te, btw :-)</p>
          <p dir="ltr">Uhm... Direi che invece è proprio quello che
            voleva fare lui: passare da 565 a 888. O almeno questo è
            quello che fa la funzione che ho scritto e che a Vittorio
            andava bene :-)</p>
          <div><br>
          </div>
        </blockquote>
        Ah, ok.. beh, meglio così allora! ;)</div>
      <div>Avevo capito che lui volesse comprimere l'informazione
        dell'immagine per mostrarla su dispositivi di piccole dimensioni
        - ma ammetto di aver letto la discussione di fretta e tutta
        insieme perdendomi probabilmente qualche pezzo ;)</div>
      <div><br>
      </div>
      <div>--</div>
      <div>Valerio</div>
      <div><br>
      </div>
    </blockquote>
    Tanto per concludere la cosa, la funzione che mi ha mandato Marco è
    perfetta e funziona come deve. Le immagini RGB565 sono obbligate sui
    micromonitor che accettano solo quel formato. La funzione che mi
    serviva ritrasforma le RGB565 in un formato visualizzabile al volo
    in modo da capire di cosa si tratta. Per questo eventuali
    degradamenti non sono un grosso problema.<br>
    Tanto per chiudere il thread, ripasto un microprogrammino che
    contiene anche la funzione di Beri (Recover).<br>
    <br>
    <br>
        def TranlsateImage(im):        #trasforma una immagine in 565<br>
            stringImage=bytes()<br>
            for pixel in list(im.getdata()):<br>
                H=(pixel[2]&248)|pixel[1]>>5<br>
                L=((pixel[1]<<3)&224)|pixel[0]>>3<br>
                stringImage+=struct.pack('<B',H)<br>
                stringImage+=struct.pack('<B',L)<br>
            return stringImage<br>
    <br>
        def RecoverImage(stringImage, width=64, height=48): #riporta
    l'immagine nel formato leggibile 888<br>
            img = Image.new("RGB", (width, height))<br>
            data = []<br>
            for i in range(0, len(stringImage), 2):<br>
                H, L = struct.unpack_from("<BB", stringImage, i)<br>
                pixel_2 = H&248<br>
                pixel_1 = (H&7<<5)|((L&224)>>3)<br>
                pixel_0 = (L&31)<<3<br>
                data.append((pixel_0, pixel_1, pixel_2))<br>
            img.putdata(data)<br>
            return img<br>
    <br>
    vittorio<br>
    <br>
  </body>
</html>