Introduzione alla creazione di immagini sintetiche fotorealistiche
Indice
1. L’imitazione della prospettiva
naturale nelle rappresentazioni tridimensionali fotorealistiche.
2.
Creazione di immagini
sintetiche con la computer grafica.
3. Gli algoritmi di
visualizzazione 3D.
4. Collegamento software TILECAD
5. Immagini stereoscopiche 3D (Anaglifi)
6. Visualizzazione 'Sketch - non fotorealistic render' (disegno a mano libera / cartoons)
1.
L’imitazione
della prospettiva naturale nelle rappresentazioni tridimensionali fotorealistiche
I maestri del Rinascimento
italiano sono stati i primi a mettere a punto le tecniche necessarie per
ingannare l’occhio umano, simulando la profondità su superfici bidimensionali.
Questa illusione si basa su un insieme di conoscenze geometriche che risalgono
alla civiltà greca.
L’artista rinascimentale
imparò a trasformare queste conoscenze in opere d’arte caratterizzate da un
realismo impressionante. Fino ad allora gli artisti
avevano utilizzato l’arte per la rappresentazione delle idee, l’artista
rinascimentale utilizzava l’arte per simulare la realtà. Si trattò di una
svolta fondamentale.
Oltre un secolo di cinema e
fotografia hanno ormai esplorato appieno la rappresentazione dello spazio
tridimensionale su superfici piatte. I film che mescolano animazione e immagini
tridimensionali con le tradizionali tecniche fotografiche e cinematografiche
hanno rivitalizzato l’attenzione verso una disciplina che ha lo scopo di
modellare con accuratezza le proprietà fisiche e ottiche del mondo reale.
Ancora una volta, arte e matematica si sono unite per incantare e trasportare l’osservatore nell’immaginario non reale ma sintetico permettendo alla mente umana la creazione fantastica dell’immateriale.
Il fotorealismo descrive immagini
generate da computer che utilizzando le proprietà ottiche e fisiche del mondo
reale, tradotte matematicamente, in modo tale che un osservatore sia ingannato
fino a confondere un’immagine artificiale con una fotografia.
L’abilità dell’informatico e
del computer di simulare le immagini fotografiche colpisce particolarmente
tutte quelle persone che pensano che i computer siano strumenti asettici,
esclusivamente matematici, non invece produttori di creatività e arte, attrezzi
che sostituiscono i pennelli e la tavolozza degli artisti del passato.
Chiunque abbia tentato di
disegnare una forma tridimensionale, si è imbattuto nella difficoltà di creare
l’illusione della profondità su una superficie piana. In effetti il concetto di
spazio tridimensionale è così astratto che i bambini non hanno una comprensione
innata di concetti come profondità e volume. L’apprendimento
della modellazione degli oggetti nello spazio è così fondamentale che spesso se
ne dimenticano i principi base anche se non è passato molto tempo da quando gli
artisti hanno iniziato ad apprezzarne e ad utilizzarne le potenzialità.
Il passaggio fu quasi
istantaneo : il pannello di sinistra è opera di
Cimabue (1240-1302 , 1280 ) quello di destra è di Giotto ( 1266-1336, 1310
ovvero circa 30 anni più tardi) e sono collocati sulla stessa parete alla
Galleria degli Uffizi di Firenze ma sono separati da un abisso concettuale
Cimabue era interessato alla
rappresentazione tridimensionale ( lo si deduce osservando la forma del trono e
dell’arcata sottostante ), tuttavia non ha ottenuto una simulazione realistica:
in una fotografia infatti non sarebbe possibile vedere contemporaneamente i
muri interni di tutti i tre archi. Da qui anche l’impossibilità di stabilire
con precisione il proprio punto di osservazione e tutto il dipinto risulta
quindi irrealistico ad una osservazione con un occhio abituato alla
tridimensionalità.
Nei trent’anni trascorsi fra
il lavoro di Cimabue e quello di Giotto, gli artisti avevano scoperto un nuovo
e potente metodo per orientare l’osservatore nel confronto dei dipinti. La
tavola di Giotto viene vista con una sensazione più tranquillizzante anche se non
ancora perfetta.
Occorre aspettare però il pieno Rinascimento (1450-1500) per avere la codifica matematica della prospettiva e la sua esatta applicazione grafica.
Piero della Francesca (
sotto la Pala Urbinate – 1472), il Giorgione, Leonardo da Vinci, il Correggio e
poi tutti gli artisti successivi fecero della prospettiva e delle tecniche del
disegno tridimensionale un pensiero filosofico dove l’ordine delle cose
coincidono nella matematica della forma e quindi una esatta misura del mondo
reale.
Il punto di fuga è chiaramente determinato, le solidità
tridimensionali spiccano, lo sfondo è lievemente sfocato, il primo piano è più contrastato e luminoso, le dimensioni e i volumi sono corretti in funzione
della lontananza.
Queste impostazioni convincono l’occhio umano ad
immaginare una profondità laddove non può esistere e la collocazione artistica
porta il mondo naturale in linea con il mondo spirituale del contenuto
religioso. Dunque una coordinazione matematica fra il divino e il terreno.
Si potrebbe pensare che, allorchè la tecnologia si
interpone fra l’artista e l’opera, l’arte divenga meccanica e priva di
ispirazione. Tuttavia il felice connubio rinascimentale fra scienza, tecnologia
e arte contraddice questa ipotesi.
Come esempio possiamo riportare il famoso Calice di Paolo Uccello ( 1465 ) che è composto di segmenti suddividendo la superficie in forme geometriche rettangolari che sono del tutto simili ai poligoni delle immagini computerizzate odierne ( wireframe ) con sei secoli in anticipo sulle elaborazioni computerizzate.
Il Calice di Paolo Uccello (1465) Elaborazione computerizzata del calice
2.
Creazioni di immagini
sintetiche con la computer grafica.
Il processo creativo si può schematizzare nelle seguenti
quattro fasi :
2.1
Pianificazione
E’ la creazione dello
storyboard . Si tratta di definire l’ideazione della scena così come un artista
crea con uno schizzo preparatorio l’opera che andrà a realizzare. Nelle
elaborazioni computerizzate lo storyboard serve soprattutto a pianificare la
complessità ed ottenere una approvazione complessiva prima di avviare il
processo produttivo.
2.2
Modellazione
La modellazione è il
processo di creazione della geometria degli oggetti e di assegnazione delle
superifici agli oggetti stessi. Attualmente sono molte le tecniche che permettono di
accelerare e semplificare questa procedura diversamente molto complessa:
estrusione da 2D, interpolazione, sculpting da 3D, metodologia procedurale,
ecc. in funzione del programma software che si intende utilizzare.
Gli oggetti 3D così generati possono
essere composti da poligoni nello spazio simili a una gabbia di ferro oppure da
superfici bidimensionali nello spazio ( di Bézier, spline,ecc. ) oppure da
solidi composti massivi ovvero con baricentro delle masse.
In ogni caso su questi viene
applicata una superficie di pixel utilizzando una mappa di riferimento secondo
vari metodi : assegnazione di una texture pittorica ( avvolgimento ),
assegnazione di texture procedurali ( algoritmi frattali ) oppure per
ombreggiatura semplice ( colore + luce ).
2.3
Scena
L’allestimento della scena avviene in
modo analogo alle produzioni teatrali con la collocazione degli oggetti
nello spazio definito, del punto di vista ( camera ), allestimento delle luci
ed eventualmente le azioni dell’animazione ( frame ).L’impostazione della scena può
avvenire anche interativamente con una valutazione estetica della composizione
che sarà poi il risultato finale dell’elaborazione.2.4 Rendering
E’ l’operazione di conversione automatica degli
oggetti compresi i loro attributi e le loro trasformate in una o piu’ immagini
sintetiche archiviabili e stampabili.I sistemi computerizzati effettuano in questa fase
miliardi di calcoli e la potenzialità dei computer, anche i più sofisticati,
viene messa a dura prova. E’ sicuramente l’elaborazione informatica più
complessa che l’uomo abbia mai concepito e solo da pochi anni è possibile
eseguire in tempi relativamente brevi delle immagini sintetiche di grande
sofisticazione.
Utah Teapot
(oggetto di
riferimento per confronto delle qualità degli algoritmi)
3.
Gli algoritmi di
visualizzazione 3D
Le luce e le ombreggiature sono i parametri principali che
definiscono il maggiore o minore livello di fotorealtà di una scena. I metodi
di ombreggiatura sono molteplici ma li possiamo così riassumere:
·
Wireframe
Gli oggetti hanno superfici
trasparenti che permettono di vedere linee e punti nascosti . Questo metodo esclusivamente
geometrico e non fotorealistico permette la visualizzazione in tempo reale durante
la modellazione della scena.
·
Flat
A tutta la superficie poligonale
dell’oggetto viene assegnato un singolo livello di illuminazione per cui le
singole facce (mesch) risultano di colore uniforme, opaco e diverse tra
loro. Questa impostazione non
produce risultati molto naturali ma richiede un minimo tempo di elaborazione. Viene
utilizzato prevalentemente per visualizzazioni di anteprima.
· Gouround
L’intensità di luce viene diffusa su
tutta la poligonale e ciò permette di sfumare gli spigoli dei lati ma la superficie rimane comunque non
continua e poco realistica se non si interviene con altri algoritmi correttivi. I
tempi di calcolo sono abbastanza veloci.
·
Phong
Questa impostazione produce un risultato
sicuramente più realistico. Ogni pixel della superficie dell’oggetto viene calcolato
in relazione alla fonte luminosa con effetti di riflessione. La quantità dei
calcoli necessari è notevolmente superiore ai metodi precedenti e aumenta
all’aumentare della risoluzione dell’immagine.
Gli algoritmi standard che vengono utilizzati sono
fondamentalmente tre:
· Scanline
Dove il colore di un punto di un
oggetto è determinato dalla sua relazione con l’osservatore e con le fonti
luminose della scena. Riflessioni, rifrazioni e ombre non vengono
modellate.
·
Ray-tracing
Ogni pixel dell’oggetto viene calcolato sulla base di tutta la luce ( compresa quella riflessa ) che lo colpisce con tracciamento del percorso del raggio luminoso da un punto dello schermo a tutti gli oggetti della scena e poi alla fonte luminosa. Riflessione, rifrazione e ombre vengono modellate.
·
Radiosity
Tutte le iterazioni tra oggetti, luci e schermo vengono determinate, compresi i raggi luminosi che non raggiungono lo schermo. E’ la modalità più accurata ma i tempi elevati di calcolo ( nell’ordine di ore ) limitano il suo utilizzo per particolari necessità.
· 'unbiased rendering'
con un tempo di rendering sufficiente ( tendente all’infinito), il render finale convergerà sempre verso la soluzione corretta senza l'introduzione di artifici. Gli altri motori di rendering o altri metodi di interpolazione producono sempre ‘biased renders’, conseguentemente non possono garantire la convergenza verso la soluzione corretta indipendentemente dal tempo di calcolo impostato. Questo algoritmo è quello che produce la qualità più elevata ed è utilizzato attualmente dai maggiori produttori di CAD 3D professionali (3dsMax, Viz, Maya, Lightwave, Rhino, Solidworks, ArchiCAD, Cinema 4D, Blender, ecc. ).
Effetti
fotorealistici di riflessione, rifrazione e ombreggiatura di
Qual’è la fotografia reale e l’immagine fotorealistica creata con un algoritmo di radiosity ?
TILECAD prevede l’utilizzo dei seguenti algoritmi di calcolo per la creazione di immagini 3D:
- OpenGL ( MESA ) : algoritmo phong per il calcolo immediato arricchito con effetti di ombre riportate
- POV-Ray : procedure per il calcolo in ray-tracing
- MEGAPOV : arricchimento per il calcolo in radiosity
- INDIGO : procedure di calcolo ‘unbiased’ rendering
Ognuna di queste tecnologie ha le sue specificità e caratteristiche e il loro utilizzo è strettamente in funzione delle necessità dell’utente. Non entriamo nella complessità matematica-fisica per comprendere le differenze concettuali tra le singole procedure ma valutiamo piuttosto alcuni parametri che qualificano la ‘resa’ finale dell’immagine sintetica.
Il tempo di calcolo ( conseguente anche delle capacità di calcolo del sistema informatico ) è certamente un parametro da considerare con attenzione :
Questo diagramma permette di valutare che avendo a disposizione un maggiore tempo di calcolo si ottengono qualità sempre maggiori a condizione di cambiare la tipologia di rendering. Di contro con basse disponibilità di tempo non conviene utilizzare algoritmi che necessitano per loro natura di forti potenzialità di elaborazione.
In parole povere l’utente deve valutare in anticipo le ‘risorse’ che intende utilizzare e la disponibilità di attesa prima di ottenere il risultato. In funzione di questa decisione potrà attivare la conseguente procedura. Ad esempio si potrebbe così riassumere:
- basse capacità di calcolo e richiesta immediata: Phong
- medie capacità di calcolo e richiesta entro qualche decina di minuti : Ray-tracing e/o Radiosity
- alte-altissime capacità di calcolo e richiesta senza limiti di tempo: ‘Unbiased’
Esempio di renderizzazione con algoritmo ‘unbiased’ in un interno: per ottenere l’effetto di luce solare esterna che penetra dalla finestra e si irradia nell’ambiente e sugli oggetti, riflettendosi e rifrangendosi, sono state necessarie 12 ore di elaborazione con una workstation di medie capacità.
4. Collegamento software TILECAD
Il programma 2D/3D di composizione di piani di posa TILECAD, nelle sue versioni di distribuzione personalizzate, utilizza algoritmi interni Flat per la visualizzazione in tempo reale 3D, algoritmi di Gouround e Phong, opportunamente modificati e sofisticati, per le visualizzazioni a media definizione.
Gli algortimi e procedure POV-Ray, MEGAPOV e INDIGO che consigliamo di utilizzare, prevedono sia algoritmi di ray-tracing , radiosity e 'unbiased' per la creazione di immagini sintetiche, così come altri software di ambientazione 3D.
L’utilizzo praticamente di tutti gli algoritmi di
visualizzazione permette all’utente di ottenere livelli di fotorealismo a sua
discrezione : da quello più semplice e immediato fino a quello più sofisticato
ma con tempi di elaborazione molto alti.
Di seguito schematizziamo la struttura generale che
prevediamo per un utilizzo ottimale di questi strumenti :
Poiché la struttura della scena 3D è generata
automaticamente da TILECAD, per l’utilizzo di software con algoritmi di
ray-tracing / radiosity , l’utente deve soffermarsi particolarmente sulla
correzione delle luci / ombre e sulle texture
procedurali che tali software permettono.
Infatti anche se TILECAD inserisce nella preparazione del
file di conversione tutte le informazioni grafiche e di ambientazione
che sono state utilizzate per la visualizzazione al suo interno ciò non è detto
che sia sufficiente per ottenere immagini sintetiche ottimali, vista la
modifica degli algoritmi utilizzati.
Si consiglia di leggere la documentazione che alleghiamo e
di sperimentare direttamente con gli esempi presenti. Inoltre visti i lunghi
tempi di calcolo e il peso informatico di queste procedure si consiglia :
· Prevedere sistemi hardware di elevata potenza
· Creazione di immagini preliminari a basso numero di pixel
· Utilizzo dell’algoritmo di radiosity solo come processo
conclusivo
· Controllo accurato dei punti luce
·
Attenzione agli effetti di prospettiva che possono essere
deformanti
· Utilizzo delle texture procedurali rispetto alle mappe di bit
· Limitare la complessità della scena specialmente sugli sfondi
5.
Immagini stereoscopiche 3D
(Anaglifi)
Le immagini stereoscopiche 3D sono conosciute da oltre 100
anni e sono costituite a partire da 2 diverse immagini sovrapposte in modo tale
che ciascun occhio vede sola la ‘sua’ immagine.
A causa della limitata risoluzione del monitor, la maniera migliore per realizzare immagini 3D su un computer è quella detta degli ANAGLIFI : una immagine viene ‘codificata’ in rosso, l’altra in blu o verde, dopo di che si procede con la sovrapposizione.
Per vedere (‘decodificare’) le immagini sono necessari degli speciali occhiali con lenti rosse e blu ( o rosse e verdi). Tali occhiali, realizzati in plastica o cartoncino, sono molto economici e si possono acquistare per pochi euro
TILECAD crea le immagini anaglifi con una apposita opzione
all’interno del programma. Un esempio di questa elaborazione è l’immagine
sottostante. Per visionarla portate gli occhialini agli occhi (la lente rossa
deve stare alla sinistra) e concentrarsi sull’immagine.
Dovreste avere l’impressione di una visione
tridimensionale dell’ambiente.
Poiché un 10% della popolazione mondiale non è in grado di vedere immagini tridimensinali né con questo metodo né con altri più sofisticati ( per una limitazione genetica della parte sinistra del cervello che controlla la vista ) speriamo che non siate in questa statistica.
6. Visualizzazione 'Sketch - non fotorealistic render' (disegno a mano libera / cartoons)
Dopo una lunga codifica e test è stato prodotto completamente da OMNI DATA un nuovo algoritmo di visualizzazione 3D per TILECAD del tipo 'non-fotorealistic render - Sketch' e che si aggiunge alle 7 tipologie già esistenti.
Totalmente in modo automatico e immediato, la procedura trasforma la visualizzazione 3D in un fac-simile di disegno 'a mano libera' / fumetto, in tonalità di grigio con sbordatura delle linee rette, perdita dei colori sugli arredi e scontornatura delle immagini in trasparenza.
Il risultato è memorizzabile in un file o stampabile per le successive elaborazioni che l'utente può effettuare molto velocemente utilizzando o programmi computerizzati di fotoritocco o gli usuali strumenti artistici manuali ( pennarelli, matite, gessetti, tempere fino all'uso dell'aereografo).
Per guidare l'algoritmo ed ottenere l'immagine più consona alle necessità, l'utente puo' scegliere tra 3 tipologie di impressione di scrittura:
-
China
-
Matita
-
Carboncino
intervenendo anche sulla scelta di visualizzazione degli arredi 3D e sulle pose dei minimali. Alcuni algoritmi appositamente studiati per questa nuova visualizzazione sono proposti anche nella tipologia 'Phong' a bassa qualità.
A conclusione si ottiene un disegno praticamente indistinguibile da una pregiata produzione di impressione totalmente manuale e artistica perdendo così la connotazione informatica.