20.12 jpeg -- Lettura e scrittura di file JPEG

Disponibilità: IRIX.

Il modulo jpeg fornisce accesso al compressore e al decompressore JPEG scritti dall' Independent JPEG Group (IJG). JPEG è uno standard per comprimere immagini; viene definito dal documento ISO 10918. Per dettagli sul formato JPEG o sull'Independent JPEG Group fare riferimento allo standard JPEG o alla documentazione fornita con il software.

Un'interfaccia portabile per gestire i file immagine in formato JPEG è disponibile con la Python Imaging Library (PIL), di Fredrik Lundh. Al sito http://www.pythonware.com/products/pil/. Sono disponibili ulteriori informazioni sulla PIL.

Il modulo jpeg definisce un'eccezione ed alcune funzioni.

exception error
Eccezione sollevata da compress() e decompress() in caso di errori.

compress( data, w, h, b)
Tratta l'argomento "data" come una matrice di pixel di larghezza w e di altezza h, con b byte per pixel. I pixel vengono elencati nell'ordine compatibile con la libreria GL di SGI, per cui il primo pixel è quello in basso a destra. Questo significa che il valore restituito da gl.lrectread() può essere passato immediatamente in input a compress(). Al momento, solo pixel di 1 e di 4 bytes sono consentiti, nel primo caso vengono trattati come valori di una scala di grigi, nel secondo caso come valori di colore RGB. La funzione compress() restituisce una stringa che contiene l'immagine compressa, in formato JFIF.

decompress( data)
L'argomento data è una stringa che contiene un'immagine in formato JFIF. La funzione decompress() restituisce una tupla (dati, larghezza, altezza, byte_per_pixel). Anche in questo caso, il valore restituito in dati è adatto ad essere passato immediatamente alla funzione gl.lrectwrite().

setoption( name, value)
Imposta varie opzioni. Chiamate successive a compress() e decompress() faranno uso dei nuovi valori di queste opzioni. Sono disponibili le seguenti opzioni:

Opzione  Effetto 
'forcegray' Forza l'immagine in uscita ad essere in scala di grigi, anche se l'immagine in ingresso è di tipo RGB.
'quality' Imposta la qualità dell'immagine compressa ad un valore tra 0 e 100 (il valore predefinito è 75). Questa opzione ha effetto solo sulla compressione.
'optimize' Effettua le ottimizzazioni della tavola di Huffman. Questo richiede più tempo, ma il risultato è un'immagine maggiormente compressa. Questa opzione ha effetto solo sulla compressione.
'smooth' Effettua lo smorzamento delle differenze tra blocchi di una immagine non compressa. È utile solo con immagini di bassa qualità. Ha effetto solo sulla decompressione.

Vedete anche:

JPEG Still Image Data Compression Standard
Il punto di riferimento canonico per il formato di immagine JPEG, di Pennebaker and Mitchell.

Information Technology - Digital Compression and Coding of Continuous-tone Still Images - Requirements and Guidelines
Lo standard ISO per il formato JPEG, pubblicato anche come ITU T.81. È anche disponibile in rete in formato PDF.

Vedete Circa questo documento... per informazioni su modifiche e suggerimenti.