Gestione immagini digitali ITI OMAR Novara Paolo De Vittor pag. 1 I

Gestione immagini digitali
ITI OMAR Novara
I principali formati di compressione delle immagini
Il classico “Bitmap”
Il formato standard di codifica digitale delle immagini è quello definito “bitmap”,
ovvero a mappa di bit, dove la caratteristica luminosa e cromatica di ogni pixel viene
“descritta” tramite una serie di bit che rappresentano il contributo di ciascuna delle
componenti in cui viene effettuata la codifica, che può essere di tipo RGB, HSB, CMYK, o
altre ancora.
Vari tipi di codifica
Codifica RGB. La tecnica RGB
utilizza una rappresentazione dei
pixel in base al valore numerico (che
va da 0 a 255) di ciascuna delle
componenti primarie di rosso (Red),
verde (Green) e azzurro (Blue) del
colore nella sintesi detta “additiva”,
ovvero quella che attua la nostra
vista.
L’occhio, infatti, ha una
percezione “sintetica” dei colori, in
quanto non riesce a distinguere le
singole componenti di colore, né se
sono sovrapposte (gli stessi punti
dell’immagine emettono radiazioni
di diversa frequenza), né se sono
tropo vicine (l’occhio presenta una
risoluzione angolare limitata), né se sono in movimento (l’occhio di fatto “integra” le
immagini con una velocità superiore alle 10 componenti al secondo). Gli altri colori vengono
ottenuti in maniera analoga, ovvero
sommando differenti proporzioni
delle singole componenti R,G,B. La
tecnica RGB è quella che nella realtà
viene utilizzata per ottenere i colori
nei televisori, nei monitor e nelle
sorgenti di illuminazione.
Paolo De Vittor
pag. 1
Gestione immagini digitali
ITI OMAR Novara
Codifica CMYK. Poiché nella stampa delle
immagini la resa dei colori è basata sulle
propietà di assorbimento della luce da parte
degli inchiostri utilizzati, al fine di fornire alle
periferiche di stampa un’informazione corretta
sul modo di rappresentare i colori si preferisce
utilizzare una codifica detta “sottrattiva” dei
colori, in quanto il colore che l’occhio vede
sulla superficie di un oggetto è in realtà la
somma delle radiazioni ottiche che vengono
riflesse dall’oggetto, mentre le altre vengono
assorbite (e trasformate in calore).
La
denominazione CMYK deriva dai colori
utilizzati per questo tipo di rappresentazione,
ovvero il Ciano, il Magenta, il giallo (Yellow)
ed il nero (K), che guarda caso
sono quelli derivati ciascuno
dalla somma di due colori
primari RGB (vedi figura). La
stessa tecnica CMYK viene fra
l’altro applicata non solo nella
realizzazione delle stampe su
carta, ma anche nella colorazione di tutti i supporti basati
sull’assorbimento dei colori, quali ad esempio le emulsioni per i
supporti fotografici (foto e diapositive), i tessuti, i vetri e tutti gli
oggetti colorati di uso comune.
Codifica HSB (o HSL): l’occhio umano, in realtà, utilizza un “criterio” di analisi delle varie
componenti dell’immagine basato su tre parametri: tonalità di colore o tinta (Hue),
saturazione del colore (Saturation) e sua luminosità (Brightness o anche Luminance),
esemplificata dai due diagrammi cromatici qui riportati.
Altre codifiche. Esistono altresì altri tecniche per codificare i colori, utilizzate soprattutto
nelle stampe professionali ad alta risoluzione, che e si basano su precise codifiche dei vari tipi
di colore e delle loro varie tonalità, come ad esempio Pantone, Truematch, Focoltone, ecc..
Nel formato bitmap ciascun valore numerico delle singole componenti suddette viene ottenuto
per “digitalizzazione” diretta, ovvero tramite conversione analogico-digitale dei valori rilevati
dai sensori d’immagine (CCD oppure CIS) presenti nei dispositivi di cattura delle immagini
(fotocamere e videocamere digitali, scanner, fotocopiatrici, ecc.).
Paolo De Vittor
pag. 2
Gestione immagini digitali
ITI OMAR Novara
Il formato TIFF
Il TIFF (Tagged Image File Format) è uno dei formati con il maggior numero di varianti, al
punto che quasi nessun editor grafico è in grado di supportarli tutti, a causa dell’elevata
differenza fra i vari sotto-formati. E’ molto diffuso in quanto permette di codificare i file
grafici senza perdita di informazione (si tratta di una tecnica lossless) con la possibilità di
attuare una certa compressione oppure no, con più varianti.
Sviluppato da Aldus Corporation (ora Adobe Systems), esso supporta vari formati grafici, con
profondità di colore da 1-bit (B/N formato Fax gruppi 3 e 4 con e senza compressione
Huffman) fino a 24-bit (True-color); la maggior compressione (0,8:1) è ottenibile con la
tecnica LZW. Esistono altresì alcune recenti versioniche supportano nuove funzionalità, quali
ad esempio il formato multipagina (MPF) e con compressione JPEG.
Il formato GIF
Il formato GIF (Graphic Interchange Format) fu diffuso negli anni Ottanta come metodo
efficiente di trasmissione delle immagini su reti di dati. All'inizio degli anni Novanta i webdesigner lo adottarono per l'efficienza che offriva. Oggi la stragrande maggioranza delle
immagini sul web è in questo formato. Il formato GIF usa una forma di compressione LZW
(Lempel-Zif-Welsh) che mantiene inalterata la qualità dell'immagine, ovvero riduce le
dimensioni del file senza pregiudicare la qualità dell'immagine.
La profondità dei colori delle immagini GIF è di 8 bit, che consente di usare una tavolozza di
256 colori. Meno colori si usano e maggiori saranno le possibilità di compressione, ovvero
minori saranno le dimensioni del file. Lo schema di compressione LZW è più adatto a
comprimere immagini con grossi campi di colore omogeneo ed è meno efficiente nella
compressione di immagini complicate con molti colori e grane complesse.
E' conveniente sfruttare le caratteristiche della compressione LZW per ridurre le dimensioni
delle immagini GIF. La strategia consiste nel ridurre il numero di colori in un'immagine GIF
al numero minimo necessario e nell'eliminare i colori isolati non necessari per la
rappresentazione dell'immagine. Un'immagine GIF può avere al massimo 256 colori, ma può
anche averne meno, fino a un minimo di due (bianco e nero). Le immagini con meno colori
sono compresse più efficacemente con la compressione LZW.
La tecnica LZW consente anche di salvare le immagini in un formato detto “ interlacciato”,
che produce una visualizzazione graduale di un'immagine in una serie di passate sempre più
definite a mano a mano che i dati arrivano al browser. Ogni nuovo passaggio crea
un'immagine più nitida fino al completamento dell'intera immagine. Molti utenti trovano
attraente l'effetto "da sfocato a nitido" dell'interallacciamento, ma il vantaggio più importante
di questa tecnica è che offre un'anteprima dell'intera area dell'immagine mentre l'immagine
viene scaricata sul browser. Si noti che l'interallacciamento non ha effetti significativi sulle
dimensioni dei file GIF.
Paolo De Vittor
pag. 3
Gestione immagini digitali
ITI OMAR Novara
Il formato GIF consente anche di scegliere nell'immagine un colore che risulterà trasparente
nel browser. Nelle aree di colore contrassegnato come trasparente, verrà visualizzato il colore
di sfondo della pagina. Purtroppo la proprietà trasparente non è selettiva: se rendiamo
trasparente un colore, ogni pixel dell'immagine caratterizzato da tale colore diventerà a sua
volta trasparente, e questo può produrre risultati imprevisti.
Il formato JPG
Un altro formato grafico utilizzato di frequente sul Web per ridurre le dimensioni dei file
grafici é lo schema di compressione JPEG
(Joint Photographic Expert Group). A
differenza delle immagini GIF, le
immagini JPEG sono policrome (24 bit, o
16,8 milioni di colori). Questo tipo di
immagini ha generato un altissimo
interesse tra fotografi, artisti, progettisti
grafici, specialisti della composizione di
immagini mediche, storici dell'arte e altri
utenti per i quali la qualità dell'immagine è
d'importanza fondamentale e per i quali
non è possibile accettare compromessi
sulla fedeltà dei colori tramite retinatura di
un'immagine a colori a 8 bit.
Immagine JPEG con compressione 80
Una forma più recente di JPEG, chiamata JPEG progressivo, conferisce alle immagini JPEG
la stessa gradualità di visualizzazione delle immagini GIF interlacciate; al pari di queste
ultime, le immagini JPEG progressive impiegano spesso un tempo maggiore per lo
scaricamento sulla pagina rispetto ai JPEG standard, ma offrono al lettore un'anteprima più
rapida.
La compressione JPEG utilizza una sofisticata tecnica matematica - chiamata “trasformazione
discreta del coseno” o DCT - per produrre una compressione delle immagini. E' possibile
scegliere il grado di compressione che si desidera applicare, anche se a discapito della qualità
dell'immagine: infatti, più si comprime un'immagine, più si riduce la qualità dell'immagine
stessa.
Con il formato JPEG si possono raggiungere rapporti di compressione incredibili, riducendo
le immagini di circa un centinaio di volte rispetto ai file originali; questo è possibile perché
l'algoritmo JPEG scarta i dati non necessari durante la compressione dell'immagine e per
questo motivo la tecnica di compressione è definita “a perdita” o anche “lossy”.
Sta all’utente quindi sperimentare l'impostazione più adatta per creare un file dall'aspetto
accettabile. Quando si creano immagini JPEG si ricordi sempre di salvare una copia
dell'immagine originale. Infatti il formato JPEG degrada in modo permanente la qualità
Paolo De Vittor
pag. 4
Gestione immagini digitali
ITI OMAR Novara
dell'immagine, per cui dopo aver convertito un'immagine in formato JPEG, non è più
possibile recuperare la qualità dell'immagine originale
La compressione JPEG
Il formato JPG può attuare una compressione delle immagini fino ad 1/50 della dimensione
originale senza perdite apprezzabili della qualità delle immagini. Esso è stato sviluppato
soprattutto per le immagini fotografiche, mentre per i disegni al tratto non offre risultati
apprezzabili, anzi in alcuni casi può peggiorare la leggibilità di un immagine.
Vi sono due metodi di compressione: uno detto “predittivo” e senza perdita d’informazione
(lossless) ed uno basato sulla “trasformata discreta coseno” (DCT) con perdita d’informazione
(lossy). Il metodo predittivo è basato sulla rimozione della ridondanza presente tra pixel
successivi e sulla quantizzazione del contenuto informativo presente in un pixel che non può
essere determinato dalla conoscenza dei pixel ad esso adiacenti. Infatti vengono utilizzati
campioni già codificati dell’immagine per avere una "predizione", cioè una stima, del
campione ancora da codificare.
L’errore risultante dalla sottrazione di tale stima dal valore reale del campione viene
quantizzato in un insieme di livelli discreti di ampiezze e poi codificato; poiché il campo di
variabilità delle differenze è meno esteso del campo di variabilità dei valori reali, è possibile
usare pochi livelli di quantizzazione senza che ciò comporti un alto livello di degradazione
nell’immagine ricostruita. Nel sistema ricevente il segnale differenza decodificato viene
ricostruito e sommato ad una stima fatta da un dispositivo di predizione identico a quello
usato in fase di codifica, per avere una ricostruzione dell’immagine
Nel metodo basato sull’applicazione della trasformata DCT l’immagine viene dapprima letta
per righe, e poi analizzata in blocchi di 8x8 pixel sui quali viene effettuata una ricerca del
grado di “dispersione” (entropia) dei parametri cromatici. In questa operazione, da ogni
blocco di pixel vengono estratte informazioni relative alla frequenza con cui compaiono le
informazioni cromatiche. Ogni blocco-base (raster) rappresenta le intensità cromatiche (da 0
a 255) per ciascun piano di colore R,G,B. La codifica “comprime” le variazioni (ovvero
riduce il numero di variabili necessarie a rappresentarle), in modo da ridurre le dimensioni del
file; in fase di decodifica (lettura del file) cerrà applicata la trasformata DCT inversa. Si
tenga conto che nella fase di riduzione del numero delle variabili (matematicamente avviene
di fatto con un’operazione di arrotondamento) si utilizzano algoritmi che tengono conto anche
di studi di “psicovisuale”.
Il formato PNG
Il formato PNG (Portable Network Graphics) è stato sviluppato appositamente per il Web. Si
tratta di un formato che secondo le intenzioni degli autori doveva sostituire il formato GIF.
Questo formato - senza perdita di informazioni - comprime le immagini a 8 bit producendo
file di dimensioni inferiori rispetto al GIF. Inoltre il formato PNG può essere utilizzato anche
per la stampa delle immagini, e pertanto supporta immagini a colori a 8 bit, scale di grigio a
Paolo De Vittor
pag. 5
Gestione immagini digitali
ITI OMAR Novara
16 bit e colori True Color a 24 bit. Anche se il formato PNG supporta il colore a 24 bit, la sua
routine di compressione non è in grado di raggiungere l'efficienza del formato JPEG.
Il formato PNG supporta le funzionalità di trasparenza e interallacciamento ma non
l'animazione, anche se il consorzio W3C ha creato una bozza per il formato MPG (MultipleImage Network Graphics) che supporta l'animazione. Un'utile caratteristica del formato PNG
è la capacità di incorporare del testo per offrire la possibilità di eseguire ricerche sulle
immagini; è infatti possibile memorizzare nel file dell'immagine una stringa che identifica
l'immagine stessa. Purtroppo il formato PNG non è ampiamente supportato e
l'implementazione corrente delle immagini PNG in Netscape ed Explorer non supporta
completamente tutte le sue funzioni.
Il nuovo JPEG2000
Nato nel dicembre 2000 e proposto dallo stesso gruppo di JPEG (oggi formato da oltre 200
aziende), questo nuovo standard mira ad ottimizzare soprattutto la trasmissione delle
immagini attraverso i protocolli di comunicazione a pacchetti, primo fra tutti il noto TCP/IP
di Internet.
Il nucleo del “motore” di Jpeg2000 è basato su
di un codec che sfrutta le trasformate
“wavelet”, e quindi differente da quello del
classico Jpeg, basato sulla trasformata DCT,
tale da consentire rapporti di compressione di
ben 200:1. Nella tecnica wavelet utilizza - al
contrario della DCT - una scala temporale (e
quindi in frequenza) variabile, inversamente
proporzionale alla risoluzione dei dettagli
dell’immagine.
Ciò significa che, dove
l’immagine presenta una maggior densità di
dettagli (maggior frequenza spaziale di variazione dei parametri cromatici) la finestra
temporale di analisi e codifica viene “rallentata” in modo da acquisire un maggior numero di
campioni. Ne deriva una rappresentazione digitale più precisa soprattutto nelle porzioni di
immagine più complesse, con una minor occupazione di spazio grazie alle zone più omogenee
dell’immagine, campionate a frequenza più elevata.
Un algoritmo di questo tipo però necessita di hardware e software differenti da quelli attuali,
che rallenteranno inizialmente l’introduzione del nuovo standard. Si pensa comunque che il
nuovo Jpeg2000 posa imporsi anche su prodotti differenti dalle fotocamere digitali, come ad
esempio PDA, telefoni cellulari 3G, computer di navigazione sulle auto, applicazioni
medicali, consumer, ecc.
Paolo De Vittor
pag. 6