Floating point e interi.
La discussione precedente sulla profondità dei bit era pertinente ai numeri interi. C’è da dire che i numeri a 8 bit, che vanno da 0 a 255, sono tutti interi e quindi non troveremo mai 10.4 o 112.25. Comunque i decimali chiamati , floating point, sono un modo molto importante per rappresentare i pixel se i software di compositing li supportano. Il computer converte i numeri a 8 bit in floating point mappando 0-255 a 0-1.
Il valore floating point di zero è settato al valore intero di zero in 8 bit mentre il valore di floating point 1 è assegnato al valore in 8 bit di 255. Per i dati a 16 bit il valore 1.0 è settato a 65.535. Usare i float hanno vataggi e svantaggi. Vediamo quali sono.
Floating point: pro e contro.
Se proviamo a moltiplicare un valore 8 bit di grigio, ad esempio 128 per il 50% di un altro grigio (128) otteremmo un 128×128 che è sicuramente maggiore rispetto al valore 64 che volevamo raggiungere. Se invece facciamo la stessa operazione in float: 0.5 *0.5 fa 0.25 il quale convertito da float in intero è 64. Un altro svantaggio deriva dal clipping dell’utilizzo del sistema a 8 bit. Il floating point infatti non limita il valore a 255 variazioni, un immagine a 8 bit non potrebbe avere un rosso con valore 300 poichè questo verrebbe tagliato a 255, in compositing se proviamo ad addizionare due immagini con due bianchi, il pixel finale non sarà mai superiore al 255 poichè questo è il limite del canale a 8 bit. Se lavoriamo invece in float un valore di bianco 1 + un altro bianco 1 da 2 e quindi anche se il nostro monitor non riesce a mostrarci piu dell’ 1, il nostro valore è ben conservato e sappiamo bene che quel pixel ha una luminosità del doppio. Quando infatti lavoreremo sull’esposizione ci troveremo con brillanti risultati.
Uno dei problemi del floating point è l’enorme quantità di calcolo che richiede alla cpu/gpu rispetto al calcolo per interi. I computer di oggi sono comunque abbastanza moderni e non dovremmo preoccuparcene troppo.
Nel prossimo articolo vedremo le maschere e la moltiplicazione di immagini.