colore digitale blog

Il blog di Mauro Boscarol sulla gestione digitale del colore dal 1998

Nella serie

Metodi di compressione dei file

Articolo scritto per il numero 4/2005 di Print Buyer.

 

La compressione di un file è resa necessaria soprattutto dal fatto che le linee di trasmissione (ISDN per esempio) e i collegamenti online (Internet per esempio) sono lenti, e in secondo luogo dal fatto che i supporti attuali, dischi rigidi, CD, DVD, ancora non contengono quantità sufficienti di informazione. Una fotocamera digitale nemmeno troppo sofisticata oggi cattura 8 milioni di pixel. Ogni pixel sono tre byte (uno per R, uno per G e uno per B) e dunque in una normale fotografia ci sono 24 milioni di byte (cioè 24 megabyte, Mbyte). Si capisce che se devo fare un opuscolo di 32 pagine con altrettante fotografie arrivo a circa 1000 Mbyte, cioè 1 gigabyte (Gbyte).

Oggi un Gbyte non spaventa più nessuno: tanto per fissare le idee, un CD contiene circa 600 Mbyte, un DVD circa 4 Gbyte. Il disco rigido di un normale computer è di almeno 50 Gbyte e ne esistono anche da 300 e più, e sono in arrivo i dischi da qualche terabyte (1 Tbyte = 1000 Gbyte). Il punto debole non è tanto lo spazio quanto la velocità. Con Internet si possono spedire circa 1 o 2 Mbyte al minuto (dipende dalla linea), e per trasmettere un file di un Gbyte via mail, o comunque via Internet ci si mette circa 5 ore, con una normale ADSL.

Nelle arti grafiche esiste dunque l’esigenza di comprimere il file, anche se la compressione del file non è così importante come nell’audio e soprattutto nel video. Comprimere significa ridurre le dimensioni del file, se il file è di 100 Mbyte, farlo diventare 10 Mbyte, e il procedimento riguarda soprattutto le immagini raster, cioè quelle composte di pixel, le fotografie insomma. Esistono due famiglie di metodi di compressione: la prima famiglia comprende i metodi che comprimono buttando via dei pixel (si chiamano metodi lossy); la seconda famiglia comprende tutti i metodi che comprimono in un altro modo più intelligente, senza buttare via nessun pixel (metodi lossless).

Il principale metodo di compressione lossy si chiama JPEG. Si può applicare solo alle immagini raster (cioè alle fotografie). Per diminuire la dimensione dell’immagine,  JPEG elimina alcuni pixel, che verranno poi ricostruiti (non esattamente uguali) in fase di decompressione, ma a quel punto l’immagine risultante non è più quella originale. JPEG tuttavia è stato progettato in modo tale che i pixel eliminati siano quelli meno percepibili per l’occhio umano il quale è più sensibile alle piccole variazioni di luminosità che alle piccole variazioni di colore. Così se JPEG trova due pixel vicini di minima variazione di luminosità li conserva, ma se trova due pixel vicini di minima variazione di colore ne tiene uno solo.

Da questo deriva tra l’altro che JPEG è adatto per comprimere immagini destinate ad essere viste da esseri umani e non, per esempio, da computer.

In ogni caso, JPEG non usa un metodo fisso di compressione. La quantità di pixel eliminati può essere determinata dall’utente: più pixel si eliminano, maggiore è la compressione, più piccolo diventa il file e peggiore diventa l’immagine. In un metodo lossy come JPEG si possono buttare via quanti pixel si vogliono, ma naturalmente questo va a scapito della qualità: c’è un compromesso tra compressione e qualità. Più si comprime, più la qualità dell’immagine degrada. Quando l’immagine compressa viene riaperta, i pixel buttati vengono ricostruiti, ma ma in modo approssimato (non come erano in originale), usando tecniche di interpolazione. Se a questo punto si fa qualche modifica e si salva, altri pixel vengono buttati, e così via. Insomma la compressione JPEG si può usare una o due volte su un file, altrimenti ad ogni salvataggio il file perde di qualità e alla fine non rimane quasi più nulla del file originale.

Tra i metodi lossless, uno dei più usati è LZW, inventato nel 1977 da Abraham Lempel e Jakob Ziv e modificato nel 1984, da Terry Welch (che lavorava per la Unisys). LZW prende il nome dai cognomi dei suoi inventori: Lempel, Ziv e Welch. L’algoritmo di compressione LZW è stato brevettato sia da Unisys che da IBM e per inserirlo in qualche programma bisognava (fino al 2004, dopo vent’anni i diritti sono scaduti) pagare i diritti. Un famoso formato grafico che incorpora l’algoritmo di compressione LZW è il formato GIF usato, assieme a JPEG, per le immagini delle pagine web. Circa una decina d’anni fa GIF è stato al centro di una controversia sui diritti d’autore. Infatti nel dicembre del 1994, quando GIF era da tempo utilizzato online la Unisys annunciò al pubblico che gli sviluppatori avrebbero dovuto pagare una tassa di licenza per poter utilizzare l’algoritmo LZW implementato in GIF. Questo annunciò causò immediate reazioni e un po’ di confusione. Le controversie sono andate avanti per altri dieci anni, generando discussioni online e pagine web a fiumi, fino a che il brevetto è scaduto, rispettivamente nel 2003 per gli USA e nel 2004 per l’Europa, vent’anni dopo la registrazione, e così la questione chiusa da sola.

Come funzionano i metodi di compressione senza eliminazione delle informazioni? Si basano sulla riscrittura “intelligente del file”. Per esempio se in un file ci sono tre pixel rossi, invece di dire “un pixel rosso, un pixel rosso, un pixel rosso” si può dire, in modo compresso “tre pixel rossi”. Ovvio, in un linguaggio umano, ma non altrettanto in un linguaggio per computer.

Di metodi di compressione ne esistono parecchi, e la scelta di uno di essi dipende anche dal tipo di file da comprimere: testo o immagini, colori o bianco/nero. In un file PDF per esempio le immagini a colori e a grigi possono essere compresse in ZIP (lossless) oppure JPEG (lossy) e quelle monocromatiche (bianco e nero) con un metodo che si chiama CCITT, che è precisamente quello usato per la trasmissione dei fax sulle linee telefoniche.

In pratica il grafico potrà usare uno dei metodi di compressione che vengono messi a disposizione dall’applicazione con la quale vengono realizzati i lavori. Ma quando si comprime un file è importante tenere a mente la distinzione tra lossy e lossless per evitare problemi con la qualità dei file e nelle arti grafiche non è una buona cosa eliminare informazioni, e dunque si può comprimere quanto si vuole con metodi lossless, ma il meno possibile con metodi lossy come JPEG. Meglio di tutto, non comprimere affatto.

 

Visitato 74 volte, negli ultimi 7 giorni 1 visite

Torna all'indice di

Mauro Boscarol

8/1/2018 alle 18:18

Visitato 74 volte, negli ultimi 7 giorni 1 visite

Vuoi fare un commento a questo post?

Devi essere collegato per scrivere un commento.