Questa NON è una foto

Abbiamo testato le capacità dell'intelligenza artificiale nel creare immagini fotorealistiche.

I progressi raggiunti dall'intelligenza artificiale vanno di pari passo col suo utilizzo in un crescente numero di ambiti. In un articolo di poche settimane fa si erano esaminate le sorprendenti capacità raggiunte da ChatGPT nello scrivere testi o programmi; c'è però un'ulteriore applicazione, piuttosto diffusa e decisamente interessante, che vede utilizzare l'IA per la creazione di immagini partendo da alcune indicazioni fornite dall'utente.
Esistono diversi generatori di immagini basati sulle reti neurali, che permettono di realizzare ogni sorta di contenuto visivo statico: fumetti, dipinti, pixel art e persino fotografie. Proprio quest'ultima categoria ha attirato la mia attenzione, in quanto appassionato fotoamatore. Le fotografie, con la loro ricchezza di dettagli, rappresentano una vera e propria sfida per le intelligenze artificiali; mi sono pertanto chiesto quanto realistiche potessero essere le immagini create in questo modo.

Già in passato si era affrontato il tema dei volti sintetici e dei loro utilizzi malevoli; in questo articolo vorrei porre però l'attenzione unicamente sulla qualità dei risultati ottenuti, lasciando per un momento da parte tutte le implicazioni legate ai potenziali utilizzi.
Ho messo pertanto alla prova alcuni dei numerosi generatori di immagini presenti in rete o come applicazioni per smartphone. Ne ho scelti tre: DALL-E, Deep Dream Generator (entrambi siti internet) e starryai (app); si tratta di software accessibili gratuitamente, che forniscono dei "crediti" da spendere per realizzare le immagini. Una volta terminati, è necessario comprarne di nuovi o attendere che vengano ricaricati dopo un certo lasso di tempo.
Ogni generatore presenta le proprie peculiarità, che vedremo più in dettaglio alla fine dell'articolo; vi possono essere differenze nel formato delle immagini prodotte, nel numero di risultati forniti per ogni richiesta e nelle eventuali opzioni selezionabili. Tutti sono però basati sulla stessa meccanica di utilizzo, vale a dire che l'utente inserisce una descrizione del soggetto desiderato e/o un'immagine dello stesso (che permette di ottenere risultati più precisi); l'intelligenza artificiale interpreta quindi le indicazioni e fornisce un risultato che può essere più o meno aderente a quanto richiesto.

Per valutare le capacità raggiunte da questa tecnologia, è stato quindi richiesto a ciascuno dei generatori sopra citati di realizzare delle foto di vario genere partendo dai medesimi input; in nessun caso è stata fornita all'IA un'immagine di base, ma solo una descrizione testuale del soggetto desiderato.  
Il tipo di immagini da rappresentare è stato scelto allo scopo di creare difficoltà ai software; per esempio le foto di paesaggio, con il loro elevato numero di dettagli, rendono più facile l'errore e la creazione di artefatti visibili. L'esperimento aveva l'obiettivo di esaminare tanto il realismo dell'output generato che l'attinenza alla descrizione fornita come input. Andremo ora a vedere, per ogni categoria di immagine, i risultati ottenuti.

Paesaggi
I primi due test hanno riguardato la creazione di foto paesaggistiche. Ho inizialmente richiesto di crearne una con montagne e cielo nuvoloso, il testo utilizzato per indirizzare l'IA lo trovate di seguito.

Prompt: "highly detailed photo of a landscape with mountains and overcast sky"

Già dal primo tentativo sono venute fuori immagini attinenti alla descrizione, tuttavia il profilo delle montagne o gli eventuali alberi si sono dimostrati essere dei punti critici, dove la formazione di artefatti è più evidente e frequente. Potrebbe stupire invece il buon livello di realismo del cielo nuvoloso, ma va detto che gli algoritmi per generare cieli fittizi con cui abbellire le foto esistono già da tempo e sono ben collaudati.
Successivamente, ho richiesto una foto con diversa ambientazione; questa volta con una spiaggia, il mare e un tramonto.

Prompt: "highly detailed photo of a landscape with beach, sea and sunset"

