Informatica grafica Turno 1/2005-2006

Da WikiDsy.
Versione del 11 ott 2005 alle 14:02 di 213.140.22.64 (discussione) (Lezione di Martedì 11-10-05)

Informazioni generali

Informatica Grafica è un corso fondamentale per gli studenti del secondo anno di Comunicazione digitale, ma può essere seguito, come complementare, anche dagli studenti del corso di laurea in Informatica.

=== Docente === Daniele Marini

Orario delle lezioni

  • Lunedì 14:30 - 16:30 (Aula G13, via Golgi)
  • Martedì 10:30 - 12:30 (Aula 303, Settore didattico)

Alcune lezioni di esercitazione si terranno in aule diverse da quelle previste. Consultare il sito web del corso per informazioni più precise.

Comunicazioni

Il professore ha comunicato il suo indirizzo email (l'unico modo sicuro di contattarlo, dato che è spesso in viaggio): daniele.marini@unimi.it

Sito del corso

Il sito del corso si trova alla pagina: [1].

Esiste anche una pagina che permette di accedere al servizio di videolezioni (si tratta delle lezioni degli anni passati): [2]

Il professor Marini si è raccomandato, per chi volesse fruire del servizio, di annotare da qualche parte le proprie userID e password, onde evitare di dimenticarsele e di doverle richiedere in continuazione. E' possibile che da quest'anno i codici personali corrispondano a quelli utilizzati per accedere al SIFA.

Materiale didattico e bibliografia

Sono stati segnalati in particolare i seguenti testi:

  • Comunicazione visiva digitale, D. Marini M. Bertolo A. Rizzi, Addison Wesley, 2001 (notare che il prof. è coautore di questo testo)
  • Sintesi delle immagini per il fotorealismo, M. Rossi A. Moretti, Franco Angeli, 1998
  • Fondamenti di grafica tridimensionale interattiva, R. Scateni P. Cignoni C. Montani R. Scopigno, McGraw-Hill, Milano, 2005

Una bibliografia aggiuntiva è disponibile sul sito web del corso.

Inoltre sono disponibili on-line, sempre sul sito del corso, le dispense presentate a lezione e altra documentazione attinente alla materia.

Il prof. ha consigliato di acquistare almeno uno dei libri di testo proposti.

Obiettivi e finalità del corso

  • Conoscere i concetti alla base della grafica avanzata (sintesi e analisi di immagini, fotorealismo, animazione, rendering, realtà virtuale).
  • Saper creare modelli 3D mediante RIB e shader per i materiali della scena utilizzando il linguaggio RenderMan Shading Language (linguaggio grafico utilizzato dalla casa di produzione cinematografica Pixar, nota per capolavori d'animazione come "Gli Incredibili", "Alla ricerca di Nemo", ecc...).

In pratica il corso si occupa della creazione a partire dal "nulla" di immagini virtuali fotorealistiche, ovvero immagini praticamente indistinguibili (o comunque il più vicine possibile) ad immagini reali, della creazione di immagini e mondi virtuali 3D, ecc...

Modalità d'esame

Per potersi presentare all'esame occorre compilare alcuni gruppi di quiz di autovalutazione (tipicamente non sono più di tre o quattro serie) che verranno proposti periodicamente. Per questo occorre registrarsi on-line.

L'esame finale consisterà in una parte orale relativa agli argomenti trattati nei quiz e da una seconda parte di progetto, che consisterà nel realizzare un'immagine fotorealistica tramite il linguaggio di scripting RIB e lo RenderMan Shading Language.

N.B. Il punteggio dei quiz non è direttamente determinante ai fini della valutazione, ma in sede d'esame le domande da proporre verranno "scelte" in base alle risposte dei quiz.

Informazioni utili

  • Il prof. ha specificato che le due ore di corso giornaliere NON prevedono un intervallo a metà lezione.
  • La frequenza al corso, vista la complessità degli argomenti trattati e la presenza di concetti totalmente nuovi, è fortemente consigliata.

Diario del corso

Lezione di Lunedì 03-10-05

Argomenti trattati a lezione:

  • Introduzione al corso e informazioni generali
  • Primi rudimenti di grafica: introduzione ai concetti di computer grafica, ciclo di vita delle immagini, immagini digitali, funzionamento e struttura di base di un monitor (pixel, codifica RGB, frame buffer), canale alfa per effetti di sovrapposizione di immagini

Lezione di Martedì 04-10-05

Argomenti trattati a lezione:

Non ancora disponibile. Chi avesse informazioni utili è pregato di aggiornare questo paragrafo.

Lezione di Lunedì 10-10-05

Avviso importante: sono state rese disponibili due aule, da 50 posti ciascuna, per lo svolgimento delle esercitazioni. Tuttavia, dato l'elevato numero dei partecipanti al corso, non sarà comunque possibile garantire un posto in aula per ciascuno studente. Per prendere parte alle esercitazioni è necessario iscriversi per tempo utilizzando questa pagina web:

[3]

Una volta raggiunta la capienza massima delle aule, le iscrizioni verranno chiuse. Gli studenti iscritti saranno poi ripartiti equamente fra le due aule, secondo un calendario che verrà diramato in seguito alle registrazioni. Le due prove si svolgeranno comunque in parallelo. Attenzione: il prof. non comunicherà in alcun modo la data di apertura delle iscrizioni on-line. Occorre pertanto prestare costante attenzione al sito.

Argomenti trattati a lezione:

Questa parte del corso è dedicata allo studio dei modelli matematici alla base della modellazione di curve e superfici. In particolare si è visto come modellare e "deformare" curve e superfici con l'ausilio di punti di controllo. Oggi si è trattato di:

  • Funzioni di Bernstein
  • Curve di Bezier: punti di controllo P0, P1, P2, P3
  • Superfici parametriche
  • Valutazione di superfici parametriche: algoritmo di De Casteljau
  • NURBS (Non Uniform Rational B Splines)
  • Curve parametriche per interpolazione
  • Superfici a maglia (mesh) e lofting
  • Il frame di Frenet: vettore tangente, normale, binormale
  • Decimazione dei triangoli: triangolazione di Delaunay, algoritmo di Sibson, metodo di Schroeder
  • Volumi: richiamo sugli schemi di rappresentazione visti in precedenza
    • CSG (Geometria Solida Costruttiva)
    • BREP (Boundary rapresentation)
    • Suddivisione spaziale
    • Superfici mediali

Per un approfondimento sulle curve è stato segnalato il seguente testo:

  • G. Farin, Curves and surfaces for computer aided geometric design

Spesso, durante il corso, verrà citata della bibliografia di approfondimento.

Il prof. ha anche menzionato il corso complementare dell'area matematica Geometria computazionale [4], per chi fosse interessato ad approfondire la teoria matematica alla base dell'Informatica grafica.

Lezione di Martedì 11-10-05

Argomenti trattati a lezione:

  • Interpolazione: punti campione, interpolazione lineare, polinomiale, a tratti, a spline cubiche
  • Funzioni approssimate: valore residuo, norma
  • Trasformazioni geometriche: spazio affine, coordinate omogenee, matrici, vettori
  • Il punto come vettore
  • Operazioni sui vettori: modulo di un vettore, somma di vettori, prodotto interno (o scalare), prodotto vettoriale
  • Orientamento nello spazio affine: mano sinistra, mano destra, world coordinate system
  • Prodotto tra matrici
  • Definizione di oggetti: sistema di riferimento locale, oggetti complessi a partire da oggetti elementari
  • La traslazione
  • Trasformazioni affini: trasformazioni lineari + traslazione
  • La rotazione nel piano: trigonometria e matrici
  • Coordinate omogenee: spazio delle classi di equivalenza, spazio omogeneo, fattore moltiplicativo
  • Trasformazioni di scala: ingrandimento, riduzione
  • Trasformazioni omografiche (o di Moebius)
  • Introduzione al 3D: matrici di rotazione (per gli assi x, y e z)
  • Trasformazioni inverse: rotazione inversa, traslazione inversa,
  • Matrice di istanziazione (o di modellazione), ordine delle operazioni:
    • una trsformazione di scala
    • una rotazione
    • una traslazione
  • Pila (o stack) delle matrici
  • Famiglie di trasformazioni: lineari, affini, similitudini