Storia della computer grafica - accademiadicatania.com · Appunti di Computer Grafica e Computer...
Transcript of Storia della computer grafica - accademiadicatania.com · Appunti di Computer Grafica e Computer...
Appunti di Computer Grafica e Computer Art
Nel 1960 William Fetter introdusse il termine Computer Graphics per descrivere la ricerca che stava
conducendo alla Boeing. Egli pensò di sfruttare un modello 3D del corpo umano per progettare la
carlinga degli aerei.
Perhaps the best way to define computer graphics is to find out what it is not. It is not a machine. It is not a computer, nor
a group of computer programs. It is not the know-how of a graphic designer, a programmer, a writer, a motion picture
specialist, or a reproduction specialist. Computer graphics is all these – a consciously managed and documented technology
directed toward communicating information accurately and descriptively.
Computer Graphics, by William A. Fetter, 1966
Computer Graphics
Appunti di Computer Grafica e Computer Art
Storia della computer grafica
Con computer grafica (dall’inglese computer graphics) si intende comunemente l’insieme delle tecniche
per la generazione di immagini utilizzando un computer. Più formalmente
può essere descritta anche come «quella disciplina che studia le tecniche e gli
algoritmi per la visualizzazione di informazioni numeriche prodotte da un
elaboratore». Viene spesso indicata in gergo con gli acronimi CG o CGI,
quest’ultimo derivato da Computer Generated Imagery (traducibile in immagini
generate al computer). Lo sviluppo della Computer Graphics è parallelo a
quello della tecnologia hardware.
Le origini possono ricercarsi nei lontani anni ‘50, con l'utilizzo di tubi a raggi catodici (CRT) come
dispositivi di output grafico. La computer grafica prende corpo soprattutto per scopi industriali e
militari nella 2ª metà degli anni ‘60,
pertinenza esclusiva di computer dotati di
grande potenza di calcolo e di componenti
elettronici dedicati (detti schede video o
sottosistemi grafici). A partire dalla 2ª metà
degli anni ‘80, pur continuando ad esistere
sistemi professionali e dedicati, si sono
diffusi i personal computer, con una sempre
maggiore capacità tecnologica per
l’elaborazione e visualizzazione di immagini
(vedi per es. l’home computer Commodore
Amiga). Negli anni ‘90 la computer grafica è ormai dominio consolidato di tutti i computer con la
diffusione di schede video di grande versatilità e relativa potenza per i personal computer. Col passare
degli anni, grazie all’evoluzione dell’informatica e all'abbassamento dei prezzi, i PC hanno eroso a
tecnologie proprietarie ed esclusive delle fette di mercato consistenti, rendendo la computer grafica, agli
inizi del XXI secolo, una disciplina esplorabile da chiunque abbia un computer. Attualmente tutti i
sistemi operativi più diffusi nel settore dei Personal Computer sono dotati di una GUI (1) grazie alla
1 Graphic User Interface. Interfaccia utente che riceve comandi non tramite la digitazione sulla tastiera, ma utilizzando forme
grafiche come puntatori, icone, finestre, menu e pulsanti. Microsoft Windows e Apple Macintosh sono esempi di piattaforme GUI.
Appunti di Computer Grafica e Computer Art
quale è possibile compiere molti compiti comuni e complessi senza bisogno di un’approfondita
conoscenza del funzionamento del computer.
Negli ultimi anni stiamo assistendo ad un balzo in avanti per quanto riguarda la velocità dei processori, la
disponibilità di memoria e l’immissione sul mercato di schede grafiche accelerate a basso prezzo. Questi fattori
hanno determinato un vero e proprio boom della grafica al calcolatore ed in 10 anni si è passati da
risoluzioni dell’ordine dei 320x240 pixel con 16
colori a risoluzioni di più di 1024x1024 pixel a
32 milioni di colori. Mentre una volta le
applicazioni di grafica avanzata erano esclusivo
appannaggio di enti di ricerca (purtroppo
spesso per uso militare), oggi la grafica
computerizzata è presente in tutte le
applicazioni (o quasi) disponibili per computer
anche di bassa fascia. Al giorno d’oggi è infatti
parte integrante di una moltitudine di ambiti
professionali e di consumo come i videogiochi,
ritocco fotografico, il montaggio di filmati, l'industria cinematografica (film d'animazione digitale ed effetti
speciali dei film), la tipografia (impaginazione di giornali e riviste, DTP (2)), la progettazione grafica nelle
industrie metalmeccanica, elettronica, impiantistica ed edile (CAD/CAM/CAE), visualizzazione di dati
tecnico/scientifici, SIT o GIS (3).
2 Acronimo di Desk Top Publishing, sistema di progettazione e stampa introdotto dai PC che consente di disegnare e impaginare direttamente a video grazie all’interfaccia grafica wysiwyg (letteralmente What You See Is What You Get ovvero ciò che vedi è ciò che ottieni) 3 Un sistema informativo geografico (in lingua inglese Geographic (al) Information System, abbreviato in GIS) è un sistema informativo computerizzato che permette l’acquisizione, la registrazione, l’analisi, la visualizzazione e la restituzione di informazioni derivanti da dati geografici (geo-referenziati). SIT è invece acronimo di Sistema Informativo Territoriale.
Esempi di GUI (ambienti Apple Macintosh e Microsoft Windows)
Appunti di Computer Grafica e Computer Art
La rappresentazione digitale dell’informazione
L’aritmetica usata dai calcolatori è diversa da quella comunemente utilizzata dalle persone. La precisione
con cui i numeri possono essere espressi è finita e predeterminata poiché questi devono essere
memorizzati entro un limitato spazio di memoria.
Nella forma digitale una grandezza è rappresentata in modo discreto da una sequenza di campioni
(interpretabili come numeri interi). Un campione può rappresentare il livello di colore di un pixel
(punto colorato), l’ampiezza di un suono in un certo istante, un carattere, un numero.
La rappresentazione attraverso ‘0’ e ‘1’ (attraverso cioè un sistema di codifica binaria, che utilizzi due
sole cifre) ha un importante vantaggio: i dati binari sono facilmente rappresentabili (e manipolabili)
all’interno di un computer. Questa celletta corrisponde a un bit di informazione. Un bit, infatti, non è
altro che la quantità di informazione fornita dalla scelta fra due alternative diverse, considerate come
egualmente probabili. In effetti, l’uso in campo informatico del termine “digitale” non si riferisce di
norma solo al fatto che l’informazione è rappresentata in forma numerica, ma al fatto che è
rappresentata in forma numerica sulla base di una codifica binaria, e dunque attraverso bit (il termine bit
corrisponde alla contrazione dell’inglese binary digit, numero binario).
Rappresentare in forma binaria una qualsiasi informazione numerica è compito relativamente facile. Nel
caso dei numeri, infatti, non dobbiamo fare altro che passare da una notazione all’altra.
Codificare invece in formato binario una informazione di tipo testuale risulta più complesso. Tuttavia
un testo non è altro che una successione di caratteri, e i caratteri di base – quelli compresi nell’alfabeto della
lingua usata – sono in numero che varia col variare delle lingue, ma che è comunque – almeno per le
lingua basate sull’alfabeto latino – finito e piuttosto ristretto. E’ sufficiente allora stabilire una tabella di
corrispondenza fra caratteri da un lato e numeri binari dall’altro. Dovremo ricordarci di includere fra i
caratteri da codificare tutti quelli che vogliamo effettivamente differenziare in un testo scritto: se
vogliamo poter distinguere fra lettere maiuscole e minuscole dovremo dunque inserirvi l’intero alfabeto
sia maiuscolo che minuscolo, se vogliamo poter inserire nei nostri testi anche dei numeri decimali
dovremo inserire le dieci cifre (0, 1, 2, 3, 4, 5, 6, 7, 8, 9), se vogliamo poter utilizzare segni di
interpunzione (punto, virgola, punto e virgola, ...) dovremo inserire i caratteri corrispondenti, e così via
... senza dimenticare naturalmente di includere lo spazio per separare una parola dall’altra!
Una tabella di questo tipo si chiama tabella di codifica dei caratteri. Per molto tempo, la codifica di
riferimento è stata la cosiddetta codifica ASCII (American Standard Code for Information Interchange).
Appunti di Computer Grafica e Computer Art
La codifica ASCII originaria (ASCII stretto) permetteva di distinguere 128 caratteri diversi; la tabella di
caratteri attualmente più usata, denominata ISO Latin 1, distingue 256 caratteri, i primi 128 dei quali
sono ereditati dall’ASCII stretto. L’indicazione ISO indica l’approvazione da parte dell’International
Standardization e Latin 1 indica che si tratta della tabella di riferimento per gli alfabeti di tipo latino. E’
questa la codifica di caratteri utilizzata dalla maggior parte dei sistemi operativi (Windows, Macintosh
...). Come ogni tabella di codifica dei caratteri, anche la tabella ISO Latin 1 codifica caratteri da essa
previsti (che come si è accennato sono 256) facendo corrispondere a ciascuno un numero binario. Il
primo di questi caratteri corrisponderà al numero binario 00000000, il secondo al numero binario
00000001, il terzo al numero binario 00000010, e così via, fino al 256°, che corrisponderà al numero
binario 11111111. Le otto cellette possono quindi essere usate come contenitore per rappresentare – in
formato binario – un qualunque carattere della tavola di codifica: ci si dovrà solo ricordare, se il numero
binario che codifica un determinato carattere è più corto di otto cifre, di farlo precedere da tanti 0 quante
sono le cellette rimaste vuote. Così, ad esempio, per rappresentare il carattere corrispondente al numero
binario 10 si riempiranno le cellette in questo modo: 00000010.
Appunti di Computer Grafica e Computer Art
Riassumendo: 8 bit differenziare fra 256 combinazioni diverse, e dunque una parola lunga 8 bit (otto
cellette) può rappresentare, attraverso la sua particolare combinazione di 0 e 1, uno qualunque dei 256
caratteri della nostra tavola di codifica. Per convenzione, una parola lunga 8 bit è chiamata byte.
Il byte è dunque una unità di misura dell’informazione, e indica la quantità di informazione
corrispondente alla scelta fra 256 alternative diverse. Se adottiamo come base la nostra codifica dei testi
una tavola comprendente 256 caratteri, ogni carattere del nostro testo richiederà un byte per essere
codificato: in altri termini, costerà un byte.
E’ interessante sottolineare che avendo a disposizione 256 caratteri, il codice ISO Latin 1 non può
tuttavia essere veramente universale; si pensi infatti all’immensa varietà di caratteri utilizzati dalle lingue
basate su alfabeti diversi da quello latino: dal greco al cirillico, dal giapponese al mandarino ... Proprio
per questo motivo, è stato avviato un progetto estremamente ambizioso: definire una tavola di codifica
basata non su 7 o su 8 bit, ma su ben 16 bit, che consentono di codificare oltre 65.000 caratteri. Questa
tavola si chiama Unicode, comprende finora (versione 2.0) 38.885 caratteri, e rappresenta uno sforzo
immenso di sistematizzazione non solo dal punto di vista informatico, ma anche da quello linguistico.
N.B. Molte applicazioni consentono di rappresentare i caratteri secondo diverse font.
Esempio: A: A A A A A A A A A A A A A A A A
Questo vuol dire che il carattere “A” è codificato diversamente da ciascuno? No! E’ solo l’aspetto che è
diverso, la codifica è sempre la stessa. Ovviamente la definizione di font deve essere conscia dello
standard di codifica usato; un font che mostrasse una “A” come se fosse un “G” non sarebbe molto
utile.
Immagini e pixel
Quando guardiamo la televisione, le immagini che vediamo ci appaiono di norma abbastanza facili da
interpretare: possiamo identificare forme e strutture, e ad esempio riconoscere il volto di un attore o di
un’attrice. Se ci avviciniamo molto allo schermo, tuttavia, noteremo che quella che a una certa distanza
ci era apparsa come un’immagine ben definita e continua si sgrana in piccoli puntini luminosi e colorati
(i cosiddetti pixel – termine inglese corrispondente alla contrazione di picture elements). L’immagine che
vediamo è in realtà il risultato dell’integrazione dei tanti singoli segnali luminosi emessi da ciascuno dei
singoli pixel. La griglia di pixel è talmente fitta da darci un’impressione di continuità.
Appunti di Computer Grafica e Computer Art
Per digitalizzare un’immagine, il primo passo è proprio quello di sovrapporre all’immagine analogica (ad
esempio una fotografia) una griglia fittissima di minuscole cellette. Ogni celletta sarà considerata come
un punto dell’immagine, come un pixel. Naturalmente, a parità di immagine, più fitta è la griglia, più
piccole saranno le cellette, e migliore sarà l’illusione di un’immagine continua.
In questo modo, abbiamo sostanzialmente scomposto l’immagine in tanti puntini. Ma non abbiamo
ancora risolto il problema della nostra codifica digitale. Per farlo, occorre un passo ulteriore:
rappresentare i puntini attraverso numeri. Come procedere? L’idea di base è semplice: utilizzare anche
qui una tavola di corrispondenza, che però questa volta, anziché far corrispondere numeri a caratteri,
faccia corrispondere numeri a colori diversi, o a sfumature diverse di colore.
I primi personal computer con capacità grafiche, all’inizio degli anni ‘80, utilizzavano griglie molto
larghe (i pixel sullo schermo del computer più che a minuscoli puntini corrispondevano a grossi
quadrati) e i colori codificati erano molto pochi (solo il bianco e nero, o al più 8 o 16 colori diversi).
Se abbiamo a disposizione un numero maggiore di bit, potremo rendere più fine la griglia, oppure
aumentare il numero dei colori, o magari (se possiamo permettercelo) fare tutte e due le cose insieme.
Così, se ad esempio per ogni celletta decidiamo di spendere 8 bit (e dunque 1 byte) anziché 1 bit soltanto,
anziché usare solo il bianco e nero potremo codificare 256 colori
diversi (giacché come abbiamo visto le possibili combinazioni di
0 e 1 nelle nostre 8 cellette sono proprio 256; quando si parla di
immagini a 256 colori o a 8 bit ci si riferisce proprio a
un’immagine la cui palette di colori – ovvero l’insieme dei colori
utilizzati – è codificata in questo modo); se di bit ne possiamo
spendere 16, avremo a disposizione 65.536 colori diversi, e così via. Certo, con l’aumento della
risoluzione e la crescita del numero dei colori codificati, il numero di bit necessario a rappresentare la
nostra immagine sale molto: supponiamo di voler utilizzare una griglia di 800 colonne per 600 righe (è
una risoluzione assai diffusa per i personal computer), e di destinare a ogni celletta, a ogni pixel, 24 bit
(il che ci consentirà di distinguere la bellezza di oltre 16 milioni di sfumature di colore). I bit necessari
per rappresentare una singola immagine diventano 800x600x24 = 11.520.000! Un’immagine digitale è
quindi composta da tanti pixel uno accanto all’altro, in orizzontale e in verticale.
1 bit = 2 colori 2 bit = 4 colori 3 bit = 8 colori 4 bit = 16 colori 6 bit = 64 colori 8 bit = 256 colori 16 bit = 65.536 colori
24 bit = 16 milioni di colori
Appunti di Computer Grafica e Computer Art
Dimensioni e risoluzione dell’immagine
Non è possibile migliorare un’immagine di bassa qualità aumentandone la risoluzione di stampa. La
modifica della risoluzione di stampa non fa altro che ingrandire ciascun pixel e creare un’immagine
sgranata, cioè con pixel grandi e vistosi. L’aumento della risoluzione di stampa di un’immagine non
aggiunge informazioni a livello dei pixel. Per ricavare il meglio da un’immagine a bassa risoluzione,
scegliete una dimensione di stampa che sfrutti al massimo i pixel disponibili.
Appunti di Computer Grafica e Computer Art
Risoluzione del monitor
I dati dell’immagine vengono convertiti direttamente in pixel del monitor. Questo significa che quando
la risoluzione dell’immagine è superiore alla risoluzione del monitor, l’immagine sullo schermo risulta
più grande dell’immagine stampata. La risoluzione del monitor dipende dalla grandezza del monitor e
dalle sue impostazioni in pixel. Ad esempio, un’immagine da 800 x 600 pixel visualizzata su un monitor
da 15 pollici riempie quasi lo schermo; su un monitor più grande occupa invece meno spazio e i pixel
appaiono ingranditi.
Monitor e profili
Tutte le periferiche del vostro pc come scanner, stampanti, macchine fotografiche digitali, monitors,
interpretano i colori numericamente ovvero associano ai vari colori un numero effettuando una specie
di codifica. Purtroppo come in tutte le cose non esiste uno standard di base ma ogni periferica a
seconda delle proprie caratteristiche costruttive e delle soluzioni tecnologiche che sono state apportate
per affrontare i problemi di costruzione, ha una propria tabella di associazione colore-numero.
Come potrete ben capire affinché quello che vedete sul monitor assomigli il più possibile a quello che
uscirà dalla vostra stampante, è necessario che il sistema operativo con cui state lavorando sappia come
le vostre periferiche vedono i colori e in base a ciò effettui degli adattamenti alle tabelle in modo da
sapere sempre come fare ad ottenere la riproduzione o la decodifica di un colore ben specifico da una
periferica. Ecco allora l’idea di profili ICC (4) ossia degli elenchi di caratteristiche di quella data
periferica, leggibili per il sistema operativo con i quali esso riesce a fare quegli adattamenti di cui
abbiamo parlato. Nel nostro caso le periferiche in gioco sono, il monitor, lo scanner o la macchina
fotografica digitale e la stampante. In genere questi profili ICC sono forniti dal costruttore insieme al
software di corredo, mentre per quanto riguarda il monitor, visto il largo impiego a cui normalmente è
soggetto, viene fornito un profilo generico e non specifico per la fotografia digitale. Considerando
questo fatto bisogna creare il profilo ICC o come si dice profilare il monitor.
4 L’International Color Consortium, abbreviato ICC, è un organismo fondato nel 1993 da Adobe, Agfa, Apple, Kodak, Microsoft, Silicon Graphics e Sun, alle quali nel frattempo si sono unite circa altre 60 società produttrici di software e di hardware. ICC ha lo scopo di sviluppare e mantenere uno standard aperto, a livello di sistema operativo e multipiattaforma per la gestione digitale del colore e a questo scopo pubblica proprie specifiche di modalità di costruzione e uso dei profili di colore. I profili di colore conformi a tali specifiche sono chiamati profili ICC.
Appunti di Computer Grafica e Computer Art
Perché a volte i colori non corrispondono
Nessuno dei dispositivi utilizzati nei sistemi di pubblicazione è in grado di riprodurre l’intera gamma di
colori percepibili dall’occhio umano. Ogni dispositivo opera all’interno di uno specifico spazio
cromatico che può produrre una determinata scala, o gamma, cromatica.
Il metodo colore determina la relazione tra i valori, mentre lo spazio cromatico definisce il significato
assoluto di tali valori come colori. Alcuni modelli di colore, ad esempio CIE L*a*b, presentano uno
spazio cromatico fisso poiché si relazionano direttamente al modo in cui gli esseri umani percepiscono i
colori. Per tale ragione, vengono definiti indipendenti dal dispositivo. Altri modelli di colore invece,
ad esempio RGB, HSL, HSB e CMYK, possono presentare diversi spazi cromatico. Poiché variano in
base al dispositivo o allo spazio cromatico ad essi associato, questi modelli sono definiti dipendenti
dal dispositivo.
A causa di tali variazioni degli spazi cromatico, l’aspetto dei colori in uno stesso documento può
cambiare quando si passa da un dispositivo all’altro. Le
variazioni di colore possono scaturire da differenze
nelle origini delle immagini, dalle modalità di
definizione dei colori usate dalle applicazioni software,
dai supporti di stampa (sulla carta da giornale ad
esempio viene riprodotta una gamma di colori inferiore
rispetto alla carta da rivista) e da altri fattori naturali,
quali differenze nella produzione dei monitor o età dei
monitor.
Gamme di colore per dispositivi e documenti diversi
A. Spazio cromatico Lab
B. Documenti (spazio di lavoro)
C. Dispositivi
Appunti di Computer Grafica e Computer Art
RGB = Red – Green – Blue
Sistema di gestione del colore
I problemi di corrispondenza colore sono causati dai diversi spazi cromatici usati da dispositivi e
software. Una soluzione consiste nell’usare un sistema che interpreti e converta i colori accuratamente
tra i diversi dispositivi. Un sistema di gestione del colore (CMS, Color Management System) confronta
lo spazio cromatico usato per creare il colore con lo spazio cromatico dell’output dello stesso colore;
quindi, effettua le regolazioni necessarie per rappresentarlo in modo coerente sui diversi dispositivi.
Un sistema di gestione del colore converte i colori mediante i profili colore. Un profilo è una
descrizione matematica dello spazio cromatico di un dispositivo. Ad esempio, un profilo di scanner
indica a un sistema di gestione del colore in che modo i colori vengono interpretati nello scanner. Nella
gestione del colore di Adobe vengono utilizzati i profili ICC, un formato standard definito dall’ICC
(International Color Consortium) e utilizzato su piattaforme diverse.
Dal momento che non esiste un unico metodo di conversione dei colori adatto a tutti i tipi di grafica,
un sistema di gestione del colore fornisce una serie di intenti di rendering, o metodi di conversione,
per poter applicare il metodo più indicato a un particolare elemento grafico. Ad esempio, un metodo di
conversione dei colori in grado di rispettare i rapporti cromatici di una fotografia naturalistica può
alterare invece i colori di un logo contenente tinte piatte.
Sintesi additiva e sottrattiva
I programmi di elaborazione delle immagini ricostruiscono il colore attraverso la sovrapposizione dei
colori primari. La sintesi del colore che si esprime attraverso il monitor del computer è la sintesi
additiva, dato che la percezione del colore in questo caso avviene per trasparenza. I colori primari sono
pertanto il rosso, il verde e il blu, che nel linguaggio informatico troviamo abbreviati sotto la sigla RGB
(si comportano come 3 fogli trasparenti sovrapposti, che nel linguaggio informatico prendono il nome
di canali). Ognuno livello ha la capacità di elaborare livelli di trasparenza del primario in base ai bit di cui
dispone.
Appunti di Computer Grafica e Computer Art
Quando ci riferiamo a pigmenti per la stampa si passa invece alla sintesi sottrattiva. Quando
stampiamo con una stampante a getto di inchiostro, la trasformazione dell’immagine da sintesi additiva
a sintesi sottrattiva viene fatta automaticamente dal sistema operativo del computer. Ma se invece si
deve stampare su una macchina per stampa tipografica, occorre che le immagini siano convertite prima
dell’inizio della stampa (il file diventa circa il 30% in più). Il metodo della sintesi sottrattiva è indicato
nei software, per convenzione, con la sigla CMYK (cyan, magenta, giallo e nero). Ai tre colori primari
della sintesi sottrattiva viene aggiunto il nero. Va comunque sottolineato che, se nella sintesi additiva
mescolando i tre primari si riesce ad ottenere il bianco, in quella sottrattiva mescolando i tre primari
non si ottiene il nero, ma un grigio scuro. Ecco perché, per ottenere il nero al 100%, è necessario
aggiungerlo come colore di stampa ai tre primari.
1. Metodo additivo (tipicamente monitor): i colori sono aggiunti al
nero per creare nuovi colori; più colori sono aggiunti, più colore
risultante tende al bianco.
RGB Red – Green – Blue (Rosso – Verde – Blu): è un metodo
additivo in cui i colori sono ottenuti componendo valori di
intensità del colore di Rosso, Verde e Blu in un intervallo. Il
valore (0,0,0) indica il nero mentre il valore (1,1,1) indica il
bianco.
2. Metodo sottrattivo (tipicamente stampanti): i colori sono sottratti dal bianco per creare nuovi colori;
più colori sono tolti, più risultante tende al nero.
CMY (Cyan – Magenta – Yellow): è uno spazio colorimetrico
sottrattivo che si basa sull’assorbimento della luce da parte
dell’inchiostro. Il valore (0,0,0) indica il bianco mentre il valore
(1,1,1) indica il nero. Il nero composto nella stampa ha una
cattiva resa, per cui a volte si utilizza una codifica CMYK con K
che indica il nero puro (ottenuto da inchiostro nero).
Appunti di Computer Grafica e Computer Art
MODELLO DI COLORE E SPAZI COLORIMETRICI
Un modello di colore è un modello matematico astratto che permette di rappresentare i colori in
forma numerica, tipicamente utilizzando tre o quattro valori o componenti cromatiche (per esempio
RGB e CMYK sono modelli di colore). Un modello di colore si serve cioè di un'applicazione che
associa ad un vettore numerico un elemento in uno spazio dei colori.
All'interno dello spazio dei colori di riferimento, il sottoinsieme dei colori rappresentabili con un certo
modello di colore costituisce a sua volta uno spazio di colori più limitato. Questo sottoinsieme è detto
gamma o gamut e dipende dalla funzione utilizzata per il modello di colore. Così, per esempio, gli
spazi di colori Adobe RGB e sRGB sono differenti, pur essendo entrambi basati sul modello RGB.
Uno spazio dei colori è la combinazione di un modello di colore e di una appropriata funzione di
mappatura di questo modello. Un modello di colore, infatti, è un modello matematico astratto che
descrive un modo per rappresentare i colori come combinazioni di numeri, tipicamente come tre o
quattro valori detti componenti colore. Tuttavia questo modello è una rappresentazione astratta, per questo
viene perfezionato da specifiche regole adatte all'utilizzo che se ne andrà a fare, creando uno spazio dei
colori.
Così, ad esempio, spazi di colore come Adobe RGB e sRGB sono diversi, pur basandosi entrambi sullo
stesso modello di colore RGB.
ESEMPI
RGB è il nome di un modello di colori le cui specifiche sono state descritte nel 1931 dalla CIE
(Commission internationale de l'éclairage). Tale modello di colori è di tipo additivo e si basa sui tre colori
rosso (Red), verde (Green) e blu (Blue), da cui appunto il nome RGB
CMYK è l'acronimo per Cyan, Magenta, Yellow, Key black; è un modello di colore detto anche di
quattricromia o quadricromia. I colori ottenibili con la quadricromia (sintesi sottrattiva) sono un
sottoinsieme della gamma visibile, quindi non tutti i colori che vediamo possono essere realizzati
con la quadricromia, così come non tutti i colori realizzati con l'insieme RGB (RED GREEN
BLUE) cioè quelli che vediamo sui nostri monitor (sintesi additiva) hanno un corrispondente
nell'insieme CMYK. Quando sono sovrapposti nelle diverse percentuali, i primi tre possono dare
origine quasi a qualunque altro colore. Il 100% di tutte e tre le componenti (CMYK 100,100,100,0)
non genera solitamente il nero, bensì il bistro, colore simile a una tonalità di marrone molto scura
Appunti di Computer Grafica e Computer Art
HSB, è l'acronimo di Hue Saturation Brightness (tonalità, saturazione e luminosità) e indica sia un
metodo additivo di composizione dei colori che un modo per rappresentarli in un sistema digitale.
Viene anche chiamato HSV, Hue Saturation Value (tonalità, saturazione e valore), o HSI, Hue
Saturation Intensity (tonalità, saturazione ed intesità).Per saturazione si intende l'intensità e la
purezza del colore, mentre la luminosità (valore) è un'indicazione della sua brillantezza. Ovviamente
la tonalità indica il colore stesso. Il modello HSB è particolarmente orientato alla prospettiva
umana, essendo basato sulla percezione che si ha di un colore in termini di tinta, sfumatura e tono.
Il sistema di coordinate è cilindrico e il modello HSB è definito come un cono distorto all'interno
del cilindro. La tonalità H viene misurata da un angolo intorno all'asse verticale, con il rosso a 0
gradi, il verde a 120 e il blu a 240. L'altezza del cono rappresenta la luminosità (B) con lo zero che
rappresenta il nero e l'uno il bianco. La saturazione (S) invece va da zero, sull'asse del cono, a uno
sulla superficie del cono.
GAMUT O SPAZIO COLORE
Tutti i colori che l'occhio umano può vedere si rappresentano con questo diagramma cromatico,
indicato con il nome di CIE 1931.
La gamma di un sistema di colori è la gamma dei colori che possono essere visualizzati o stampati. La
gamma più ampia di colori è rappresentata dallo spettro visibile in natura. Questo spettro contiene tutti
i colori che possono essere percepiti dall'occhio umano. Il metodo Lab contiene la gamma di colori più
ampia perché racchiude tutti i colori della gamma RGB e CMYK. L'insieme dei colori che l'occhio
umano (mediamente) può vedere viene chiamato spazio assoluto dei colori, ed è stato presentato con
diversi sistemi di coordinate assolute.
Le periferiche del computer non hanno, per quanto riguarda i colori, la capacità dell'occhio umano. Le
periferiche di input (scanner, macchina fotografica digitale) non riescono a leggere, e le periferiche di
output (monitor, stampante, video recorder) non riescono a riprodurre tutti i colori che l'occhio può
Appunti di Computer Grafica e Computer Art
vedere. Ogni periferica ne può leggere o riprodurre solo una parte, cioè un sottoinsieme, il cosiddetto
gamut (o conosciuto anche come spazio colore) di colori di quella periferica.
Un gamut o spazio colore, o modello colore, nasce dalla definizione di un sistema tridimensionale di
coordinate colore che possono assumere una rappresentazione spaziale. In questo senso, ogni singolo
colore assumerà nello spazio una diversa posizione, che lo distinguerà da tutti gli altri. Le coordinate
colore possono essere associate a varie componenti costitutive del colore in esame: per lo spazio RGB,
ad esempio, la tripletta di coordinate 1,0,1 rappresenterà un colore composto da una unità di R, zero di
G e ancora una di B. Essendo lo spazio RGB definito come la composizione dei tre colori
fondamentali nella sintesi additiva, cioè R=Red=rosso, G=Green=verde e B=Blue=blu, il colore
RGB=1 0 1 sarà un viola.
Ogni periferica ha il suo gamut e i vari gamut delle varie periferiche, riportati nel diagramma CIE, si
intersecano tra di loro. Ciò significa, per esempio, che esistono colori che si possono vedere su un
determinato monitor ma non si possono stampare, altri che si possono stampare ma non vedere su un
monitor, esistono colori che si possono vedere su un monitor ma non su un altro monitor, colori che
possono essere rilevati da un determinato scanner ma non possono essere stampati su una determinata
stampante e così via.
Ogni spazio colore ha il suo modo di descrivere la posizione di ciascun colore, ovvero ha un diverso
sistema di coordinate. Senza voler annoiare nessuno con concetti matematici troppo approfonditi si
sottolinea il fatto che quando si sente parlare di Spazio Colore (soprattutto in riferimento agli Spazi
Colore CIE) la parola "Spazio" non è usata nell'accezione generica che solitamente tutti danno a tale
termine, ma sottintende un concetto matematico ben preciso che è quello di Spazio Vettoriale. Uno
Spazio Vettoriale, è una struttura algebrica con proprietà matematiche precise che consente di
rappresentare uno spazio (ad esempio il mondo a tre dimensioni nel quale noi viviamo, oppure lo
spazio che contiene tutti i colori), tramite l'utilizzo di particolari oggetti matematici (i vettori) che
servono a costruire lo spazio e determinano quali proprietà esso possiede. Tutti gli Spazi Colore non
sono altro che particolari sottoinsiemi di spazi vettoriali aventi dimensione tre.
Uno stesso spazio vettoriale può essere costruito da un sistema di vettori diverso, ad esempio nel caso
degli spazi vettoriali che contengono spazi colore si possono usare vettori di tipo (x,y,z) o vettori di tipo
(L, a, b). In tal caso lo spazio vettoriale sarà sempre lo stesso però dal momento che è descritto da due
sistemi di vettori (e di coordinate) diversi avrà una forma differente anche se le sue proprietà
matematiche fondamentali rimangono immutate. Ad esempio la distanza tra due suoi punti (e quindi
anche tra due colori) si potrà calcolare con la stessa formula ma l'insieme dei colori visibili apparirà di
forma diversa, più uniforme in un sistema che nell'altro.
Appunti di Computer Grafica e Computer Art
Qualsiasi tipo di periferica di input o di output usa componenti uguali ma diversi tra loro. Nonostante il
gioco di parole quello che si vuole evidenziare è che anche scanner, monitor o stampanti dello stesso
modello costruiti in serie uno dopo l'altro, hanno gamut diversi. Addirittura la stessa periferica ha
gamut diverso man mano che invecchia.
Una conversione da uno spazio colore ad un altro, si rende necessaria quando si vuole portare un
insieme di dati colore da un sistema di visualizzazione ad un altro che utilizza una diversa sintesi
cromatica.
Il gamut di una stampante è diverso dal gamut di un monitor, pur essendo entrambi sottoinsiemi
dell'insieme dei colori visibili dall'occhio umano. Normalmente, il gamut di una stampante è più
ristretto del gamut di un monitor: in altre parole la stampante può produrre solo una parte dei colori
che produce il monitor. Per certe combinazioni monitor/stampante, esistono anche colori che possono
essere stampati ma non prodotti dal monitor. Alcuni colori, quali il cyan puro e il giallo puro, non
possono essere visualizzati con precisione su un monitor. La gamma più piccola è quella del metodo
CMYK, composta dai colori che possono essere stampati con gli inchiostri della stampa in
quadricromia.
I colori RGB del monitor vengono espressi mediante tre numeri, ognuno dei quali va da 0 a 255. Per
quanto si è detto questi stessi numeri producono colori (leggermente) diversi su monitor diversi.
Non c'è un singolo spazio RGB di monitor, ma una famiglia di spazi RGB di monitor, ognuno un po'
diverso dall'altro. Si può dire, con altre parole, che lo spazio RGB dipende dal monitor (più in generale,
dalla periferica, device-dependent) a cui ci si riferisce (e quindi non è uno spazio: ma uno per ogni
periferica, cioè una famiglia di spazi).
Quindi ogni singolo monitor ha un suo specifico gamut di colori, un proprio insieme di colori
producibili, oppure come si dice, un proprio spazio di colori che, per quanto abbiamo visto è di tipo
RGB (cioè prodotto in sintesi additiva a partire da fosfori rosso, verde e blu).
Diversi tipi di stampanti usano diversi inchiostri (e diversa carta, e diversi modi di aggiungere il nero, e
diverse lineature di retino) e hanno quindi gamut diversi. Una particolare stampante modifica il suo
gamut se si cambiano gli inchiostri, la carta o altre caratteristiche.
I colori di una stampante vengono espressi con quattro numeri ognuno da 0 a 100, che indicano le
percentuali di inchiostro CMYK di quel pixel. Per quanto si è visto una fissata percentuale CMYK dà
colori diversi su stampanti diverse. Ogni stampante ha il proprio gamut, cioè il proprio spazio di colori
che in questo caso è uno spazio CMYK (cioè prodotto in sintesi sottrattiva a partire da inchiostri ciano,
magenta, giallo e nero).Non esiste quindi un singolo spazio CMYK di stampante, ne esistono numerosi,
uno per ogni combinazione di stampa (stampante, inchiostri, carta).
Appunti di Computer Grafica e Computer Art
LO SPAZIO DEI COLORI DELL'OSSERVATORE STANDARD
Nel 1931 la Commission Internationale de l'Eclairage (Commissione Internazionale per l'Illuminazione)
definì uno spazio di colore che comprendeva tutte le tinte visibili dall'occhio umano, a prescindere dalla
luminanza. Infatti qualunque colore all'interno di questo spazio bidimensionale può avere una
luminanza che varia dal bianco al nero e se si tiene conto anche di questo fattore (la luminanza) lo
spazio così definito diviene tridimensionale e rappresentato mediante coordinate XYZ. Il modello CIE
1931 si basa, come altre codifiche note, sull'utilizzo di tre colori primari che, opportunamente miscelati
tra loro in sintesi additiva, permettevano di ottenere tutti i colori che l'occhio umano può percepire. La
commissione CIE ha comunque definito diversi modelli matematici di percezione del colore indicati
come spazi di colore e rappresentati da sigle come XYZ (è il modello CIE 1931), xyY, Lab, Luv.
A differenza, però, dei metodi RGB o CMYK (usati rispettivamente in sintesi additiva e in sottrattiva),
il diagramma di cromaticità proposto dalla CIE non dipendeva dal comportamento di questo o quel
dispositivo di visualizzazione o stampa in quanto basato sul concetto di Osservatore Standard.
Quest'ultimo è definito a partire dalle proprietà del sistema visivo dell'uomo e si basa su analisi
sistematiche effettuate su un vasto campione di osservatori umani. E in base a numerosi studi effettuati
nel primo dopoguerra fu notata l'impossibilità di riuscire a riprodurre per sintesi additiva tutti i colori
comunque si scegliesse la terna di primari reali da miscelare.
Poiché può rappresentare tutte le tinte percepibili, lo spazio di colore del CIE è preso come riferimento
per tutti gli altri, tuttavia nella pratica non viene molto usato a causa della sua complessità.
Appunti di Computer Grafica e Computer Art
Formati di compressione delle immagini
In genere la compressione è una particolare operazione di codifica, nella quale l’obiettivo è quello di
generare un messaggio codificato che abbia una dimensione minore del messaggio sorgente. Gli
algoritmi di compressione, che introduciamo trattando le immagini, possono essere classificati come:
1. Lossless (senza perdita): la compressione è reversibile, ovvero dall’informazione compressa è
possibile ricostruire esattamente l’informazione originale.
2. Lossy (con perdita): la compressione è irreversibile poiché non è possibile ricostruire esattamente
l’informazione originale. In questo caso viene codificata una quantità minore di informazioni e
questo permette di ottenere rapporti di compressione nettamente maggiori rispetto a quelli che si
hanno con la compressione lossless. D’altra parte, la perdita di dettagli che si ha con la compressione
lossy può non essere percettibile.
Le tecniche di compressione più comuni sono le seguenti:
RLE (Run Length Encoding) è una tecnica di compressione senza perdite supportata dai formati di
file Photoshop e TIFF, nonché da alcuni comuni formati di file Windows.
LZW (Lemple-Zif-Welch) è una tecnica di compressione senza perdite supportata dai formati di
file TIFF, PDF, GIF e in linguaggio PostScript. Questa tecnica è particolarmente utile per
comprimere immagini contenenti ampie aree di un unico colore, quali le immagini di cattura dello
schermo o semplici immagini di tipo paint.
JPEG (Joint Photographic Experts Group) è una tecnica di compressione con perdite supportata
dai formati di file JPEG, PDF e in linguaggio PostScript. La compressione JPEG garantisce i
risultati migliori con le immagini a tono continuo, come le fotografie.
ZIP è una tecnica di compressione senza perdite supportata dal formato di file PDF. Come per
LZW, anche la compressione ZIP è particolarmente efficace per immagini contenenti ampie aree di
un unico colore.
Appunti di Computer Grafica e Computer Art
Le immagini vettoriali
La grafica vettoriale è costituita da linee e curve matematicamente definite, dette vettori. Potete quindi
spostare, ridimensionare o modificare il colore di una linea senza compromettere la qualità della grafica.
La grafica vettoriale non è vincolata alla risoluzione; può essere ingrandita o rimpicciolita e stampata a
qualunque risoluzione, senza perdita di particolari né di nitidezza. Di conseguenza, la grafica vettoriale è
la soluzione ideale per elementi netti, come i logotipi, le cui linee devono restare nitide a qualunque
dimensione. Si parla quindi di immagini vettoriali, se create da
programmi di grafica quali Autocad, Illustrator, ArchiCad. Gli
elementi grafici in esse contenuti (linee, archi, retini, ...) sono
riconoscibili come tali, e pertanto selezionabili e modificabili
singolarmente; generano stampe nitide a qualsiasi fattore di scala.
Vengono rappresentate con equazioni matematiche. In modalità
vettoriale le figure sono rappresentate con formule, per esempio un
cerchio è identificato con le coordinate del centro e la lunghezza
del raggio. Gli oggetti grafici rappresentabili sono punti, linee, archi circolari e curve. Poiché esistono
moltissime curve diverse, e un programma non può gestirle tutte, viene normalmente utilizzato un tipo
di curva, studiato per la prima volta nel 1972 dal matematico Pierre Beziér.
Le immagini bitmap o raster
Le immagini bitmap, o immagini raster, sono costituite da una griglia
di punti detti pixel. Quando lavorate con le immagini bitmap,
modificate i pixel anziché gli oggetti o le forme. Le immagini bitmap
sono il mezzo elettronico più diffuso per riprodurre immagini a
tono continuo, come le fotografie o i disegni digitali, poiché sono in
grado di rappresentare anche le più lievi gradazioni di tonalità e
colori. Le immagini bitmap possono deteriorarsi se ridimensionate
sul monitor, perché dipendono dalla risoluzione, contengono un
numero fisso di pixel e a ciascun pixel è assegnata una posizione specifica e un colore. Le immagini
bitmap possono risultare scalettate se stampate a bassa risoluzione, poiché ciascun pixel viene
Appunti di Computer Grafica e Computer Art
ingrandito. Raster (o bitmap), se provenienti da strumenti di acquisizione quali scanner o fotocamere
digitali, o create da programmi di fotoritocco. Gli elementi grafici sono costituiti da punti allineati, e
non possono essere singolarmente modificati o selezionati; la stampa raramente è nitida e peggiora
all’aumentare del fattore di scala. Se è vero che la trasformazione di un’immagine da vettoriale in
bitmap è un processo semplice, è pur vero che il processo inverso, detto vettorizzazione, è molto
complesso.
Principali formati vettoriali
.cdr (il formato di CorelDraw)
.swf (ShockWave Flash, il formato di Macromedia Flash, utilizzato per la creazione di animazioni
destinate al web. Richiede il plug-in Flash Player)
.svg (Scalable Vector Graphics è visualizzabile dai browsers ma necessita del plug-in Adobe SVG
Viewer. Come il formato di Flash, permette di creare delle animazioni. Usa il linguaggio XML)
.ai (Adobe Illustrator)
.fh (Freehand)
.dfx (Drawing Exchange Format)
Appunti di Computer Grafica e Computer Art
Principali formati raster
.bmp Acronimo di bitmap. È il formato standard delle immagini bitmap (mappa di bit), di Windows.
.tiff Tagged Image File Format. Di tipo lossless, è il formato principe per la stampa di qualità.
.pcx Il PCX supporta la gestione di colore RGB, scala di colore, scala di grigio e bitmap. Non
supporta i canali alfa. Supporta una profondità di colore che arriva sino a 24 bit.
.pict È il formato nativo delle immagini per i sistemi Macintosh.
Principali formati raster per il web
.gif Graphical interchange format
.jpeg Joint Photographic Expert Group
.png Portable Network Graphics
Formati ibridi (possono essere usati sia per le immagini vettoriali che raster)
.eps (Encapsulated Postscript, utilizzato nel campo della stampa professionale)
.pdf (Portable Document Format, è il formato visualizzabile con Adobe Acrobat Reader)
.psd (È il formato nativo di Photoshop. Se l’immagine che state creando dovrà essere
successivamente modificata o aggiornata è opportuno salvare il documento in questo formato,
in quanto verranno mantenuti i livelli, i canali, le selezioni effettuate. Ovviamente,
memorizzando tutte queste informazioni, questi documenti possono raggiungere dimensioni
enormi)
Appunti di Computer Grafica e Computer Art
Distinzione fondamentale tra i due formati
Gli elementi grafici che si basano sui vettori sono descritti mediante
una formula matematica ed attributi supplementari. Per quanto
riguarda un cerchio, allo scopo serve – ad esempio – il centro
(sotto forma di coordinata) ed il diametro. Gli attributi possono
definire ulteriormente, ad esempio, il tratto, il colore, ecc. Gli
elementi grafici che si basano sui raster sono descritti tramite la
disposizione di singoli punti (chiamati anche pixel) in una matrice.
Anche in questo caso gli attributi dei singoli pixel descrivono le
diverse caratteristiche, come il colore o la trasparenza.
Perché vettori e raster?
Tutti e due i sistemi presentano vantaggi che si possono sfruttare in maniera mirata. I dati che si basano
sui pixel risultano particolarmente adatti per le illustrazioni in cui le informazioni sul colore variano da
punto a punto, come capita con le fotografie. I dati che si basano sui raster sono adatti per la creazione
di illustrazioni contenenti elementi come linee, rettangoli, testo, ecc. Questi vengono rappresentati
sempre lisci e si può, inoltre, modificare a piacere e senza alcuna perdita la grandezza dell’intera
grandezza.
Qualità della rappresentazione
I vettori ed i raster possono differenziarsi nella qualità di rappresentazione. I vettori vengono
rappresentati sempre con la qualità migliore, in quanto fino alle coordinate invisibili per la formula non
vengono raffigurati punti fissi. I raster sono rappresentati con un livello di qualità più o meno elevato a
seconda del grado di zoom. Questo ha a che fare con la struttura a pixel del sistema: i singoli pixel
diventano visibili a partire da un determinato ingrandimento e creano il cosiddetto effetto a scalini.
Appunti di Computer Grafica e Computer Art
Vantaggi particolari
I dati vettoriali si possono riutilizzare in maniera molto flessibile. E’ possibile allungare una linea,
variare un diametro o disporre rapidamente in modo diverso gli elementi. Specialmente per quanto
concerne l’Illustrazione Tecnica, questa significa che potete riutilizzare in un’altra illustrazione un
elemento già creato, senza alcuna perdita di tempo. Elaborare dei raster in un programma di grafica
raster è infatti alquanto facile: la funzione gomma consente di eliminare in fretta certe parti degli
elementi. Anche la gestione dei colori costituisce un particolare punto di forza di questi programmi.
Dimensione file
I dati raster, nella maggior parte dei casi, richiedono più spazio a livello di memoria che non un file
vettoriale. Il volume dei dati si rivela essere un fattore non certo trascurabile, al più tardi quando si
desidera rendere disponibile questi dati in internet.
Convertibilità
I dati vettoriali si possono convertire in un formato raster senza difficoltà alcuna. La procedura in senso
inverso, invece, non è così semplice. La qualità dei dati raster ne risente parzialmente, in caso di
numerose elaborazioni ed anche di conversione tra formati raster differenti.
Appunti di Computer Grafica e Computer Art
I Formati grafici
Quando l’immagine viene registrata su un supporto di massa (tipicamente su disco rigido) è necessario
scrivere, oltre ai dati dell’immagine, anche altri dati che consentono di ricostruirla. Il modo in cui una
immagine viene scritta su disco viene detto formato grafico. Naturalmente i formati grafici si
raggruppano in due categorie: per le immagini bitmap e per le immagini vettoriali.
Per memorizzare una immagine bitmap si scrivono due tipi di informazioni:
1. i valori dei pixel
grigio: un valore per ogni pixel
RGB: tre valori
CMYK: quattro valori
2. le metainformazioni
Per le immagini a 8 bit, i valori vanno da 0 a 255, per le immagini a 16 bit da 0 a 65535. Secondo il
modo in cui sono organizzate le metainformazioni si hanno diversi formati grafici bitmapped
BMP
E’ il formato standard di Microsoft Windows e consente di usare diverse risoluzioni cromatiche (RGB, scala
di colore e scala di grigio). Windows bitmap è un formato dati utilizzato per la rappresentazione di
immagini raster. Una delle caratteristiche essenziali del formato bitmap che ne hanno fatto per molto
tempo la fortuna è la velocità con cui le immagini vengono lette o scritte su disco, molto maggiore se
paragonata a quella di altri tipi di file, soprattutto sulle macchine più lente. Nelle bitmap non compresse
la rappresentazione dei dati nella memoria RAM è in gran parte simile, spesso identica, a quella dei dati
su disco: il processore non è costretto ad effettuare calcoli laboriosi durante le operazioni di codifica e
di decodifica e il tempo di accesso ai dati è spesso limitato solo dall'hardware del drive.
Veloci e ingombranti, le bitmap si rivelano adatte soprattutto alla memorizzazione temporanea delle
immagini che vengono modificate spesso.
Appunti di Computer Grafica e Computer Art
TIFF
Tag Image File Format è il più usato, più flessibile ed affidabile metodo per memorizzare immagini bitmap
in bianco e nero, a scala di grigio, a scala di colore, a colori RGB, CMYK, YCbCr, Lab. Un file TIFF
può essere di ogni dimensione (in pixel) e di ogni profondità di bit. Può essere salvato con o senza
compressione; Photoshop utilizza la compressione LZW, che è di tipo lossless. Oltre ai dati dei pixel
TIFF può contenere qualunque metainformazione in locazioni di memoria chiamate tag. Le più comuni
sono la risoluzione, la compressione, il tracciato di scontorno, il modello di colore, il profilo ICC.
Sebbene sia considerato un formato standard, alcune applicazioni inseriscono dei tag proprietari che
talvolta impediscono ai file di essere aperti da altre applicazioni. Esistono due versioni di TIFF, una per
macchine Windows e una per macchine Macintosh. L’unica differenza consiste nel fatto che i byte sono
ordinati in maniera diversa. I byte nei file per Windows iniziano con le cifre meno significative, nei file
per Macintosh con quelle più significative. Le specifiche ufficiali di TIFF, (versione 6 pubblicata nel
1992), sono state sviluppate da Microsoft e Aldus (che successivamente si è fusa con Adobe, la quale
attualmente detiene il copyright per questo formato). TIFF è un formato facilmente estensibile, ed
infatti sono state create diverse estensioni per specifiche applicazioni, registrando nuovi tag presso
Adobe. In particolare Adobe stessa ha scritto nel 1995 le cosiddette estensioni per PageMaker, che
consentono tra l’altro di inserire in un TIFF tracciati di scontorno.
PNG
In informatica, il Portable Network Graphics (PNG) è un formato di file per memorizzare immagini.
Il formato PNG è superficialmente simile al GIF, in quanto è capace di immagazzinare immagini in
modo lossless, ossia senza perdere alcuna informazione, ed è più efficiente con immagini non
fotorealistiche (che contengono troppi dettagli per essere compresse in poco spazio).
Essendo stato sviluppato molto tempo dopo, non ha molte delle limitazioni tecniche che potevano
limitare l'utilizzo del GIF: può memorizzare immagini in colori reali (mentre il GIF era limitato a 256
colori), ha un canale dedicato per la trasparenza (canale alpha). Esiste il formato derivato MNG, che è
simile al GIF animato.
Appunti di Computer Grafica e Computer Art
GIF
GIF è un formato standard di memorizzazione di file grafici bitmap a scala di colore (quindi RGB).
GIF è la sigla di Graphics Interchange Format ed è stato creato da CompuServe, uno dei primi servizi
online, per trasmettere in rete immagini grafiche in modo compresso, quindi rapido. GIF è
probabilmente il formato grafico più usato al mondo, in quanto è prevalente su Internet, nelle BBS e
nelle librerie shareware (5). GIF funziona bene sui grafici “al tratto”, sia in bianco e nero che a colori e
supporta al massimo 256 colori. Non funziona bene con le fotografie e le immagini sfumate, per le
quali è meglio usare JPEG. GIF è superiore a JPEG se si tratta di disegni al tratto, logo, fumetti. In
questi casi GIF non elimina pixel, come fa JPEG, ma anzi li riproduce esattamente. GIF funziona solo
con immagini a scala di colore, con un massimo di 256 colori (o grigi). Utilizza una compressione
lossless, il che significa che nessun pixel dell’immagine originale viene perduto (contrariamente ai
metodo di compressione lossy). Precisamente, l’algoritmo usato è quello di Lempel-Ziv-Welch (LZW).
Quando il World Wide Web si diffuse, il formato GIF divenne uno dei due formati immagine
comunemente usati nelle pagine Web, l’altro è il JPEG. La maggior parte degli Internet browser ancora
adesso non supportano altri formati immagine, per scoraggiare l’utilizzo di file più grandi del necessario.
La possibilità di memorizzare più immagini in un unico file di tipo GIF, accompagnate da dati di
controllo, è spesso utilizzata per creare semplici animazioni (GIF animate).
JPEG
JPEG è un formato standard di compressione dei file grafici bitmapped. JPEG è la sigla di Joint
Photographic Experts Group, il nome del comitato che ha scritto le specifiche. JPEG è stato progettato per
memorizzare immagini a colori o a grigi di scene fotografiche naturali in modo compresso. Funziona
bene sulle fotografie, sui quadri naturalistici e simili; non funziona bene sui fumetti, disegni al tratto,
logo, lettering. JPEG tratta solo immagini statiche, ma esiste un altro standard correlato, MPEG, per i
filmati (immagini in movimento). JPEG/JFIF (JPEG File Interchange Format) è il formato più utilizzato
per la memorizzazione di fotografie.
5 Lo Shareware è una tipologia di licenza software molto popolare sin dai primi anni ‘90. Vengono distribuiti sotto tale licenza in genere piccoli programmi facilmente scaricabili via Internet. Il software sotto tale licenza può essere liberamente ridistribuito e utilizzato per un periodo di tempo di prova variabile (generalmente 30 giorni), dopodiché è necessario registrare il software presso la casa produttrice pagandone l’importo.
Appunti di Computer Grafica e Computer Art
PICT
Pict (abbreviazione di Picture) è il più vecchio formato ad oggetti del Mac. La descrizione degli oggetti è
codificata in QuickDraw, il linguaggio grafico nativo del Mac. Pict supporta otto colori: bianco, nero,
ciano, magenta, giallo, rosso, verde e blu. Pict è adatto a disegni al tratto di media qualità e bitmap a
bassa risoluzione con pochi colori. L’archivio appunti del Mac per esempio lavora con Pict. Pict2 è una
estensione del formato Pict ed ha due sottotipi: 24-bit Pict2 (oltre 16 milioni di colori) e 8-bit Pict2 (256
colori).
PostScript (.ps)
PostScript è un linguaggio di programmazione specializzato per la computer grafica vettoriale (ma può
trattare anche grafica bitmap). Essendo PostScript un linguaggio, un file PostScript (suffisso .ps) è un
file di testo che contiene un programma (dati e istruzioni) che viene eseguito su un processore collegato
con (o incorporato in) una stampante. Questo processore è detto RIP (Raster Image Processor) ed è
composto di tre parti: un interprete, una parte che realizza la rasterizzazione e una terza parte che
realizza la retinatura. Il risultato dell’interpretazione del programma PostScript è un file (display list) che
contiene, pagina per pagina, l’elenco degli oggetti da stampare. Questo file non è un programma, ma
sono dei dati in attesa di essere sottoposti al rendering e alla retinatura e che verranno infine stampati
sulla stampante.
EPS
Encapsulated PostScript (EPS) è un programma PostScript formattato in modo particolare e soggetto ad
alcuni vincoli (deve rispettare la Adobe Document Structuring Convention, DSC, ossia un formato speciale
per i documenti PostScript. Se dovete scrivere un programma PostScript, il driver di una stampante,
qualche utility, dovete farlo seguendo questa convenzione, in modo che tutti lo possano leggere). EPS è
uno standard pensato per l’esportazione e l’importazione di file PostScript in qualunque ambiente. Può
contenere ogni combinazione di testo, grafica vettoriale e grafica bitmap, il tutto descritto in PostScript.
EPS può contenere anche una anteprima bitmap così che che i programmi che non possono
interpretare direttamente il PostScript possano comunque dare una rappresentazione approssimata del
contenuto del file su monitor e sulle stampanti non PostScript. Questa anteprima può essere in Pict
(Macintosh), TIFF (Windows) o JPEG. Normalmente un EPS viene incluso come illustrazione in
qualche altro lavoro (un’altra illustrazione, un libro, un depliant).
Appunti di Computer Grafica e Computer Art
PDF è un formato grafico derivato dal PostScript con il quale condivide il modo di descrivere gli
oggetti grafici: le pagine, i colori, le coordinate, il testo, i bitmap. Un file PDF è molto simile alla display
list di un rip. Non è un programma come un file PostScript, ma un elenco di oggetti grafici ottenuti
interpretando (eseguendo) un file PostScript (l’interprete può essere Acrobat Distiller). Un file PDF ha
il concetto della propria struttura e agisce come un database. Ogni documento PDF contiene una
completa descrizione del documento bidimensionale (e, con la comparsa di Acrobat 3D, documenti 3D
incorporati) composta da proprietà (Titolo, Autore, ...) testo, stili di carattere (font), immagini e oggetti
di grafica vettoriale 2D che compongono il documento. Il documento PDF non include informazioni
specifiche per software, hardware e sistema operativo usato. Ciò permette che il documento venga
visualizzato e renderizzato nella stessa esatta maniera indipendentemente dalla piattaforma e/o
dispositivo utilizzato per leggerlo
SVG
Scalable Vector Graphics abbreviato in SVG, indica una tecnologia in grado di visualizzare oggetti di
grafica vettoriale e, pertanto, di gestire immagini scalabili dimensionalmente.
La maggior parte dei prodotti software per disegnare come Adobe Illustrator e Corel Draw nelle
versioni più recenti sono in grado di esportare immagini descritte in SVG. Anche il pacchetto Draw
della OpenOffice.org dalla versione 1.1 può esportare file SVG. Due strumenti grafici open source e
multipiattaforma che usano il formato SVG sono Sodipodi e Inkscape. Le potenzialità di una grafica
vettoriale scalabile sono notevoli (la geometria di ciascun elemento grafico è definita matematicamente,
anziché essere trattata mediante rigidi quadri di pixel ; è possibile ridimensionare a piacere qualsiasi
elemento grafico, mantenendone la qualità. Più in particolare, nel visualizzare un dato oggetto grafico
su supporti di differente natura (stampa, video, plotter, schermo di cellulare, ...), si è certi di ottenere
sempre la massima qualità che quei supporti possono fornire).Tali potenzialità interessano praticamente
tutte le applicazioni grafiche che non siano puramente raster, cioè basate su mappe di pixel (nella
pratica immagini provenienti da fotocamere o da scansioni). Il vantaggio dell'SVG rispetto ad altri
formati di grafica vettoriale consiste nella sua natura di standard aperto: in questo modo in linea di
principio chiunque lo conosca è in grado di realizzare pagine SVG senza avere la necessità di un
ambiente di sviluppo commerciale dedicato
Appunti di Computer Grafica e Computer Art
SHP
Lo Shapefile ESRI è un popolare formato vettoriale per sistemi informativi geografici. Il formato è
stato sviluppato e regolato da ESRI ed emesso come (quasi) Open Source (6), allo scopo di accrescere
l’interoperabilità fra i sistemi ESRI e altri GIS. Di fatto è diventato uno standard per il dato vettoriale
spaziale, e viene usato da una grande varietà di sistemi GIS. Con shapefile si indica di norma un insieme
di file con estensione .shp, .dbf, .shx.
Bibliografia di riferimento
Alan Watt and Fabio Policarpo, The Computer Image, Addison-Wesley, 1998.
Bertoline G.R. , Wiebe E.N. , Fondamenti di comunicazione grafica, McGraw-Hill, Milano, 2004.
F. S. Hill. Computer Graphics Using Open GL , Prentice Hall, 2001.
Fara Giulietta, Romeo Andrea, Vita da Pixel. Effetti speciali e animazione digitale. Il Castoro, Milano,
2000.
Foley J.D., van Dam A., Computer Graphics (Principles and Practice), Addison-Wesley, 1997
John Miano, Compressed Image File Formats, Addison-Wesley, 1999.
M. Rossi A. Moretti, Sintesi delle immagini per il fotorealismo, Franco Angeli, 1998
Marini D., Bertolo M., Rizzi A., Comunicazione visiva digitale, Addison-Wesley, 2001
Martin Evening, Adobe photoshop CS2 Soluzioni professionali, Ed. McGraw Hill, 2005
Paoluzzi, Informatica grafica: metodi, algoritmi, programmi per il disegno automatico col calcolatore, La Nuova
Italia Scientifica, 1987.
Pietro Morasso, Vincenzo Tagliasco, Eidologia Informatica, Ed. NIS, 1984
S.Harrington, Computer graphics, Mc Graw H.B.C., 1985.
N.B.Immagini e testi tratti anche da Wikipedia
6 Termine inglese che significa sorgente aperto, indica un software rilasciato con un tipo di licenza per la quale il codice sorgente è lasciato alla disponibilità di eventuali sviluppatori, in modo che con la collaborazione (in genere libera e spontanea) il prodotto finale possa raggiungere una complessità maggiore di quanto potrebbe ottenere un singolo gruppo di programmazione.