Salta al contenuto principale

Nello sviluppo di applicazioni multimediali la parola 'grafica' è un termine piuttosto vasto. Con essa si intende la rappresentazione di

  • grafici
  • diagrammi
  • loghi
  • immagini
  • foto
  • immagini fisse di animazioni

Attraverso appositi programmi di grafica, è possibile, al computer rielaborare tali oggetti grafici, ed è quello che si fa comunemente.
Lo sviluppo della grafica ha posto una serie di problematiche che devono essere, di volta in volta, valutate e risolte.
Esse sono:

  1. l'eccessiva dimensione delle immagini digitali ad alta risoluzione -> per questo si utilizza la Compressione
  2. l'eccessiva varietà di formati diversi nella memorizzazione dell'immagine -> per questo si cerca di utilizzare quanto più possibile formati standard
  3. la possibilità che la stessa immagine venga stampata in modo diverso su stampanti differenti, oppure visualizzata in modo differente, con colori diversi, su monitor differenti.


 

Grafica tradizionale

La grafica al computer (computer graphics) condivide con la grafica tradizionale alcuni concetti chiave.
Esistono due tipi di immagini:
"contone": quando una immagine è composta da livelli di colore che variano con continuità
"line art": quando una immagine è costituita da una combinazione di linee più o meno vicine, ciascuna di esse senza distinzione di tonalità di colore e senza ombreggiatura

Le immagini possono essere riprodotte partendo dal negativo, oppure con tecnche xilografighe.

Per xilografia (dal greco ξύλον, "legno" e γράφω "scrivo"), si intende l'incisione di immagini e a volte di brevi testi su tavolette di legno, le matrici.
Un'altra possibilità è quella di usare tante linee costituite da piccoli punti per riprodurre l'immagine

Colore CMYK
E' la tecnica a quattro colori (C=Cyan - Ciano, M=Magenta, Y=Yellow - Giallo, K= Key color, usualmente black - nero) per riprodurre le immagini a colori di tipo contone
Attraverso dei punti molto piccoli e vicini di questi quattro colori si riescono a riprodurre i vari colori.

Per stampare si usa un processo sottrattivo: la luce è riflessa è riflessa dalla superficie da stampare e il pigmento che viene usato per stampare l'immagine assorbe, ossia sottrae alcuni dei colori della luce bianca. I colori che non vengono assorbiti, ossia i rimanenti, sono i colori che giungono all'occhio umano e che vengono visualizzati.
Per contrasto invece per visualizzare i colori nei monitor dei computer si usa una tecnica additiva: i colori vengono implementati mettendo una certa percentuale di rosso (R - red), verde (G - green), blu (B - blue).

Alcuni programmi di grafica lavorano con il modello RGB, eppoi lo convertono in CMYK prima di stampare, e a volte questo processo di conversione crea problemi perché i colori stampati non sono "realistici".
 

Computer Graphic bidimensionale (2-D)

Esistono due tipi di grafica bidimensionale

  • quella di tipo bitmap , o "raster"
  • quella di tipo vettoriale

La prima, di tipo bitmap, è particolarmente adatta per le immagini che devono essere memorizzate partendo dalla realtà, come le foto, e nei dettagli, come i disegni e le pitture
La seconda, quella vettoriale, serve per le immagini create al computer e i loghi di siti e/o aziendali.

Immagini Bitmap

Sono immagini ottenute da piccoli elementi colorati, come fosse un mosaico. Possono essere anche ottenute come un "pattern" di elementi discreti, chiamati pixel.

Pattern è un termine inglese che può essere tradotto con disegno, modello, schema, schema ricorrente.

