Qualche mesetto fa sono stato nuovamente colpito da quella che chiamo la sindrome dell’oggetto luccicante, quella particolare forma di attrazione per un gadget tecnologico di cui, fino a cinque minuti prima, ignoravo tranquillamente l’esistenza e del quale, improvvisamente, sembra impossibile fare a meno.
Mi ero imbattuto in una di quelle fotocamere digitali progettate per ricreare l’aspetto delle vecchie fotografie analogiche e l’idea mi era piaciuta immediatamente. Sono sempre stato affascinato dalle fotografie e dai filmati d’epoca, soprattutto dalla facilità con cui riusciamo spesso a riconoscere il periodo in cui sono stati realizzati semplicemente osservandone i colori, il contrasto, la grana o persino il modo in cui le persone sembrano muoversi sullo schermo. Così ho cominciato a guardare i vari modelli disponibili e stavo seriamente pensando di acquistarne uno… finché non ho controllato il prezzo. Circa 400 dollari.
Ora, 400 dollari non sono certamente una fortuna, ma spenderli per una fotocamera che, diciamocelo, avrei probabilmente utilizzato ogni tanto, giusto per divertimento, non mi sembrava una decisione particolarmente sensata. Soprattutto considerando la quantità di gadget che ho accumulato negli anni, alcuni dei quali hanno probabilmente trascorso più tempo a prendere polvere che a essere effettivamente utilizzati. Mia moglie, naturalmente, sarebbe stata perfettamente d’accordo con questa valutazione… 😀
Essendo uno sviluppatore software, però, ho questa pessima abitudine di guardare un dispositivo tecnologico e domandarmi se sarei in grado di realizzare qualcosa di simile. Non è necessariamente una questione di risparmio, perché chiunque abbia sviluppato software sa perfettamente che i conti, in questi casi, raramente tornano. È piuttosto una questione di curiosità, del desiderio di capire come funziona qualcosa e di quella soddisfazione un po’ irrazionale che si prova quando si riesce a farla funzionare con le proprie mani. Così, invece di ordinare la fotocamera, ho cominciato a studiare come questi dispositivi riproducono l’aspetto delle vecchie fotografie e se fosse possibile ottenere risultati simili sfruttando le capacità di elaborazione di uno smartphone moderno. Inizialmente pensavo che sarebbe stato un esercizio relativamente semplice, fatto di trasformazioni cromatiche, un po’ di grana, qualche effetto ottico e una serie di impostazioni predefinite. Come spesso accade, ero stato piuttosto ottimista…
Oltre un secolo di fotografia non si può ridurre a una collezione di filtri
La prima cosa che ho scoperto, o forse riscoperto, è quanto profondamente sia cambiata la tecnologia fotografica negli ultimi 130 anni. Tendiamo ad associare determinate caratteristiche visive a specifici decenni, ma la realtà è decisamente più complessa. Ogni periodo ha avuto le proprie tecnologie, i propri materiali e metodi di sviluppo, spesso con approcci molto differenti che convivevano nello stesso momento storico. Una fotografia scattata negli anni Venti è ovviamente diversa da una degli anni Settanta, ma anche due fotografie realizzate nello stesso anno potevano presentare differenze enormi a seconda dell’attrezzatura utilizzata, della pellicola, delle condizioni di esposizione, dei trattamenti chimici e delle tecniche di stampa. Un ritratto professionale, una fotografia di famiglia e un’immagine destinata a un giornale, pur appartenendo allo stesso periodo, potevano avere ben poco in comune dal punto di vista estetico.
Questo mi ha portato a mettere in discussione l’idea stessa di avere un unico filtro chiamato “anni Cinquanta” oppure “anni Settanta”, come se un intero decennio di storia della fotografia potesse essere rappresentato da una particolare combinazione di colori e grana. Ho cominciato a pensare che sarebbe stato molto più interessante associare a ogni periodo diversi stili fotografici, basati sulle tecnologie e sui processi disponibili all’epoca, lasciando poi all’utente la possibilità di controllare quanto intensamente applicarne le caratteristiche. Se, per esempio, voglio ricreare l’aspetto di una fotografia del 1960, potrei desiderare una riproduzione piuttosto marcata, con la risposta tonale, la grana, le caratteristiche cromatiche e le imperfezioni ottiche associate a un determinato processo fotografico. Oppure potrei volerne soltanto un accenno, senza necessariamente trasformare l’immagine in qualcosa che sembra essere stato ritrovato in fondo a un cassetto di mio nonno. Non esiste una ragione particolare per cui tutte queste caratteristiche debbano essere legate indissolubilmente a un unico filtro, soprattutto quando il software permette di controllarle separatamente.
A questo punto, quello che era cominciato come un progetto relativamente semplice stava diventando una ricerca decisamente più interessante. Ho deciso di partire dagli anni Novanta dell’Ottocento e procedere attraverso i decenni successivi, analizzando i processi fotografici e le tecnologie caratteristiche di ciascun periodo. Ed è qui che l’intelligenza artificiale si è rivelata particolarmente utile, anche se probabilmente non nel modo che ci si potrebbe aspettare. Non mi interessava chiedere a un modello generativo di produrre fotografie artificiali dall’aspetto antico. Volevo capire perché le fotografie autentiche apparissero in un certo modo, identificare le caratteristiche tecniche responsabili di quell’aspetto e studiare come riprodurle attraverso algoritmi di elaborazione delle immagini. In altre parole, volevo simulare alcuni aspetti del processo fotografico, anziché limitarmi a imitare il risultato finale di qualche immagine di riferimento.
Ho quindi cominciato a utilizzare l’AI come assistente per la ricerca, raccogliendo e confrontando informazioni sulle tecnologie fotografiche storiche, le emulsioni, la sensibilità spettrale, la struttura della grana, la risposta tonale, il contrasto, la riproduzione dei colori, la gamma dinamica, le caratteristiche ottiche, i processi chimici e le tecniche di stampa. La ricerca comprendeva anche l’esame di fotografie storiche e documentazione tecnica, per comprendere come le diverse combinazioni di materiali e attrezzature influenzassero il risultato finale. L’intelligenza artificiale mi ha aiutato a organizzare queste informazioni, individuare relazioni tra processi differenti ed esplorare possibili traduzioni delle loro caratteristiche in operazioni computazionali. Naturalmente, le spiegazioni prodotte dall’AI non sono automaticamente affidabili, soprattutto quando si affrontano tecnologie storiche poco documentate, quindi le informazioni tecniche e le simulazioni proposte devono comunque essere confrontate con fonti attendibili e immagini reali. Resta il fatto che questo approccio ha reso la ricerca molto più gestibile rispetto al tentativo di ricostruire manualmente oltre un secolo di evoluzione fotografica.
Uno degli aspetti più interessanti emersi durante questo lavoro riguarda la differenza tra l’aspetto originale di una fotografia e quello che oggi siamo abituati ad associarle. Spesso immaginiamo le fotografie storiche come sbiadite, graffiate, macchiate o alterate nei colori, ma molte di queste caratteristiche sono semplicemente conseguenze dell’invecchiamento, dell’esposizione alla luce, del deterioramento chimico o di cattive condizioni di conservazione, non proprietà del processo fotografico originale. Una fotografia a colori degli anni Sessanta, per esempio, non aveva necessariamente i colori sbiaditi che oggi tendiamo ad associarle, così come una fotografia in bianco e nero dei primi del Novecento non era necessariamente coperta di graffi e polvere quando venne stampata. Questa distinzione è importante perché riprodurre un processo fotografico storico e riprodurre l’aspetto di una fotografia invecchiata sono due obiettivi differenti. Entrambi possono essere interessanti ed entrambi possono contribuire al risultato finale, ma volevo che l’applicazione tenesse conto di questa differenza, invece di trattare ogni imperfezione come una caratteristica inevitabile di un determinato decennio.
E poi sono arrivati i filmati…
Mentre studiavo la fotografia storica, ho cominciato ad approfondire anche il mondo delle immagini in movimento, ed è stato allora che le cose sono diventate decisamente più complicate. Nel caso di una fotografia, l’elaborazione riguarda essenzialmente le caratteristiche di una singola immagine, mentre il video introduce una dimensione completamente diversa, perché l’aspetto del movimento dipende da come le immagini vengono acquisite, esposte, trasportate e riprodotte nel tempo. Le diverse tecnologie di ripresa hanno utilizzato frequenze di fotogrammi, meccanismi di otturazione e caratteristiche di esposizione differenti, producendo movimenti che possono apparire molto diversi da quelli ai quali siamo abituati con il video digitale moderno. Il cinema delle origini, per esempio, presenta spesso una cadenza del movimento molto particolare, che non può essere riprodotta semplicemente riducendo il numero di fotogrammi al secondo o applicando una colorazione seppia. Il rapporto tra frequenza dei fotogrammi, angolo dell’otturatore, tempo di esposizione e conseguente sfocatura del movimento è una parte importante dell’esperienza visiva, e riprodurlo in modo scorretto può rendere artificiale anche una simulazione altrimenti convincente.
A questo si aggiungono le caratteristiche meccaniche dei sistemi di registrazione e proiezione su pellicola, come le oscillazioni dell’inquadratura, le vibrazioni, lo sfarfallio, le variazioni di esposizione e altre forme di instabilità. Alcuni di questi effetti sono relativamente semplici da comprendere singolarmente, ma riprodurli in maniera convincente richiede di considerare il loro comportamento nel tempo. La grana della pellicola, per esempio, non è semplicemente un motivo di rumore statico sovrapposto all’immagine, così come le instabilità meccaniche non producono necessariamente lo stesso spostamento da un fotogramma al successivo. Graffi, polvere e altre imperfezioni fisiche introducono ulteriori complicazioni, perché il loro aspetto e la loro persistenza dipendono da dove hanno avuto origine e da come la pellicola è stata trattata, sviluppata o conservata. Ancora una volta, è diventato importante distinguere tra le caratteristiche della tecnologia di ripresa originale e quelle introdotte successivamente dall’invecchiamento, dalle ripetute proiezioni o dal deterioramento.
Più approfondivo questi processi, più mi rendevo conto che applicare indipendentemente un filtro fotografico a ogni fotogramma avrebbe riprodotto soltanto una parte dell’effetto. Una simulazione convincente di un filmato storico richiede anche un’elaborazione temporale, nella quale alcune caratteristiche cambiano da un fotogramma all’altro secondo il comportamento della tecnologia rappresentata. Questo ha introdotto una serie completamente diversa di considerazioni tecniche, soprattutto perché volevo che l’applicazione elaborasse direttamente il flusso video della fotocamera, anziché generare o renderizzare il risultato in un secondo momento. C’è una bella differenza tra applicare una serie di effetti a una fotografia ed eseguire continuamente diverse operazioni di elaborazione spaziale e temporale, mantenendo allo stesso tempo un’anteprima fluida e prestazioni di registrazione accettabili.
Anche in questa fase l’intelligenza artificiale si è dimostrata utile, aiutandomi a studiare le tecnologie originali, confrontare approcci differenti e ragionare sulle possibili implementazioni. Il principio fondamentale, però, è rimasto invariato: l’applicazione avrebbe acquisito fotografie e video reali, elaborandoli attraverso algoritmi di trattamento delle immagini, senza chiedere a un modello generativo di inventare il risultato finale. Ogni stile storico sarebbe stato rappresentato da una combinazione di caratteristiche e parametri, permettendo al motore di elaborazione di riprodurre diversi aspetti della tecnologia fotografica o cinematografica selezionata. L’utente avrebbe poi potuto regolare l’intensità complessiva dell’effetto, passando da un’interpretazione relativamente discreta a una riproduzione molto più marcata dello stile scelto. Naturalmente, alcune caratteristiche sono strettamente collegate tra loro e non possono essere modificate in maniera completamente indipendente senza influenzare il risultato, ma anche questo fa parte della sfida di progettare un sistema di elaborazione flessibile, anziché una semplice raccolta di filtri.
Nel frattempo avevo cominciato a scrivere codice, sperimentare diverse tecniche di elaborazione, definire i profili storici e ampliare progressivamente il numero degli stili disponibili. Quello che inizialmente mi era sembrato un ragionevole esperimento da fine settimana stava diventando un’applicazione vera e propria, con tutte le decisioni architetturali, i problemi di prestazioni e le complicazioni impreviste che inevitabilmente accompagnano progetti di questo genere. E, come al solito, ogni volta che pensavo di aver raggiunto un punto ragionevole in cui smettere di aggiungere funzionalità, mi veniva in mente qualche altra idea…
Ripensare la fotocamera
Più o meno nello stesso periodo, ho cominciato a riflettere sulle possibilità offerte dai nuovi formati dei dispositivi mobili, in particolare quelli pieghevoli come il concetto DUO, ma anche i normali iPhone e iPad utilizzati in orizzontale. La maggior parte delle applicazioni fotografiche continua a seguire sostanzialmente le stesse convenzioni di interfaccia, indipendentemente dal dispositivo sul quale viene eseguita: un grande mirino, un pulsante di scatto, qualche controllo disposto lungo i bordi e magari una selezione di modalità o filtri. È un approccio che funziona abbastanza bene su uno smartphone tradizionale, ma ho cominciato a chiedermi se limitarsi ad allargare la stessa interfaccia su uno schermo più grande significasse davvero sfruttare nel modo migliore lo spazio disponibile. Quando un dispositivo pieghevole viene aperto in orizzontale, oppure quando si utilizza un iPad in modalità landscape, il rapporto tra le mani dell’utente e lo schermo cambia considerevolmente, creando l’opportunità di ripensare il modo stesso in cui si utilizza la fotocamera.
Ho quindi cominciato a sperimentare un’interfaccia che riprendesse l’ergonomia di una videocamera tradizionale, utilizzando un’area di controllo dedicata lungo uno dei lati dello schermo. Invece di distribuire i comandi di registrazione dove capita di trovare un po’ di spazio libero, volevo raggrupparli in una posizione che corrispondesse al modo in cui una persona impugna naturalmente il dispositivo. Quest’area sarebbe diventata una sorta di impugnatura virtuale, con le funzioni essenziali di registrazione posizionate a portata di dita, mentre il resto dello schermo sarebbe rimasto dedicato al mirino. L’impugnatura avrebbe potuto essere spostata a sinistra oppure a destra attraverso le impostazioni dell’applicazione, permettendo a ciascuno di scegliere la disposizione più comoda.
Quest’ultimo dettaglio è particolarmente importante per me, perché sono mancino e ho perso il conto delle applicazioni e dei dispositivi che sembrano dare per scontato che tutti utilizzino la mano destra. A volte è soltanto una piccola seccatura, ma nelle applicazioni che richiedono un’interazione fisica, come quelle fotografiche, la posizione di un comando può fare una differenza considerevole nella comodità d’uso. Volevo quindi che l’interfaccia si adattasse a entrambe le preferenze, senza costringere l’utente a modificare le proprie abitudini per adeguarsi a una disposizione arbitraria dei controlli. Lo stesso principio poteva essere applicato anche ai dispositivi più piccoli, compresi gli iPhone tradizionali e gli iPad mini, adattando naturalmente le dimensioni e la posizione degli elementi allo spazio disponibile.
L’idea non era quella di disegnare un’interfaccia decorativa che somigliasse vagamente a una vecchia videocamera. Volevo recuperare alcuni aspetti pratici dell’ergonomia delle videocamere dedicate e adattarli ai moderni schermi touch. C’è qualcosa di particolarmente soddisfacente nell’utilizzare una fotocamera attraverso comandi che sembrano essere stati posizionati deliberatamente per quella funzione, anziché interagire con l’ennesima raccolta generica di pulsanti sovrapposti al mirino. E poiché l’applicazione si occupava già di ricreare stili fotografici e cinematografici appartenenti a epoche differenti, un’interfaccia ispirata alle videocamere tradizionali sembrava integrarsi piuttosto naturalmente con il concetto generale. Nessun accessorio esterno, nessun controller aggiuntivo e nessuna attrezzatura particolare, soltanto un modo diverso di utilizzare l’hardware che abbiamo già a disposizione.
The Time Travel Camera
Alla fine, tutte queste idee sono confluite in un progetto al quale ho dato un nome che mi sembrava piuttosto appropriato: The Time Travel Camera. Quello che era cominciato come un tentativo di evitare una spesa di 400 dollari si è progressivamente trasformato in un’applicazione dedicata all’esplorazione degli stili fotografici e cinematografici dagli anni Novanta dell’Ottocento fino ai giorni nostri, combinando ricerca storica, elaborazione delle immagini in tempo reale, caratteristiche visive regolabili e un’interfaccia progettata per rendere l’esperienza un po’ più interessante rispetto al semplice puntare uno smartphone verso qualcosa e selezionare un filtro.
Uno degli aspetti che trovo più interessanti di questo progetto è proprio il suo collocarsi a metà strada tra la ricerca storica e l’ingegneria del software. Ricreare l’aspetto di una vecchia fotografia non è necessariamente difficile, se tutto quello che si vuole ottenere è un risultato vagamente nostalgico, ma comprendere perché le fotografie di periodi differenti appaiano in un certo modo, identificare le tecnologie responsabili di quelle caratteristiche e tradurle in un sistema di elaborazione flessibile rappresenta una sfida decisamente più stimolante. Lo stesso vale per il cinema, dove il modo in cui il movimento veniva acquisito e riprodotto può essere importante quanto i colori o la grana dei singoli fotogrammi. Non pretendo certamente che uno smartphone moderno possa riprodurre perfettamente ogni processo fotografico storico, né che una simulazione digitale possa sostituire l’esperienza di lavorare con le attrezzature originali. Credo però che ci sia qualcosa di interessante nel cercare di comprendere quei processi e nel rendere accessibili alcune delle loro caratteristiche attraverso il software.





