Logo UAB
2021/2022

Entorns Gràfics i de Realitat Augmentada

Codi: 104372 Crèdits: 6
Titulació Tipus Curs Semestre
2503758 Enginyeria de Dades OT 4 0
La metodologia docent i l'avaluació proposades a la guia poden experimentar alguna modificació en funció de les restriccions a la presencialitat que imposin les autoritats sanitàries.

Professor/a de contacte

Nom:
Felipe Lumbreras Ruíz
Correu electrònic:
Felipe.Lumbreras@uab.cat

Utilització d'idiomes a l'assignatura

Llengua vehicular majoritària:
espanyol (spa)
Grup íntegre en anglès:
No
Grup íntegre en català:
No
Grup íntegre en espanyol:

Prerequisits

Es recomana que l’alumne tingui coneixements i capacitats de:

· Programació en llenguatges de programació orientat a objecte (C++, etc.)
· Estructures bàsiques de dades.
· Geometria 3D.

Objectius

Les tècniques de Gràfics per Computador i Visualització Gràfica, en especial les de realisme (rendering) i d'animació per Computador (Computer Animation) són presents en molts àmbits, fonamentalment en l'entreteniment (cinema, televisió, videojocs, etc.) però també en altres com visualització científica, visualització d’imatges mèdiques, cartografia, disseny industrial (realització i simulació tant estàtica com dinàmica de productes) i d'altres. El fet de veure de forma usual aquestes imatges generades per computador no ha de treure ni minimitzar la complexitat en què han estat dissenyades i generades. En molts casos (fonamentalment l'entreteniment) hi ha d'haver un dissenyador gràfic que dissenyi el personatge, uns guionistes, però també un informàtic que modeli la forma el personatge i defineixi les equacions dinàmiques dels moviments així com que els generi pròpiament. En aquest curs es pretén introduir els diferents processos i algorismes que s'han d'utilitzar per obtenir una imatge realista. No es pretén que es coneguin aquests algorismes per a que els implementeu (molts d'ells ja estan implementats en llibreries gràfiques), sinó per a conèixer les possibilitats de cada algorisme i els paràmetres que s'utilitzen per configurar-los. S'introdueixen també conceptes importants d'animació per computador tant de trajectòries (rotació i traslació) com d'objectes articulats a fi de saber definir models de cinemàtica i generar moviments d'aquests objectes. De forma més aplicada es pretén que l’alumne adquireixi habilitats en la llibreria gràfica OpenGL (Open Graphics Library) dins un entorn gràfic Visual C++ amb interfície MFC o entorn Qt.

CONEIXEMENTS: Al finalitzar el curs l'alumne ha de ser capaç de:

· Comprendre i saber aplicar les principals tècniques per a generar i visualitzar escenes tridimensionals en ordinador.
· Comprendre els models volumètrics i models fractals per a representar objectes tridimensionals, força utilitzats per a la generació d’imatges realistes.
· Comprendre tant els conceptes bàsics com els principals algorismes de realisme (rendering): algorismes d’eliminació de cares ocultes, models i tipus d’il·luminació d’una escena, models d’ombrejat i transparència així com a models per a representar i visualitzar textures. Les textures permeten augmentar significativament el grau de realisme de l’escena.
· Comprendre i saber aplicar els principals models cinemàtics (el de sòlids rígids i els d’objectes articulats), molt utilitzats en tècniques d’animació per computador.
· Comprendre i saber aplicar la llibreria gràfica OpenGL (Open Graphics Library), que s’utilitza en la visualització gràfica tant en plataformes Windows com Linux i Mac OS.
· Comprendre i saber aplicar la programació de shaders (llenguatges GLSL, HLSL) per a treure'n màxim partit de la capacitat de processament de les GPU (Graphic Processing Unit) de les plaques gràfiques actuals.

HABILITATS: Es pretén que els alumnes adquireixin les següents habilitats:

· Tenir un grau de coneixement i pràctica en OpenGL per a:
    o Ser capaços de modelar un objecte a partir de primitives bàsiques OpenGL.
    o Saber modelar diferents fonts de llum i definir clarament els seus paràmetres per a visualitzar l’escena que es desitgi.
    o Assignar textures a un objecte per a donar-li un millor grau de realisme.