Solitamente i pixel sono piccoli quadratini, proprio come accade in un mosaico, di un determinato colore.
L'amalgama effettuato dall'occhio umano, per effetto della diffrazione, produce l'immagine.
Ad ogni pixel è associato un codice binario che ne definisce il colore. A seconda del numero di bit utilizzati per determinare il codice del pixel si stabilisce il numero di colori differenti che possono apparire in una immagine.
Se per ogni pixel si intende utilizzare un solo bit, l'immagine avrà solo due colori, ed essi sono di solito il bianco e il nero.
Se si aggiunge un bit, ossia due bit per ogni pixel possiamo avere quattro colori.
Ad ogni aggiunta di un bit si raddoppiano il numero di colori che sono a disposizione per l'immagine.
Ad esempio con 8 bit ci sono 28=256 colori diversi disponibili.
Nelle immagini bitmap o raster esiste "logicamente" una matrice o array in cui per ogni pixel si deve memorizzare la posizione e il colore. La posizione di solito è "implicita", ossia, analogamente a quanto accade per le immagini televisive analogiche si stabiliscono a priori le dimensioni e si parte dal pixel in alto a sinistra e si arriva, pixel per pixel alla fine della prima riga, per poi passare alla seconda e così via.
Le immagini di tipo bitmap possono essere di tre tipi

  • Line Art
  • A livelli di grigio
  • A colori


Le immagini Line Art sono simili a quelle per la stampa tipografica ed editoriale tradizionale, con Line Art di soli due colori, che sono di solito bianco e nero. Pertanto per ogni pixel è richiesto soltanto un bit. Si puo' usare ad esempio '0' per bianco e '1' per nero o viceversa.
Possono essere usate per diagrammi e disegni. Se si sceglie di rappresentare una immagine a scala di grigio in bianco e nero, solitamente, si puo' scegliere anche al soglia oltre il quale il grigio viene considerato nero, e sotto la quale viene considerato bianco.
E' evidente che il vantaggio di questo tipo di immagine è il fatto che il file occupa poco spazio, pochi Byte.

Le immagini a scala di grigio sono solitamente immagini a 8 bit per ogni pixel, ossia i colori possibili sono il bianco, il nero e altri 254 livelli di grigio.
Per le immagini che è opportuno rappresentare in bianco e nero non è opportuno rappresentarle a scala di grigio, occuperebbero uno spazio 8 volte maggiore e non sarebbe più chiara.
Viceversa le foto che in analogico sono in bianco e nero, è opportuno rappresentarle a scala di grigio.

Le immagini a colori sono costituite da un pattern di pixel colorati.
A seconda del numero di colori che si vuole avere per ogni pixel avremo un numero diverso di profondità di colore , ossia un numero diverso di bit per pixel.
Solitamente si usano 8 bit per pixel (256 colori) oppure 24 bit per pixel (circa 16,7 milioni di colori TRUE Color).
Si possono scegliere diverse color-palette, ossia diverse tavolozze di colore per disegnare o rappresentare una immagine digitale, così come farebbe un pittore per creare un quadro.
Le color-palette si chiamano anche CLUT (Color Look-Up Table).
Sistemi operativi diversi come Windows e Mac usano diverse color palette a 8 bit per pixel, questo puo' causare che la stessa immagine su un S.O. è ben colorata e sull'altro ha i colori 'sfalzati', ossia differenti.
Esiste una palette adatta per il web, che contiene solo un sottoinsieme di quei colori che sono uguali o comunque molto simili in tutti gli ambienti principali.

Quando si usano le immagini in true color a 24 bit per pixel, i 16,7 milioni di colori sono ottenuti con una combinazione dei colori RGB (Red=Rosso, Green=Verde, Blue=Blu). Si usano 8 bit per ognuno di questi tre colori. La percentuale di ognuno di essi puo' andare da 0 al 100%, dove il 100% è rappresentato con 255.
127 è l'equivalente del 50%.
Allora con 256 livelli per ogni colore, con i tre colori ho 256 x 256 x 256 = 16.777.216 colori differenti , ossia, appunto 16,7 milioni di colori.