Le immagini ottenute in questo caso sono decisamente valide, non vi sono artefatti visibili e alcuni generatori hanno interpretato la descrizione in modo più artistico, aggiungendo dettagli non richiesti. Per quanto possa essere considerata banale, ritengo che l'immagine realizzata da DALL-E sia più la credibile di tutte; infatti mostra il sole completamente bianco, come succede spesso quando nel fare una foto col sole frontale si sbaglia l'esposizione e lo si brucia. Questa immagine a un primo esame potrebbe passare facilmente come una classica foto ricordo fatta in vacanza.

Ritratti
Dopo aver visto come se la cava l'IA con i paesaggi naturali, passiamo ai prossimi due test, nei quali l'ho messa alla prova con la realizzazione di volti umani. Inizialmente ho richiesto la foto di un uomo di mezza età, specificando che la stessa doveva mostrare uno sfondo sfocato (il cosiddetto bokeh).

Prompt: "highly detailed photo of a middle aged man with out of focus background"

In questo caso sono stati necessari alcuni tentativi per ottenere immagini che non presentassero errori immediatamente rilevabili; in particolare gli occhi del soggetto sono uno dei punti da andare a osservare perché spesso vengono realizzati con dimensioni differenti l'uno dall'altro, o con le pupille dilatate e/o orientate in modo diverso. Si tratta di artefatti che denunciano immediatamente l'artificialità dell'immagine.
In ogni caso tutti e tre i generatori hanno fornito immagini attinenti alla descrizione, aggiungendo talvolta dettagli non espressamente richiesti.
Restando sempre nella categoria ritratti, ho voluto testare ulteriormente le capacità dei software richiedendo la foto di una ragazza bionda con occhiali.

Prompt: "highly detailed photo of blonde girl with eyeglasses"

Ottenere i risultati che vedete qui è stato molto più difficile rispetto ai test precedenti, e ci sono voluti ancora più tentativi. Molti delle immagini realizzate sono state cestinate per evidenti aberrazioni; oltre ai già citati dettagli degli occhi, qui anche gli occhiali si sono dimostrati di difficile realizzazione e in molti casi sono stati rappresentati sdoppiati, asimmetrici o indossati in modo non realistico.

Oggetti
Vediamo ora come se la cava l'intelligenza artificiale nel realizzare un soggetto decisamente più semplice. Quello che sembrava essere essere il test più facile di tutti ha rivelato invece dei risvolti interessanti: non tutti i generatori hanno compreso l'oggetto che è stato inizialmente richiesto loro di creare (ne parlerò meglio nelle conclusioni)! Ho dovuto quindi trovare un altro soggetto, che tutti sono stati in grado di riconoscere: una matita appoggiata su un tavolo di legno.

Prompt: "highly detailed photo of a pencil on a wooden table"

Una volta risolto il problema, i risultati ottenuti sono stati differenti tra i vari generatori. Alcuni infatti si sono trovati in difficoltà nel realizzare un oggetto credibile per colori, forme e dettagli, richiedendo vari tentativi prima di ottenere un risultato accettabile. Vi sono stati inoltre problemi nell'attenersi strettamente alla richiesta, in quanto in alcune delle immagini scartate erano presenti due o più matite, mentre si era specificato di crearne una.
Si potrebbe pensare che l'IA, di fronte alla richiesta di una composizione con più oggetti, come quella di una classica natura morta, debba fallire miseramente...

Prompt: "highly detailed photo of a still life with fruits and empty bottle"

Invece non è così. Dopo un ridotto numero di tentativi si sono ottenute immagini accettabili, forse un po' troppo pittoriche per sembrare foto, ma va detto che anche i fotografi dediti a questo genere di soggetti tendono a usare luci e ombre in modo molto drammatico, facendo sembrare i loro lavori dei dipinti. In questo genere di immagini le difficoltà per l'intelligenza artificiale consistono nel tracciare correttamente i contorni degli oggetti vicini tra loro nonchè nel rispettare le proporzioni tra gli stessi (senza realizzare quindi le noci più grandi delle arance). Da quel che ho potuto notare invece il software se la cava piuttosto bene nel creare giochi di luci e ombre credibili; ho riscontrato invece qualche problema di attinenza con la descrizione per quanto riguarda la bottiglia, che avevo richiesto di rappresentare vuota, mentre in alcune immagini era piena.