E forse è proprio questo uno degli aspetti che più mi piacciono dello sviluppo di applicazioni. Si parte da un’idea relativamente banale, si comincia a studiare come funziona qualcosa e alla fine si scopre un intero mondo di dettagli tecnici che prima non si erano mai considerati. A volte il risultato diventa un prodotto utile, altre volte rimane un esperimento interessante e altre ancora si trasforma in qualcosa di completamente diverso da ciò che si era immaginato inizialmente. In questo caso particolare, il percorso mi ha portato ad attraversare oltre un secolo di tecnologia fotografica, le particolarità del cinema delle origini, l’elaborazione video in tempo reale e persino l’ergonomia dei dispositivi di ripresa portatili… tutto perché non avevo voglia di spendere 400 dollari per una fotocamera che avrei probabilmente utilizzato un paio di volte al mese.
Naturalmente, se dovessi calcolare il valore del tempo trascorso a documentarmi, sperimentare e sviluppare l’applicazione, sono abbastanza sicuro che acquistare la fotocamera originale sarebbe stato molto più economico. Probabilmente diverse volte più economico. Ma questa è la logica degli sviluppatori… possiamo trascorrere centinaia di ore a costruire qualcosa pur di evitare di pagare un prodotto perfettamente funzionante, riuscendo persino a convincerci di aver fatto un eccellente affare. 🙂
E la cosa divertente è che quella fotocamera continua a piacermi. Potrei persino decidere di comprarla, prima o poi, anche se sospetto che mia moglie avrebbe qualche domanda da farmi, soprattutto dopo tutto il tempo che ho trascorso a sviluppare un’alternativa.
Per il momento, però, mi sto godendo il percorso. Quello che era cominciato come un semplice esercizio per ricreare alcuni effetti fotografici è diventato un’occasione per esplorare come la fotografia e il cinema si siano evoluti nel corso di oltre un secolo e come alcune di quelle tecnologie possano essere reinterpretate sfruttando le capacità dei dispositivi moderni. Che si vogliano ricreare le caratteristiche di un particolare processo fotografico storico oppure semplicemente dare alle proprie fotografie e ai propri video un’atmosfera un po’ retrò, mi piace l’idea di lasciare all’utente la libertà di sperimentare, anziché limitarlo a una manciata di filtri predefiniti.
Quanto ai 400 dollari che inizialmente cercavo di risparmiare… beh, direi che possiamo tranquillamente considerare quell’obiettivo un fallimento completo. 😀