Detail předmětu

Moderní počítačová grafika

FEKT-MGMPAk. rok: 2016/2017

Předmět se věnuje počítačové grafice a modelování. Cílem je představit modelování scén počítačem jak po teoretické tak po praktické stránce. Témata pokrývají široký rozsah od barevných modelů přes teorii 3D modelování pomocí polynomů až po implementaci na konkrétních procesorech, včetně paralelizace a využití možností GPU.

Jazyk výuky

čeština

Počet kreditů

5

Výsledky učení předmětu

V rámci přednášek studenti získají znalosti z oblasti počítačové grafiky teoretického charakteru a cvičení slouží k praktickým zkušenostem - implementace výpočtů a modelování pomocí knihovny OpenGL a specializovaných technologií Intel.

Prerekvizity

Jsou požadovány znalosti na úrovni bakalářského studia Teleinformatika. Znalost zpracování signálu výhodou.

Plánované vzdělávací činnosti a výukové metody

Metody vyučování zahrnují přednášky a cvičení na počítači. Předmět využívá e-learning (Moodle). Student odevzdává jeden samostatný projekt.

Způsob a kritéria hodnocení

Řešení zadaného projektu: max. 20 bodů, minimum 10 bodů
Test ve cvičení: max. 12 bodů
Úlohy ve cvičeních: max. 8 bodů
Zkouška: max. 60 bodů, minimum 20 bodů

Osnovy výuky

Barevné modely a barevné prostory.
Obraz a jeho reprezentace, vzorkování a kvantování.
Organizace obrazové paměti, zobrazovací režimy.
Fourierova, kosinová a waveletová transformace.
Principy 2D grafiky, křivky a jejich vlastnosti, algoritmy rasterizace.
Principy 3D grafiky, plochy a jejich vlastnosti.
Geometrické transformace scény v homogenních souřadnicích.
Osvětlování, stínování, viditelnost.
Mapování a komprese textur, pixelové interpolace.
RLE, Huffmanovo kódování, LZ77, LZW, predikční kódování, JPEG, JPEG2000, SPIHT.
Formáty čísel, aritmetika procesoru.
Multimediální procesory a rozšiřování instrukčního souboru, proudové zpracování instrukcí, cache, technologie SIMD. Technologie MMX, 3DNow!, SSE, Altivec.
Graphic pipeline, vertex a pixel shadery. Architektury moderních GPU. GPU jako paralelní systém. CUDA.

Učební cíle

Seznámit studenty s 3D modelováním počínaje definicí objektů až po implementaci na grafických a multimediálních procesorech, a dále s využitím knihovny OpenGL k zpracování obrazové informace. Využití moderních technologií Intel pro implementaci zpracování multimediálních signálů.

Vymezení kontrolované výuky a způsob jejího provádění a formy nahrazování zameškané výuky

přednášky jsou nepovinné
počítačová cvičení jsou povinná
odevzdání samostatného projektu je povinné

Základní literatura

Rao K.R., Hwang J.J.: Techniques & Standards for Image, Video & Audio Coding, Prentice Hall, 1996 (EN)
Heath, S. Multimedia & Communications Technology. Oxford: Focal Press, 1996. ISBN 0-240-51460-2 (EN)
Žára, Beneš, Sochor, Felkel: Moderní počítačová grafika. Druhé vydání. Computer Press, 2005. ISBN 80-251-0454-0 (CS)
Sayood, K.: Data Compression, 2nd ed. Academic Press, 2000. ISBN 1-55860-558-4 (EN)
Hanzo, L. Cherriman, P., Streit, J.: Video Compression and Communications, 2nd ed. John Wiley & Sons, Ltd, 2007. ISBN 978-0-470-51849-6 (EN)
Smékal, Z., Sysel, P. Signálové procesory. Sdělovací technika, Praha, 2006. ISBN 80-86645-08-8. (CS)
Coelho, R., Hawash, M.: DirectX, RDX, RSX, and MMX Technology. Addison Wesley, 1998. ISBN 0-201-30944-0 (EN)
Kaufman, Rendering, Visualization and Rasterization Hardware. Springer-Verlag, 1993. ISBN 3-540-56787-9 (EN)
Leiterman, J. C.: Learn Vertex and Pixel Shader Programming with DirectX 9. Wordware Publishing, Inc., 2004. ISBN 1-55622-287-4 (EN)
RAJMIC, P.; SCHIMMEL, J. Moderní počítačová grafika. Brno: Vysoké učení technické v Brně, 2013. ISBN: 978-80-214-4906- 0.