Animali
Veniamo infine agli ultimi due test, in cui si è richiesta la creazione di immagini relative ad animali, cominciando dalla foto di un gatto su un cuscino.

Prompt: "higly detailed photo of a cat on a pillow"

Le problematiche riscontrate in questo tipo di immagini sono sostanzialmente le stesse rilevate per la creazione di volti umani: gli occhi restano il punto critico, dove è più probabile riscontrare errori che svelino l'artificialità della foto. Per quanto riguarda altre caratteristiche del gatto (pelo, baffi e colorazione) i software hanno svolto sempre un lavoro egregio. In linea di massima si può ottenere un'immagine fotorealistica di un gatto dopo pochi tentativi; discorso differente invece per l'ultimo soggetto richiesto, una farfalla su un fiore.

Prompt: "highly detailed photo of a butterfly on a flower"

Quelle che vedete sono le immagini più accettabili che sono riuscito a ottenere dopo numerosi tentativi. La maggior parte delle volte i generatori hanno fornito risultati assolutamente non credibili, neppure a uno sguardo superficiale: farfalle con sei ali invece di quattro, oppure tre antenne al posto di due. Oltre a questi errori, altre problematiche sono poste dalle proporzioni del corpo e delle ali, nonchè dalla loro simmetria. La posizione rispetto al fiore poi non è stata mai azzeccata in pieno. In breve, una persona con un minimo di conoscenze sugli insetti capirebbe immediatamente che le immagini qui sopra sono fasulle.

Conclusioni
I generatori testati hanno dimostrato di poter effettivamente creare immagini di tipo fotografico, tuttavia per ottenerle possono essere necessari diversi tentativi. Come si è visto, molto dipende anche dal tipo di soggetto. Il realismo di queste immagini è pertanto ancora piuttosto limitato, ma col perfezionamento di questa tecnologia ci si può aspettare che lo stesso vada ad aumentare.
Nello svolgimento di questi test ho notato una cosa piuttosto interessante; sebbene i tre generatori di immagini presi in esame siano basati sul medesimo schema di funzionamento, vi sono differenze, anche notevoli, tra uno e l'altro software per quanto riguarda le capacità interpretative del testo e nello "stile" con cui solitamente viene presentato il risultato. Mi spiego meglio: nel richiedere a Deep Dream Generator di realizzare un foto di un martello su un tavolo, lo stesso non ha compreso la parola "martello" e non sapeva cosa realizzare, fornendo come output oggetti stravaganti e non meglio identificabili. Si può pertanto ipotizzare che ognuno dei software abbia il proprio vocabolario, dal quale certi termini siano esclusi per determinate motivazioni, oppure per semplice dimenticanza degli sviluppatori.
Per quanto riguarda lo stile invece, richiedendo foto di persone ho potuto riscontrare che DALL-E tende sempre a realizzare immagini molto ravvicinate, concentrandosi sul viso ed escludendo totalmente il busto. Gli altri due generatori hanno alternato, durante i vari tentativi, immagini più ravvicinate ad altre a mezzo busto. Nella realizzazione di paesaggi, Deep Dream Generator tende a essere più "artistico", aggiungendo molti elementi in più di quelli richiesti, talvolta al prezzo di una minore attinenza alla descrizione fornita (si vadano a vedere le immagini relative alla spiaggia col tramonto).
Da ultimo, ho riscontrato differenze anche sulle policy adottate dai generatori di immagini in merito a contenuti sensibili (nudità, incitazione all'odio ecc.): DALL-E, in risposta a determinati input, fornisce un messaggio dove spiega di non poter realizzare quanto richiesto per motivi di regolamento; Deep Dream Generator invece non mostra mai messaggi di questo tipo. Il che però non indica necessariamente l'assenza di regole ma, più probabilmente, il software di questo generatore tende a ignorare le richieste che vanno contro le proprie policy, rispondendo alle stesse con risultati non attinenti alle descrizioni fornite. In starryai non vi sono invece limitazioni sui soggetti "tabù" per quanto riguarda la creazione dell immagini ma, se le si vuole pubblicare sull'app, le stesse vengono vagliate e potrebbero essere rifiutate. Va detto che è comunque possibile scaricare le proprie creazioni per poi diffonderle attraverso altri canali.