In alcuni casi si usano pixel rappresentati con un codice a 32 bit, in cui gli 8 bit aggiuntivi vengono utilizzati per effetti speciali quali ad esempio la "trasparenza".
Se si usassero 16 bit, anziché 8, per ciascuno dei tre "canali" di colore, Rosso, Verde e Blu, potremmo aver 216x216x216 uguali a circa 281mila miliardi (per l'esattezza 281.474.976.710.656 colori differenti).

Oltre alle tavolozze RGB esistono anche le tavolozze CMYK (vedi sopra) e HSB.
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.
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. DA CORREGGERE



La problematica principale dei file bitmap è la grandezza (size) del file al crescere del numero di pixel che si vogliono rappresentare e memorizzare: tale grandezza può essere un problema per l'utilizzo eccessivo di risorse su disco e, soprattutto, per la trasmissione a distanza di tali file.

Ci sono due fattori che influenzano la qualità delle immagini bitmap:

  • la risoluzione spaziale
  • la profondità di colore


Vediamole più in dettaglio.
Risoluzione spaziale: esprime la densità dei pixel. Se una immagine deve essere visualizzata in uno schermo si misura in ppi (point-per-inch, ossia punti per pollice). Se invece deve essere stampata si misura in dpi (dot-per-inch). Solitamente si deve scegliere, tra le varie possibili risoluzioni, quella di compromesso fra il desiderio di avere i contorni ben definiti e la necessità di non avere file troppo grandi.
Inoltre la dimensione di visualizzazione di una immagine in un monitor dipende anche dalla risoluzione impostata nel monitor stesso. Ciò può essere un problema per gli sviluppatori di multimedia che devono far visualizzare l'immagini con la stessa dimensione su piattaforme che usano risoluzioni spaziali differenti.
Cambiare la risoluzione spaziale di una immagine è possibile, con un processo chiamato ricampionamento (resizing), spesso nascosto nella funzione che permette di modificare la grandezza di una immagine. Aumentare il numero di campioni per pollice, ossia aumentare la risoluzione è chiamato upsampling. Diminuire il numero di campioni per pollice, ossia diminuire la risoluzione è chiamato downsampling.
Un altro modo per fare l'upsampling è quello di mantenere invariata la risoluzione ma di aumentare le dimensioni dell'immagine (larghezza e/o altezza).
In generale l'upsampling rischia comunque di degradare la qualità e l'apparenza di una immagine grafica. Questo perché il computer deve provare ad indovinare, tramite un opportuno Algoritmo, i colori dei pixel che nell'immagine originale non esistono. Ad esempio, tra una immagine scansionata ad alta risoluzione ed una scansionata a bassa risoluzione eppoi portata alla stessa risoluzione delle prima tramite il processo di upsampling, non c'è dubbio che la prima abbia una qualità migliore.
Solitamente il downsampling produce comunque immagini di buona qualità, perché gli algoritmi usati non devono inventarsi pixel, ma solo cercare di togliere meno significativi.


Profondità di colore: esprime il numero di colori differenti che possono essere usati in ogni singolo pixel. La profondità di colore dipende dal numero di bit (profondità di bith - bit depth) che possono essere utilizzati in ogni pixel per esprimere il colore. Se le immagini sono semplici ed hanno pochi colori, il numero di bit assegnati per il colore e il numero di colori possono essere essere limitati. In un disegno che utilizzi solo 8 colori si potrebbero utilizzare solo tre bit per ogni pixel per rappresentare il colore. Viceversa nelle immagini fotografiche il numero di colori disponibili deve essere molto elevato per avere una buona fedeltà di colore tra il colore effettivo e quello memorizzato nel file che rappresenta l'immagine.
Se si stabilisce a priori il numero di colori che si vogliono avere a disposizione (la cosidetta paletta) se si vuole riprodurre nel file un colore mancante si puo' scegliere di rappresentarlo con quello che più gli assomiglia. Questo processo è chiamato quantizzazione del colore.

Categorie