Detail předmětu

Grafické a multimediální procesory

FEKT-MGMPAk. rok: 2010/2011

Organizace obrazové paměti. Barevné modely a prostory. Správa barev. Základní principy a algoritmy 2D/3D grafiky. Mapování a komprese textur, pixelové interpolace. Kvantování. Predikční kódování. Kosinová a waveletová transformace. Kompenzace pohybu a hybridní kódování. Podpásmové kódování a vektorové kvantování. Huffmanovo kódování. Kódování délkou sledů. LZ77, 78. JPEG, JPEG2000. Standardy pro kódování zvuku a videa s redukcí dat, ITU-T H.261, H.263, H.264, MPEG-1, 2, 4. Multimediální procesory, procesory pro všeobecné použití. Multimediální rozšiřování instrukčního souboru, technologie SIMD (MMX, SSE, 3DNow!, Altivec). Architektury moderních GPU, vertex a pixel shadery, technologie DirectX, GPGPU, CUDA. Paralelizace.

Jazyk výuky

čeština

Počet kreditů

5

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

Studenti získají znalosti z oblasti počítačové grafiky a budou ovládat implementaci grafických a multimediálních operací v jazyce OpenGL.

Prerekvizity

Jsou požadovány znalosti na úrovni bakalářského studia.

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

Metody vyučování závisejí na způsobu výuky a jsou popsány článkem 7 Studijního a zkušebního řádu VUT.

Způsob a kritéria hodnocení

Řešení zadaného projektu 15 bodů
Test ve cvičeních 7 bodů
Úlohy ve cvičeních 8 bodů
Zkouška 70 bodů

Osnovy výuky

1. Historie, základní pojmy, standardní zobrazovací režimy.
2. Barevné modely a barevné prostory.
3. Obraz a jeho reprezentace, vzorkování a kvantování, kosinová a waveletová transformace.
4. Principy 2D grafiky, křivky a jejich vlastnosti, algoritmy rasterizace.
5. Principy 3D grafiky, plochy a jejich vlastnosti. Geometrické transformace scény v homogenních souřadnicích.
6. Mapování a komprese textur, pixelové interpolace.
7. Komprese kvadrantovým stromem, kódování délkou sledu, Huffmanovo kódování, LZ77.
8. Predikční kódování. Metody ztrátové komprese, JPEG.
9. Standardy pro kódování zvuku s redukcí dat, subpásmové a percepční kódování, principy. MPEG-1 Audio, MPEG-2 Audio BC, AAC, AC-3, SBR, MPEG Surround.
10. Standardy pro kódování videa s redukcí dat, principy, kompenzace pohybu, odstupňované profily. ITU H.261, H.263, H.264, MPEG-1, 2, 4, 7.
11. Multimediální procesory a rozšiřování instrukčního souboru, proudové zpracování instrukcí, cache, technologie SIMD. Technologie MMX, 3DNow!, SSE, Altivec.
12. Čtení a zpracování s více přístupy. Procesory pro všeobecné použití, multi-threading, hyper-threading, architektura multi-core.
13. Architektury moderních GPU, vertex a pixel shadery. GPU jako paralelní systém pro výpočty, technologie DirectX, GPGPU, CUDA. Paralelizace.

Učební cíle

Seznámit studenty s obvodovou podporou a implementací grafických a multimediálních operací, a dále s využitím jazyků OpenGL a DirectX 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

Coelho, R., Hawash, M.: DirectX, RDX, RSX, and MMX Technology. Addison Wesley, 1998. ISBN 0-201-30944-0 (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)
Heath, S. Multimedia & Communications Technology. Oxford: Focal Press, 1996. ISBN 0-240-51460-2 (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)
Rao K.R., Hwang J.J.: Techniques & Standards for Image, Video & Audio Coding, Prentice Hall, 1996 (EN)
Sayood, K.: Data Compression, 2nd ed. Academic Press, 2000. ISBN 1-55860-558-4 (EN)
Smékal, Z., Sysel, P. Signálové procesory. Sdělovací technika, Praha, 2006. ISBN 80-86645-08-8. (CS)
Žára, Beneš, Sochor, Felkel: Moderní počítačová grafika. Druhé vydání. Computer Press, 2005. ISBN 80-251-0454-0 (CS)

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-M magisterský navazující

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

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

    obor ET-CZV , 1 ročník, zimní 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