· Definir el model cinemàtic d’un objecte mòbil a partir de transformacions geomètriques (traslació, rotació i escalat), sigui un objecte rígid o articulat. Saber representar-lo, renderitzar-lo i moure’l en OpenGL.

COMPETÈNCIES: Es pretén que els alumnes adquireixin les següents competències:

· Treball en equip.
· Treball autònom
· Capacitat d’anàlisi, síntesi i prospectiva.
· Raonament crític.
· Capacitat de resolució de problemes.

 

Competències

  • Prevenir i solucionar problemes, adaptar-se a situacions imprevistes i prendre decisions.
  • Que els estudiants hagin desenvolupat aquelles habilitats d'aprenentatge necessàries per emprendre estudis posteriors amb un alt grau d'autonomia.
  • Que els estudiants tinguin la capacitat de reunir i interpretar dades rellevants (normalment dins de la seva àrea d'estudi) per emetre judicis que incloguin una reflexió sobre temes destacats d'índole social, científica o ètica.
  • Treballar cooperativament, en entorns complexos o incerts i amb recursos limitats, en un context multidisciplinari, assumint i respectant el rol dels diferents membres de l’equip.

Resultats d'aprenentatge

  1. Prevenir i solucionar problemes, adaptar-se a situacions imprevistes i prendre decisions.
  2. Que els estudiants hagin desenvolupat aquelles habilitats d'aprenentatge necessàries per emprendre estudis posteriors amb un alt grau d'autonomia.
  3. Que els estudiants tinguin la capacitat de reunir i interpretar dades rellevants (normalment dins de la seva àrea d'estudi) per emetre judicis que incloguin una reflexió sobre temes destacats d'índole social, científica o ètica.
  4. Treballar cooperativament, en entorns complexos o incerts i amb recursos limitats, en un context multidisciplinari, assumint i respectant el rol dels diferents membres de l’equip.

Continguts

BLOC 1. SISTEMES i DISPOSITIUS GRÀFICS

1. Introducció als Gràfics per Computador (1 hora)
· Definicions
· Història i aplicacions
· Tendències futures

2. hardware gràfic (1 hora)
· Sistema de visualització i controlador de visualització
· Dispositius de sortida gràfica
· Dispositius d’entrada gràfica
· Tècniques interactives d’entrada

BLOC 2. GRÀFICS 2D. Transformacions i modelat

3. Transformacions 2D (1 hora)
· Transformacions geomètriques
· Transformacions BitBlt
· Transformacions de visualització

4. Modelat 2D (1 hora)
· Primitives Gràfiques
· Aplicació CAD

BLOC 3. GRÀFICS 3D. TRANFORMACIONS I MODELAT

5. Transformacions 3D (2 hores)
· Sistemes de coordenades
· Transformacions geomètriques
· Transformacions de visualització

6. Modelat 3D (4 hores)
· Conceptes bàsics
· Models geomètrics
· Models procedurals
· Models espaials
· Fractals

BLOC 4. REALISME

7. Introducció i tècniques d’antialiasing (1 hora)
· Introducció
· Aliasing

8. Ocultacions (1 hora)
· Conceptes bàsics
· Algorismes espai objecte
· Algorismes d’espai imatge

9. Il·luminació (6 hores)
· Conceptes bàsics
· Models d’il·luminació
· Algorismes d’il·luminació local
· Textures
· Transparències
· Ombres
· Algorismes d’il·luminació global

BLOC 5. ANIMACIÓPER COMPUTADOR

10. Animació per Computador (4 hores)
· Conceptes bàsics
· Animació assistida per Computador
· Animació per Computador
· Tècniques d’animació per Computador
· Morphing

BLOC 6. TEMES COMPLEMENTARIS

· Nivells de gris i color
· Corbes i superfícies
· Morphing
· Sistemes de Realitat Virtual i Realitat Augmentada

 

Metodologia

Itinerari ABP:

En aquest itinerari s'ofereix una metodologia docent anomenada Aprenentatge Basat en Projectes (ABP) com alternativa a la metodologia clàssica de l’itinerari TPPE. La metodologia ABP pretén potenciar i motivar a l'alumne en l'aprenentatge. Les normes de funcionament i avaluació dels alumnes que segueixin aquest itinerari es detallen en el document de FUNCIONAMENT, accessible en Caronte.

TEORIA:

El professor farà un seguiment i tutorització del treball setmanal dels grups en les sessions de teoria de dues hores. Els alumnes entregaran un acta de reunió amb la discussió i acords realitzats en la sessió.

SEMINARIS:

En les classes de seminaris s’anirà alternant entre classe magistral i resolució de problemes o dinàmiques tipus puzle per donar suport a la realització del projecte.

COMPETÈNCIES:

Es pretén que els alumnes adquireixin (a més de les especificades a l'apartat 5) les següents competències:
· Desenvolupar estratègies d’aprenentatge autònom.
· Capacitat d’organització i planificació.
· Capacitat de resolució de problemes.

Nota: es reservaran 15 minuts d'una classe, dins del calendari establert pel centre/titulació, per a la complementació per part de l'alumnat de les enquestes d'avaluació de l'actuació del professorat i d'avaluació de l'assignatura/mòdul.

Activitats formatives

Títol Hores ECTS Resultats d'aprenentatge
Tipus: Dirigides      
Classes magistrals 26 1,04 1, 2, 3, 4
Explicació i resolució de problemes 12 0,48 1, 2, 3, 4
Resolució d'exercicis pràctics 12 0,48 1, 2, 3, 4
Tipus: Autònomes      
Estudi individual 36 1,44 1, 2, 3, 4
Resolució de problemes de manera individual o grupal 20 0,8 1, 2, 3, 4
Resolució d'exercicis pràctics de manera individual o grupal 32 1,28 1, 2, 3, 4

Avaluació

Itinerari ABP:

L'avaluació es farà també de forma continuada. S’avaluaran les actes que el grup escriurà després de cada sessió tutoritzada, en la que descriuran les seves discussions i acords, els dos controls escrits durant el semestre i les enquestes d’autoavaluació que cada alumne farà dels seus companys i d’ell mateix. La darrera setmana de curs lectiu els alumnes faran una presentació oral del projecte i entregaran una memòria del treball realitzat. Ambdós seran avaluats per part de tres professors del departament. Els alumnes d’aquest itinerari no realitzaran cap examen escrit.

Per a l’avaluació de l’itinerari d’ABP s’utilitzaran els següents INSTRUMENTS i ACTIVITATS:
· Una avaluació feta pels professors a partir de la presentació del projecte realitzat pel grup (qualitat del treball, presentació, memòria entregada). Nota Grupal (10). A partir de:
    o PORTFOLI DE L'ALUMNE: Document on s'explica el desenvolupament de la feina feta: plantejament del projecte, actes de reunions, informació buscada, explicació de l'aplicació implementada amb un petit manual d'usuari i proves i tests realitzats.
    o PRESENTACIÓ: Presentació oral en 10-14 transparències sobre el projecte desenvolupat i resultats obtinguts.
    o APLICACIÓ: Versió font i executable (Debug i Release) de l'aplicació desenvolupada.
    o ACTES i CONTROLS: Presentació de la documentació entregada.
· Una avaluació individual a partir de les observacions fetes pels tutors en les sessions tutoritzades, on es tindrà en compte l’actitud, iniciativa, participació, assistència i puntualitat de l’alumne a les sessions de grup. Nota Individual(10).
· Enquestes de co-avaluació i autoavaluació entre els membres del grup. Es realitzaran 3 avaluacions via Caronte. Nota Co-avaluació Companys (1).
· Les presentacions orals es realitzen davant dels alumnes i els grups valoraran el treball dels seus companys a mode de ranking de l’1 (el que més hagi agradat) al 5 (el que menys hagi agradat). Nota Co-avaluació Grups (0,5).

INDICADORS DE QUALIFICACIÓ:

La nota final de l’assignatura es calcula de forma ponderada i global tenint en compte les activitats anteriors i el grau d’implicació de cada membre del grup.

NOTA FINAL ASSIGNATURA (10) = (0’6 * Nota Grupal (10) + 0’4 * Nota Individual (10) + Nota Co-avaluació Companys (0,5) + Nota Co-avaluació Grups (0,5))

En cas de suspendre, el grup pot triar entre millorar el treball per la segona convocatòria seguint les suggeriments del professor o passar-se a l’itinerari TPPE, havent de presentar les pràctiques de l'itinerari.

CRITERIS D’AVALUACIÓ:

Per a considerar aprovada l’assignatura ha d’obtenir-se un mínim de 5 en la nota final.

IMPORTANT PER A TOTS ELS ALUMNES: És important inscriure’s a Caronte, doncs s'hi publiquen els materials de l'assignatura, es fan les entregues i es publiquen les notes de l'assignatura. Cal apuntar-se també a un grup d'ABP. A l'inici de curs cal inscriure's a Caronte a l'assignatura d Visualització Gràfica Interactiva, curso "VGI Curs 2019-20" amb la contrasenya “VGI2019”. Si és la primera vegada que entreu a Caronte cal que proporcioneu el vostre NIU, contrasenya, nombre i cognoms i una foto carnet en format JPG. Caronte es un gestor diferent al Campus Virtual de la UAB, amb el fa falta que les contrasenyes siguin la mateixa.

CALENDARI D’AVALUACIÓ:

· Seguiment dels grups i controls: durant el curs.
· Entrega del port-foli, presentació oral i aplicació per part dels alumnes: La darrera setmana de classe.

Activitats d'avaluació

Títol Pes Hores ECTS Resultats d'aprenentatge
Entrega de problemes 1 2 0,08 1, 2, 3
Entrega de pràctiques 50 6 0,24 1, 2, 3, 4
Examen primer parcial 25 2 0,08 1, 2, 3
Examen segon parcial 25 2 0,08 1, 2, 3

Bibliografia

MATERIAL DE L’ASSIGNATURA: http://caronte.uab.cat, assignatura Visualització Gràfica Interactiva, curs ‘VGI Curs 2019-20’.

BIBLIOGRAFIA BÀSICA:
· J.F. Hughes, A. van Dam, M. McGuire, D.F.Sklar, F.D. Foley, S.K. Feiner, K. Akeley, Computer Graphics. Principles and Practice, third edition in C, Addison-Wesley, 2014.
· D. Hearn, P. Baker, Computer Graphics with OpenGL, 4th edition, Pearson, 2014.

BIBLIOGRAFIA COMPLEMENTÀRIA:
· D. Shreiner, G. Sellers, J. Kessenich, B. Licea-Kane, OpenGL Programming Guide, 8th Edition, 2013, Addison-Wesley, (red book).
· M. Bailey, S. Cunningham, Graphic Shaders. Theory and Practice, 2nd Edition, CRC Press, 2012.
· G. Sellers, R.S. Wright Jr., N. Haemel, OpenGL Superbible - Comprehensive Tutorial and Reference, 7th eds, Addison-Wesley, 2016 (blue book).
· Edward Angel and David Shreiner "Interactive Computer Graphics - A top-down approach using OpenGL", 6th ed, Pearson Education, 2012. Good undergraduate text book on Computer Graphics.
· JungHyun Han, 3D Graphics for Game Programming", CRCPress, 2011. Good and simple explanation for the Graphics Renderer Pipeline and the various transforms, with many nice diagrams.
· E. Lengyel, Mathematic for 3D game programming & Computer Graphics, 3rd edition, Course Technology, 2011.

ENLLAÇOS WEB:
· OpenGL mother site @ www.opengl.org.
· Nehe OpenGL Tutorials @ http://nehe.gamedev.net. One of the best sites on OpenGL.
· Nate Robin's OpenGL Tutor @ http://www.xmission.com/~nate/opengl.html. One of the best sites on OpenGL. Provides a few animated programs to illustrate OpenGL functions, such as gluLookAt. Nate Robin also provide the original GLUT library.
· The Visualization Toolkit (VTK) is an open-source, freely available software system for 3D computer graphics, image processing and visualization.VTK consists of a C++ class library and several interpreted interface layers including Tcl/Tk, Java, and Python.
· Computer Graphics (MIT). Curs de Gràfics per Computador del MIT amb transparències que toca molts dels temes de l'assignatura.
· EUROGRAPHICS. Associació europea de Gràfics per Computador, que agrupa els principals centres de recerca europeus en Computer Graphics i organitza el congrés anual d’Eurographics.
· ViRVIG: Visualització, Realitat Virtual i Interacció Gràfica (UPC-UdG). Grup de R+D en Realitat Virtual.

Programari

OpenGL