Doporučená literatura

Foley J.D., van Dam A., Feiner S.K., Hughes J.F.: Computer Graphics, Principles and Practice, Addison Wesley, 1990 (EN)

Zařazení předmětu ve studijních plánech

  • Program EEKR-M1 magisterský navazující

    obor M1-TIT , 2 ročník, letní semestr, volitelný oborový

  • Program EEKR-M magisterský navazující

    obor M-TIT , 2 ročník, letní semestr, volitelný oborový

  • Program AUDIO-P magisterský navazující

    obor P-AUD , 2 ročník, letní semestr, volitelný mimooborový

  • Program EEKR-CZV celoživotní vzdělávání (není studentem)

    obor ET-CZV , 1 ročník, letní semestr, volitelný oborový

Typ (způsob) výuky

 

Přednáška

26 hod., nepovinná

Vyučující / Lektor

Osnova

Barevné modely, 2D grafika.
3D grafika, složitost, grafické akcelerátory.
Obrazová paměť, grafické procesory.
Paralelizace geometrického a rasterizačního stupně.
Architektura SGI, mapování a komprese textur, pixelové interpolace.
Kvantování a predikční kódování.
Kosinová a waveletová transformace.
Kompenzace pohybu, podpásmové kódování.
Huffmanovo a aritmetické kódování, RLE.
Komprese dat, LZ 77, LZ 78, Burrows-Wheelerova transformace.
JPEG, ITU-T H.261, MPEG-1.
MPEG-2, -4, -7.
Multimediální procesory, instrukční soubory. Hrací konzoly.

Cvičení na počítači

26 hod., povinná

Vyučující / Lektor

Osnova

1. Úvod do OpenGL, knihovny GLUT a GLU, instalace GLUT, základní práce s okny a vymazání pixel bufferu.
2. Základy vykreslování v OpenGL, 2D scéna, body, čáry, vertexy, práce s barevnou informací, tloušťky, vysvětlení transformací a transformační matice.
3. Schéma komunikace mezi uživatelem a prostředím, obsluha myši, klávesnice, jednoduché grafické uživatelské rozhraní ve formě menu, samostatně animovaná scéna bez zásahu uživatele, vysvětlení principu double buffering.
4. Zadání projektů, bitmapová grafika, výpis textu, display listy, vertex arrays
5. Základní vykreslování ve 3D grafice s jednoduchým stínováním, překrývání stěn, řešení problému pomocí tzv. malířova algoritmu a z-bufferu, normály stěn a základy osvětlení.
6. Phongův osvětlovací model a jeho výpočetní složky, světelné zdroje. Pokročilé 3D-texturování, mipmapping, blending. Vysvětlení principu některých efektů.
7. Intel Integrated Performance Primitives (IPP) - Úvod do programování. Vzájemné převody nejpoužívanějších barevných prostorů (RGB, YCbCr, HLS, stupně šedi), gama korekce.
8. Intel Integrated Performance Primitives (IPP)
9. Intel Threading Building Blocks (TBB)
10. Programování DirectX - část Direct3D pro modelování 3D scén – vertex shadery a pixel shadery, rozdíly oproti OpenGL
11. Programování DirectX - část DirectSond pro práci s audiosignály – přehrávání audiosignálů, plug-in moduly a práce s nimi, manažer grafů filtrů
12. Programování DirectX - část DirectShow pro práci s videem – přehrávání videa a práce s videosignálem, systém kodeků, streaming