Miscelare Immagini e Foto nella Computer Grafica

In questo articolo parleremo della miscelazione di due o più immagini attraverso la tecnica dell’image blending, per ottenere un risultato finale dove appaiono sovrapposte in maniera più o meno marcata le due foto. Vedremo poi come estendere questa tecnica per ottenere interessanti effetti di transizione tra due immagini.
La tecnica di blending fu sviluppata inizialmente per poter miscelare tra loro due foto. In pratica l’una risulta in qualche modo sovrapposta all’altra, in semi-trasparenza, in modo tale da discernere entrambe le immagini. Poniamo di avere due immagini della stessa dimensione e con lo stesso numero di colori, 256 tonalità, quindi un byte per ogni pixel. Occorre scandire l’immagine punto per punto in parallelo, il che significa che devono essere letti entrambi i valori del colore nello stesso pixel e poi inseriti nella funzione di blending, per ritornare il pixel risultante dell’immagine finale. Come è possibile capire, viene eseguita una sola scansione di entrambe le figure e ad ogni ciclo vengono letti i due pixel alle stesse coordinate, il pixel risultante viene inserito alle stesse coordinate di quelle lette nella foto finale. Se le dimensioni delle immagini fossero diverse è sempre possibile limitare l’area di scansione a quelle della foto più piccola.

Image Blending

La funzione di blending dovrà accettare due parametri che sono i colori delle due immagini e deve dare un colore dato dalla miscela degli stessi. Come facciamo ad implementare un algoritmo del genere? La soluzione è molto semplice: si esegue una media dei due colori, in pseudo-codice sarà tipo questa:

c3 Blending(c1, c2)
{
     return (c1 + c2) / 2
}

Sebbene questo tipo di blending produca i risultati desiderati, si preferisce utilizzare la media ponderata, dove ad ogni colore viene assegnato un determinato peso. Questo permette di specificare quanto importante debba essere un colore rispetto agli altri nell’immagine finale.

Image Blending

L’effetto della transizione, partendo dal mostrare la prima immagine che pian piano sfuma e si forma la seconda, si ottiene dando dei pesi specifici alla funzione di blending, prima aumentando e poi diminuendo il valore di una delle due immagini. Un’altra variazione interessante del blending è la possibilità di mescolare più di due immagini tra loro, naturalmente resta fermo il fatto che all’aumentare delle immagini diminuisce il grado di dettaglio dell’immagine finale.
In questo articolo abbiamo studiato la tecnica del blending, un metodo molto semplice per mescolare tra di loro le foto. Il maggior pregio di questo algoritmo risiede nella sua poca richiesta di calcoli e nello scandire una sola volta ognuna delle immagini iniziali.

Informazioni su Giampaolo Rossi

Sviluppatore di software gestionale da oltre 28 anni.
Questa voce è stata pubblicata in Grafica. Contrassegna il permalink.