Una trittura è una terna di immagini, dove l'ultima si ottiene sovrapponendo le prime due.
Se volete capire di che si tratta senza leggere il seguito, scaricate le due immagini A e B raffiguranti Charlie Brown e Lucy (cliccate su A e B col tasto destro del mouse e scegliete l'opzione "Salva destinazione come..."), poi stampatele su due lucidi A4 con una buona stampante. Sovrapponendole PERFETTAMENTE (pixel per pixel) otterrete l'immagine C di Snoopy. La cosa interessante è che il metodo si può applicare a QUALUNQUE terna (A,B,C) di immagini in bianco e nero delle stesse dimensioni.
Osserviamo queste tre immagini A,B e C:
Il nostro obbiettivo è produrre due nuove immagini A' e B' che diano la stessa impressione visiva di A e B, e la cui sovrapposizione dia un'immagine C' che riproduca C.
Possiamo ottenere questo risultato producendo le due immagini A' e B' rappresentate nella figura che segue:
Se stampiamo A' e B' su due lucidi, la loro sovrapposizione riproduce esattamente l'immagine C'.
Per esempio, se il pixel in A è bianco, lo rimpiazziamo con la matrice che ha pixel neri nelle celle (1,2)
e (2,1) e pixel bianchi nelle altre due celle.
Se il pixel in B è bianco e il corrispondente pixel in C è nero,
lo sostituiamo con la matrice che ha pixel neri nelle celle (1,1) e (2,2) e pixel bianchi nelle altre due celle.
Osserviamo che la sostituzione in B dipende anche dall'immagine C, al contrario di quel che accade per l'immagine A.
NOTA: se A e B sono immagini mxn, le immagini A' e B' sono 2mx2n.
Se usi MATLAB e ti accontenti di un M-file molto rozzo, puoi scaricare questo M-file per produrre la tua trittura. Basta rinominare le tue immagini A, B e C con i nomi image1.jpg, image2.jpg e image3.jpg, rispettivamente. L'M-file produrrà i file newimage1.jpg e newimage2.jpg, che rappresentano A' e B'. La loro sovrapposizione darà C'.
In altre parole i pixel più scuri in C corrispondono a matrici 2x2 più scure in C', mentre i pixel più chiari in C corrispondono a matrici 2x2 più chiare in C'. Esaminiamo questo fatto più attentamente. In ogni matrice 2x2 in A' l'informazione che riguarda A è rappresentata dal pixel (1,1), mentre il pixel (1,2) è sempre nero. Analogamente, in ciascuna matrice 2x2 in B' l'informazione che riguarda B è rappresentata dal pixel (1,2), mentre il pixel (1,1) è sempre nero. Quindi nella sovrapposizione di A' e B' il pixel (1,2) di A' nasconde il pixel (1,2) di B', e il pixel (1,1) di B' nasconde il pixel (1,1) di A'. In altre parole le immagini A e B si nascondono reciprocamente in C'. L'informazione riguardante C è invece contenuta nella seconda riga di ciascuna matrice 2x2 in C'. Ogni pixel bianco in C corrisponde a scegliere due colori diversi in quella seconda riga, mentre ogni pixel nero in C produce due pixel neri in quella seconda riga.
P.S: Ho ideato le tritture per fare le mie cartoline natalizie, poi ho scoperto che si trattava di un metodo già noto. Potrebbe essere classificato come una forma di Steganografia. Se qualcuno è a conoscenza di metodi simili (o migliori) per ottenere una qualunque immagine dalla sovrapposizione di altre due immagini qualsiasi, lo prego di farmelo sapere.
Questo è il mio indirizzo di posta elettronica:
Se avete trovato questa pagina interessante vi prego di linkarla nella vostra pagina web.