Le immagini sono memorizzate nel computer in forma digitale, la loro occupazione di memoria o su supporto magnetico varia a seconda dell'accuratezza della rappresentazione delle stesse, nella pratica poi subentrano altri fattori come durante l'elaborazione in memoria, il modus operandi del programma, e nel caso della memorizzazione l'algoritmo di compressione utilizzato.
In ogni caso la quantità di spazio occupato
da una immagine può essere accuratamente calcolato in modo
da poter bilanciare il rapporto costi e benefici tra l'accuratezza
dell'immagine i tempi di elaborazione, la disponibilità
dei supporti e il risultato che si vuole ottenere.
DPI e risoluzione
DPI è l'acronimo di dot per inch, ovvero punti per inch, è l'unità di misura più usata per indicare la risoluzione, sia nella digitalizzazione delle immagini da scanner, che nella riproduzione in stampa.
In generale quando si parla di riproduzione di documenti
in bianco e nero si sceglie una risoluzione di 300 dpi che garantisce
un risultato che è sufficientemente simile all'originale
soprattutto se l'originale è generato da device non professionali
che di solito non hanno una accuratezza molto maggiore.
Bit per pixel
Il bit è l'informazione minima immagazzinabile ed elaborabile da un computer, quando si parla di immagini digitalizzate dicendo quanti ne vengono usati per rappresentare un pixel si specifica il grado di accuratezza nella sua rappresentazione.
Vi sono tre tipologie di immagini digitalizzate,
in bianco e nero, a toni di grigio, e a colori, le prime sono
le uniche che hanno una sola rappresentazione usando un solo bit
per ogni pixel, per le altre vi sono vari gradi di accuratezza.
Immagini in bianco e nero
Le immagini in bianco e nero sono composte di pixel che possono essere solo di colore bianco o nero, nella realtà anche i più diffusi sistemi di stampa sono in B/N simulando i grigi accostando in proporzione diversa le due tonalità per ottenere il risultato visivo voluto.
Per calcolare l'occupazione in bytes di una immagine in bianco e nero è sufficiente moltiplicare il numero dei pixel in orizzontale per quelli in verticale quindi dividerli per otto che è il numero di bit contenuti in un byte.
Nel caso che si voglia ottenere le dimensioni di
una immagine con il riferimento delle dimensioni su carta il calcolo
diventa leggermente più complesso, ovvero:
(inch in orizzontale * inch in verticale) * (dpi
in orizzontale * dpi in verticale) /8
le parentesi sono aggiunte solo per chiarezza la prima parentesi calcola la superficie, la seconda la densità di pixel per inch, un inch corrisponde a 2.54 cm.
Per esempio una pagina A4 a 300 dpi occupa approssimativamente 1.087.608 byte ovvero
(8,27 * 11,69)*(300*300)/8.
In alcune applicazioni si scende ad una risoluzione di 200 dpi, decremento che linearmente non sembra sostanziale, ma che da una notevole differenza nell'occupazione essendo un parametro elevato al quadrato, la stessa pagina di prima diventa 483.381 byte ((8,27 * 11,69)*(200*200)/8) ovvero il 44% dell'occupazione originaria.
Quest'ultima risoluzione solitamente viene utilizzata, perché il miglior compromesso tra qualità e occupazione, nell'archiviazione documentale.
Nella formula non viene usato il quadrato per i dpi
perché a volte viene scelta una risoluzione diversa per
i due assi, un caso sono i fax che tra le varie modalità
hanno quella a 200x100 dpi che rispetto a quella fine 200x200
occupano la metà.
Immagini a toni di grigio e a palette
Le immagini a colori, non true color, solitamente usano le palette per esprimere a quale tonalità corrisponde ogni valore delle combinazioni possibili con i bit messi a disposizione.
I formati più diffusi sono a 4 e a 8 bit,
i primi possono rappresentare 16 colori e i secondi 256, nel caso
di immagini a toni di grigio le palette rappresentano la scala
della luminosità, uno schema di come la palette venga usata
per traslare il codice di un pixel nel formato RGB è:

