Modulo 0. “Computer Grafica” cosa è e quale parte è trattata nel

Modulo 0. “Computer Grafica” cosa è e quale parte è trattata nel corso?
Una possibile e generale definizione della Computer Grafica è:
“L'insieme delle tecniche digitali di elaborazione della informazione (hardware, software,
sistemistiche, organizzative) per produrre immagini statiche e in movimento in formato digitale.”
Questa definizione è molto ampia. Essa ovviamente include anche la “elaborazione delle immagini”
e altri rami della Informatica che pur condividendo moltissime tecniche e principi con la Computer
Grafica si distinguono da essa come illustrato nel prossimo paragrafo.
Computer Grafica, Information Visualization, Computer Vision, Image Processing condividono
tutte un grande generalissimo schema: prendono delle informazioni di varia natura in ingresso, le
elaborano e restituiscono informazioni di varia natura in uscita.
Area di elaborazione
visuale
Tipo di dati in
ingresso
Tipo di elaborazioni
svolte
Tipo di dati in uscita
Computer Grafica
Modelli geometrici,
modelli di illuminazione,
modelli di ripresa
fotografica,
interpolazioni temporali.
Principalmente DATI
NUMERICI.
Elaborazione della
interazione tra modelli, luci,
telecamere e deformazioni
dinamiche di tutti gli oggetti
coinvolti in una scena
sintetica.
Sequenze di immagini con
risoluzione spaziale e
temporale che supporti il
livello di dettagli e/o
fotorealismo richiesti
nell'applicazione.
Computer Vision
Informazioni provenienti da
sensori generalmente sotto
forma di immagini singole o
multiple, a scala di grigio o
multispettrali come ottenute
da telecamere digitali di
varia natura e qualità.
Principalmente DATI
VISUALI
Calcoli matematici che
ottengano modelli
geometrici e modelli della
telecamera in grado di
“spiegare” i dati ricevuti in
ingresso (foto, riprese
video) in maniera precisa.
Informazioni numeriche
sullo stato della scena che
viene ripresa (presenza e
traiettoria di oggetti,
ricostruzione di superficie
geometriche reali)
Image Processing
Immagini ottenute con varie Calcoli matematici sulla
forme di sensori e
rappresentazione numerica
digitalizzate.
delle immagini in ingresso.
Principalmente DATI
VISUALI.
Immagini “migliorate” per
specifici utilizzi (artistici,
comunicativi, di studio
scientifico)
Information Visualization
Grandi collezioni di dati
numerici e categoriali, più
eventuali relazioni definite
su essi.
Principalmente DATI
ETEROGENEI.
Grafici, diagrammi e altri
tipi di immagini di natura
astratta che guidino la
intuizione umana a cogliere
regolarità e fare “scoperte”
sui dati in esame.
Organizzazione dei dati in
DB strutturati che
consentano di eseguire
efficientemente query sui
dati. Le risposte saranno
presentate visualmente.
Lo schema riportato è un po' rigido ed ovviamente non cattura la intera realtà di questo settore della
elaborazione automatica. Infatti i modelli che si usano in Grafica spesso provengono da analisi
ottenute in Visione, le immagini prodotte dalla Grafica spesso debbono essere ulteriormente
elaborate per ottenere la qualità richiesta nelle applicazioni. E ancora: la Grafica richiede sempre
più disponibilità di immagini adeguate da usare come sfondi, mappe ambientali di illuminazione,
tessiture e sorgenti di informazioni allo scopo di sintetizzare immagini con elevato grado di fotorealismo.
Un punto di vista leggermente differente e altrettanto valido per classificare le operazioni tipiche di
questo settore della Informatica è il seguente. Si parla di elaborazione nello “spazio degli oggetti” e
di elaborazioni nello “spazio delle immagini”. Qui il termine “spazio” indica un ambito concettuale
generale.
Per spiegare meglio questa categorizzazione consideriamo alcuni esempi:
a) posizionare, dimensionare e animare un oggetto in una scena 3d è una tipica operazione nello
“spazio degli oggetti”.
b) filtrare una immagine per ottenere effetti speciali, fondere in overlay o con altre tecniche di
composizione più immagini è una tipica operazione nello spazio delle immagini.
In generale l'informatico che volesse raggiungere un buon grado di competenza nella Computer
Grafica non potrà ignorare gli altri ambiti di elaborazione della informazione visuale.
Un altro modo, molto pragmatico, per definire i contenuti della Computer Grafica è guardare al
software che viene incluso in questo scaffale della Informatica nelle librerie. In esso troviamo
strumenti per la manipolazione di immagini fotografiche (esempi: GIMP, Photoshop etc), strumenti
per il disegno vettoriale (esempi: Inkscape, Freehand), strumenti per gli effetti speciali, strumenti
per la animazione vettoriale 2d, strumenti per il disegno tecnico in 2d e 3d, simulatori di fenomeni
fisici, modellatori basati su vari principi, rendering engines, game/simulations engine, 3d-browser,
suite di programmi integrati per la produzione/editing di filmati o immagini, eccetera.
Tutte queste tecniche ed applicazioni sono a buon diritto cittadini di prima classe della città della
Computer Grafica.
Un po' di storia: le prime applicazioni grafiche dei calcolatori digitali risalgono al 1968-70
(Sutherland, Bezier, Catmull, Blinn) essa rappresenta oggi una delle aree di maggior successo della
informatica sopratutto per il notevole impatto economico degli ambiti in cui è utilizzata.
La “dignità” scientifica di questo settore, inizialmente guardato come “puramente applicativo” dagli
altri esperti di informatica è ormai testimoniata dall''altissimo livello scientifico che le pubblicazioni
di grafica riescono ad ottenere.
Per esempio la conferenza SIGGRAPH che si tiene in USA con cadenza annuale è considerata la
migliore conferenza tecnica in Computer Grafica. Essa propone circa 100 nuovi risultati tecnicoscientifici nel settore. Tali contributi toccano temi come: hardware, modellazione geometrica di
precisione, scansione di modelli, tecniche di illuminazione, elaborazione di immagini 2d, stili di
resa, realismo, animazione, strumenti per l'animazione e simulazione di fluidi, simulazione di
fenomeni naturali, strutture dati e algoritmi, compressione. Questi sono quindi per “consuetudine”
considerati gli attuali contenuti della disciplina.
La storia della Computer Grafica è molto affascinante. Essa è in qualche modo il “coronamento” di
una serie di conquiste scientifiche e tecnologiche che hanno richiesto decine di anni di
investigazione e sviluppo. Molta documentazione (libri, documentari) è disponibile a riguardo.
L'argomento è di grande interesse perché mostra come Scienza, Tecnologia, Esigenze militari,
Esigenze cinematografiche si sono intrecciate per produrre, grazie ad investimenti colossali, i veri e
propri miracoli che oggi ci permettono di considerare le applicazioni grafiche “normali”.
Nella prossima pagina è riportato schematicamente il processo di elaborazione richiesto dall'attuale
stato dell'arte tecnologica per la produzione di scene animate tridimensionali.
Gran parte delle lezioni del corso si focalizzeranno sui passaggi salienti di questo diagramma.
Modello della scena 3d:
- poligoni;
- materiali;
- tessiture;
- luci (tipo e posizione)
Modello della telecamera
- posizione, orientamento
- lunghezza focale
- risoluzione
- effetti speciali
RENDERING
RAW
OUTPUT
COMPOSITING
Elaborazione di immagini
- filtri;
- correzioni;
- aggiunte;
REFINED
OUTPUT
RIPETUTE NEL TEMPO
Effetti “temporali”
- animazione camera
- animazione mesh
- animazione effetti
- transizioni tra immagini
SOUND
DIGITAL
ANIMATION