460-4078/01 – Počítačová grafika I (PG I)
Garantující katedra | Katedra informatiky | Kredity | 4 |
Garant předmětu | Ing. Tomáš Fabián, Ph.D. | Garant verze předmětu | Ing. Tomáš Fabián, Ph.D. |
Úroveň studia | pregraduální nebo graduální | Povinnost | povinně volitelný typu A |
Ročník | 1 | Semestr | zimní |
| | Jazyk výuky | čeština |
Rok zavedení | 2015/2016 | Rok zrušení | |
Určeno pro fakulty | FEI | Určeno pro typy studia | navazující magisterské |
Cíle předmětu vyjádřené dosaženými dovednostmi a kompetencemi
Cílem předmětu je prohloubení základních znalostí počítačové grafiky, se kterými se mohl posluchač seznámit v bakalářském studiu. Po absolvování předmětu posluchač porozumí základním principům moderních metod fotorealistického zobrazování scény. Vybrané metody bude umět popsat, naimplementovat a vytvářet aplikace pro renderování obrazů na základě fyzikálních principů šíření světa, přičemž důraz je kladen především na globální metody.
Absolvent předmětu dokáže:
- definovat základní struktury a operace používané v počítačové grafice se zaměřením na syntézu obrazu pomocí technik sledování paprsků,
- orientovat se v algoritmech rekurzivního sledování paprsků,
- formulovat rozdíl mezí lokálními a globálními metodami výpočtu osvětlení,
- řešit zobrazovací rovnici metodou Monte Carlo,
- navrhovat postupy pro urychlení konvergence stochastických metod,
- konstruovat akcelerační struktury pro urychlení průchodu paprsku scénou,
- specifikovat rozhodující optické vlastnosti vybraných typů materiálů,
- vytvářet výkonné paralelizované aplikace pro fotorealistickou syntézu obrazu.
Vyučovací metody
Přednášky
Cvičení (v učebně)
Anotace
Předmět volně navazuje na úvodní bakalářský kurz Základy počítačové grafiky a pokrývá hlavní principy fotorealistické syntézy obrazu. Jsou probírána zejména tato témata: metoda sledování paprsku, osvětlovací modely, modely odrazu světla od povrchu (BRDF), zobrazovací rovnice, základy metody Monte Carlo pro simulaci transportu světla, zajištění fyzikální korektnosti výsledků, urychlování výpočtu, vyhlazování obrazu a popis základních optických materiálových modelů. Předmět zahrnuje cvičení, během kterých jsou témata probírána na přednáškách prakticky realizována formou implementace programů k zápočtu. Teoretické poznatky získané během rozboru dílčích úloh slouží jako základ pro praktickou implementaci konkrétních příkladů na cvičeních. Cvičení tedy úzce korespondují s přednáškami a předpokládá se praktická realizace zmíněných témat v prostředí jazyka C++.
Povinná literatura:
Doporučená literatura:
Forma způsobu ověření studijních výsledků a další požadavky na studenta
Podmínkou udělení zápočtu je odevzdání jednotlivých úloh ze cvičení. Funkčnost jednotlivých částí bude prezentována v rámci cvičení v zápočtovém týdnu. Podmínkou pro udělení zápočtu je zvládnutí těchto úloh s bodovým ziskem minimálně 20 bodů ze 45 možných. Hodnotí se zejména míra pochopení daného problému, správnost implementace algoritmů, funkčnost a vizuální úroveň prezentovaných výsledků. Předpokládá se výborná orientace v odevzdaném zdrojovém kódu.
Předmět je ukončen ústní zkouškou s písemnou přípravou.
E-learning
Další požadavky na studenta
U studentů se předpokládá znalost matematiky a programování na úrovni probrané během bakalářského studia.
Prerekvizity
Předmět nemá žádné prerekvizity.
Korekvizity
Předmět nemá žádné korekvizity.
Osnova předmětu
Přednášky:
1. Fyzikální a matematické základy syntézy obrazu (světlo, radiometrické a fotometrické veličiny, barevné systémy).
2. Model kamery, hloubka ostrosti, afinní prostory a transformace, maticový zápis, změna báze, přechody mezi souřadnými systémy.
3. Metoda sledování paprsku (Ray Tracing), výpočet průsečíků těles s paprskem.
4. Základní typy materiálů, modely odrazu světla, textury, BRDF.
5. Mikroploškové modely (Cook-Torrance, Oren-Nayar), obecné BxDF.
6. Vícenásobné vzorkování a anti-aliasing, gamma korekce.
7. Urychlovací metody, akcelerační datové struktury a paralelizace.
8. Zobrazovací rovnice (Kajiya) a její řešení pomocí metod Monte Carlo.
9. Metoda sledování cest (Path Tracing), techniky snižování rozptylu (vzorkování po částech a podle důležitosti, ruská ruleta, next event estimation, přímé osvětlení).
10. Zdroje světla (vzorkování, image based lighting)
11. Obousměrné sledování cest (Bi-directional Path Tracing), metoda fotonových map.
12. Spektrální trasování, mapování tónů.
13. Další metody fotorealistického zobrazování scén.
14. Další metody modelování a zobrazování těles (hraniční modely, CSG, distance function).
Cvičení na počítačové učebně:
1. Načítání a reprezentace dat, podpůrné knihovny (např. Embree, OptiX).
2. Implementace jednoduché kamery.
3. Základní ray casting (A. Appel).
4. Implementace difuzních materiálů a Phongova osvětlovacího modelu.
5. Rozšíření materiálů o kovové povrchy (reflexe) a dielektrické materiály (refrakce a útlum), Whittedův rekurzivní ray tracing.
6. Supersampling, gama korekce.
7. Akcelerace výpočtu.
8. Základní path tracing.
9. Urychlování konvergence, implementace vybraných BRDF.
10. Vzorkování zdrojů světla.
11. Dokončení implementace základního path traceru.
12. Úprava grafického výstupu ray traceru (tone mapping).
13. Rezerva na dopracování jednotlivých úloh.
14. Kontrola zadaných úloh.
Na cvičeních se řeší konkrétní úlohy z probrané oblasti. Implementačním jazykem je C++.
Podmínky absolvování předmětu
Výskyt ve studijních plánech
Výskyt ve speciálních blocích
Hodnocení Výuky