I calcoli per l'occupazione della memoria sono uguali a quelle delle immagini bianco e nero con la differenza che l'ultima divisione diventa con divisore a 2 nel caso si usino 4 bit, ed eliminata nel caso degli otto bit con i quali ogni pixel corrisponde esattamente ad ogni byte.
Un documento A4 a 300 dpi e 256 colori o toni di
grigio occupa 8.700.867 bytes ((8,27 * 11,69)*(300*300)) una quantità
di memoria che è proibitiva per molti dei sistemi normalmente
utilizzati, in effetti di solito si usa questa risoluzione per
fotografie che hanno dimensioni più contenute, per esempio
una foto formato tessera è solo 270.000 byte ((1,5 * 2)*(300*300)).
Immagini a colori reali o true color
Sono immagini che riproducono esattamente l'aspetto cromatico dell'immagine originale, solitamente in formato RGB ovvero con le tre componenti Red Green Blue separate.
La rappresentazione di immagini in RGB è la conseguenza dell'utilizzo di questo formato per l'output su video, l'accuratezza è maggiore di molti dispositivi di output, vi sono vari livelli di accuratezza della resa cromatica a seconda di quanti bit si usano per ogni componente.
Solitamente si intende true color un formato a 24 bit, 8 bit per componente cromatica, mentre viene definito hicolor il formato a 15 o 16 bit, questo ultimo solitamente privilegia la componente verde predominante nella visione umana.
Nei formati più diffusi di memorizzazione non vengono usati i 15 o 16 bit perché più specifici dell'hardware anche se le specifiche del nuovo formato BMP supportano queste modalità.
Per quanto riguarda l'occupazione di memoria alla formula usata per le immagini B/N dovrà essere sostituita la divisione finale con una moltiplicazione per due o tre a seconda che si usino 15/16 bit o 24, i 15 bit usano due byte per questione di velocità di accesso ai byte, ogni pixel occupa due bytes in memoria, lasciando casomai un bit inutilizzato.
Una foto da 5x4 inch occupa a 300 dpi e 24 bit 5.400.000
bytes ((5*4)*(300*300)*3), sicuramente una quantità di
memoria notevole se non per l'elaborazione, per l'archiviazione
di diverse, in seguito affronteremo il problema quando parleremo
della compressione delle immagini per la memorizzazione e i risparmi
connessi.
Scelta della risoluzione in base all'utilizzo
Il miglior sistema per avere i minori tempi di elaborazione e la minore occupazione delle immagini è quella di scegliere oculatamente la risoluzione e la definizione delle immagini in base al loro utilizzo.
Nel caso di immagini usate per l'inserimento in altri documenti uno dei sistemi più diffusi è quello di utilizzare una anteprima per tutta la fase di messa a punto dell'impaginazione per poi rifinire la risoluzione quando le dimensioni in stampa sono definitive.
Le stampanti laser hanno una risoluzione limitata e non riescono a rendere a livelli di grigio a risoluzione elevate, ad una risoluzione di 300x300 dpi la stampante ha una matrice di 3x3 pixel per simulare i 256 grigi di una fotografia a 100 dpi, gli algoritmi che simulano i livelli di grigio su una periferica che usa una tecnologia di stampa in bianco e nero possono avere vari gradi di efficienza e solo a livello sperimentale si può valutare le regolazioni che danno il miglior risultato.
........
Occupazione delle immagini in memoria RAM
In generale i programmi di painting caricano l'intera immagine in memoria (solo alcuni permettono modifiche parziali di un documento) e l'occupazione va dall'equivalente dell'immagine a tre volte a seconda delle funzioni di Annulla e dalle zone di transito riservate, non vi è una regola ma quasi tutti i programmi hanno bisogno di almeno il doppio.
La memoria dovrebbe essere quella reale e non quella di swap per avere le migliori prestazioni ed evitare estenuanti passaggi su disco, per calcolare quanta memoria è realmente disponibile è sufficiente guardare al menu informazioni del Program Manager dopo aver disabilitato la memoria virtuale.
In generale Windows occupa da due a tre megabyte per la sua gestione a seconda della versione e dei servizi abilitati, il più vorace è Windows per Workgroup con i servizi di condivisione attivati.
Anche se le immagini occupano poco spazio su disco
perché compresse (fino a 1:40 nel caso del JPEG) per ragioni
di performances nell'elaborazione devono essere espanse a formati
più velocemente trattabili, a volte non solo vengono decompresse
ma anche convertite a formati più ampi, la cosa va valutata
anche per dimensionare lo spazio disponibile sul disco dei file
temporanei e di swap.