460-4078/02 – Computer Graphics I (PG I)

Gurantor departmentDepartment of Computer ScienceCredits4
Subject guarantorIng. Tomáš Fabián, Ph.D.Subject version guarantorIng. Tomáš Fabián, Ph.D.
Study levelundergraduate or graduateRequirementOptional
Year1Semesterwinter
Study languageEnglish
Year of introduction2015/2016Year of cancellation
Intended for the facultiesFEIIntended for study typesFollow-up Master
Instruction secured by
LoginNameTuitorTeacher giving lectures
FAB038 Ing. Tomáš Fabián, Ph.D.
Extent of instruction for forms of study
Form of studyWay of compl.Extent
Full-time Credit and Examination 2+2
Part-time Credit and Examination 10+0

Subject aims expressed by acquired skills and competences

The aim of the course is to deepen the basic knowledge of computer graphics, with which the student could get acquainted in the bachelor's study. After completing the course, the student will understand the basic principles of modern methods of photorealistic scene rendering. Selected methods will be able to describe, implement and create applications for rendering images based on the physical principles of world propagation, with emphasis on global methods. The graduate of the course will able to: - define the basic structures and operations used in computer graphics with a focus on image synthesis using ray tracing techniques, - orientation in algorithms for recursive ray tracing, - formulate the difference between local and global methods of lighting calculation, - solve the rendering equation by Monte Carlo method, - propose techniques to accelerate the convergence of stochastic methods, - design acceleration structures to accelerate the passage of the beam through the scene, - specify the main optical properties of selected types of materials, - create powerful parallelized applications for photorealistic image synthesis.

Teaching methods

Lectures
Tutorials

Summary

The course is a free continuation of the introductory bachelor's course Basics of Computer Graphics and covers the main principles of photorealistic image synthesis. The following topics are discussed: ray tracing method, illumination models, light reflection models from the surface (BRDF), rendering equation, basics of Monte Carlo method for simulating light transport, ensuring physical correctness of results, accelerating calculation, image smoothing and description of basic optical material models. The course includes exercises, during which the topics discussed in lectures are practically implemented in the form of implementation of credit programs. Theoretical knowledge gained during discussion of partial tasks serve as a basis for practical implementation of specific examples during exercises. Exercises closely correspond to the lectures and the implementation of the aforementioned topics in the C++ language environment is assumed.

Compulsory literature:

[1] Pharr, M., Jakob, W., Humphreys, G.: Physically Based Rendering, Third Edition: From Theory to Implementation, Morgan Kaufmann, 2016, 1266 pages, ISBN 978-0128006450. [2] Sojka, E.: Počítačová grafika II: metody a nástroje pro zobrazování 3D scén, VŠB-TU Ostrava, 2003 (ISBN 80-248-0293-7). [3] Sojka, E., Němec, M., Fabián, T.: Matematické základy počítačové grafiky, VŠB-TU Ostrava, 2011.

Recommended literature:

[1] Shirley, P., Morley, R. K.: Realistic Ray Tracing, Second Edition, AK Peters, 2003, 235 pages, ISBN 978-1568814612. [2] Akenine-Moller, T., Haines, E., Hoffman, N.: Real-Time Rendering, Third Edition, AK Peters, 2008, 1045 pages, ISBN 978-1568814247. [3] Dutré, P.: Global Illumination Compendium, 2003, 68 pages. [4] Ryer, A. D.: The Light Measurement Handbook, 1997, 64 pages.

Way of continuous check of knowledge in the course of semester

The condition for granting the credits is the submission of individual assignments from the exercises. The functionality of individual parts will be presented within the exercise in the credit week. The condition for awarding the credits is to master these tasks with a point gain of at least 20 points out of 45 possible. In particular, the degree of understanding of the problem, the correctness of the implementation of the algorithm, its functionality and the visual level of the presented results are evaluated. Excellent orientation in the submitted source code is assumed. The course is completed by an oral exam with written preparation.

E-learning

Other requirements

It is expected that students will have knowledge of mathematics and programming at the level taught during their undergraduate studies.

Prerequisities

Subject has no prerequisities.

Co-requisities

Subject has no co-requisities.

Subject syllabus:

Lectures: 1. Physical and mathematical basics of image synthesis (light, radiometric and photometric quantities, color systems). 2. Camera model, depth of field, affine spaces and transformations, matrix notation, change of basis, coordinate systems. 3. Ray tracing method, calculation of ray intersections with geometrical objects. 4. Basic types of materials, models of light reflection, textures, BRDF. 5. Microsurface models (Cook-Torrance, Oren-Nayar), general BxDF. 6. Supersampling and anti-aliasing, gamma correction. 7. Acceleration methods, acceleration data structures and parallelization. 8. Rendering equation (Kajiya) and its solution using Monte Carlo methods. 9. Path tracing, variance reduction techniques (importance sampling, russian roulette, next event estimation, direct lighting). 10. Light sources (sampling, image based lighting) 11. Bi-directional path tracing, photon mapping. 12. Spectral tracing, tone mapping. 13. Other methods of photorealistic rendering of scenes. 14. Other methods of modeling and displaying solids (boundary models, CSG, distance function). Practical exercise on computer labs: 1. Data loading and representation, used libraries (e.g. Embree, OptiX). 2. Implementation of a simple camera. 3. Basic ray casting (A. Appel). 4. Implementation of diffusion materials and Phong's illumination model. 5. Metal surfaces (reflection) and dielectric materials (refraction and attenuation), Whitted's recursive ray tracing. 6. Supersampling and anti-aliasing, gamma correction. 7. Acceleration of calculation. 8. Basic path tracing. 9. Acceleration of convergence, implementation of selected BRDF. 10. Sampling of light sources. 11. Complete the implementation of the basic path tracer. 12. Improving the graphical output of the ray tracer (tone mapping). 13. Reserve for completing individual tasks. 14. Checking the assigned tasks. The exercises solve specific tasks from the discussed area. The implementation language is C++.

Conditions for subject completion

Part-time form (validity from: 2015/2016 Winter semester)
Task nameType of taskMax. number of points
(act. for subtasks)
Min. number of points
Credit and Examination Credit and Examination 100 (100) 51
        Credit Credit 45  20
        Examination Examination 55  6
Mandatory attendence parzicipation:

Show history

Occurrence in study plans

Academic yearProgrammeField of studySpec.ZaměřeníFormStudy language Tut. centreYearWSType of duty
2021/2022 (N0688A140015) Industry 4.0 P English Ostrava 1 Optional study plan
2021/2022 (N2647) Information and Communication Technology (1103T031) Computational Mathematics P English Ostrava 1 Optional study plan
2021/2022 (N2647) Information and Communication Technology (2612T025) Computer Science and Technology P English Ostrava 1 Choice-compulsory study plan
2020/2021 (N0688A140015) Industry 4.0 P English Ostrava 1 Optional study plan
2020/2021 (N2647) Information and Communication Technology (1103T031) Computational Mathematics P English Ostrava 1 Optional study plan
2020/2021 (N2647) Information and Communication Technology (2612T025) Computer Science and Technology P English Ostrava 1 Choice-compulsory study plan
2019/2020 (N2647) Information and Communication Technology (1103T031) Computational Mathematics P English Ostrava 1 Optional study plan
2019/2020 (N2647) Information and Communication Technology (2612T025) Computer Science and Technology P English Ostrava 1 Choice-compulsory study plan
2019/2020 (N2647) Information and Communication Technology (1103T031) Computational Mathematics K English Ostrava 1 Optional study plan
2019/2020 (N2647) Information and Communication Technology (2612T025) Computer Science and Technology K English Ostrava 1 Choice-compulsory study plan
2018/2019 (N2647) Information and Communication Technology (1103T031) Computational Mathematics P English Ostrava 1 Optional study plan
2018/2019 (N2647) Information and Communication Technology (2612T025) Computer Science and Technology P English Ostrava 1 Choice-compulsory study plan
2018/2019 (N2647) Information and Communication Technology (1103T031) Computational Mathematics K English Ostrava 1 Optional study plan
2018/2019 (N2647) Information and Communication Technology (2612T025) Computer Science and Technology K English Ostrava 1 Choice-compulsory study plan
2017/2018 (N2647) Information and Communication Technology (1103T031) Computational Mathematics P English Ostrava 1 Optional study plan
2017/2018 (N2647) Information and Communication Technology (1103T031) Computational Mathematics K English Ostrava 1 Optional study plan
2017/2018 (N2647) Information and Communication Technology (2612T025) Computer Science and Technology P English Ostrava 1 Choice-compulsory study plan
2017/2018 (N2647) Information and Communication Technology (2612T025) Computer Science and Technology K English Ostrava 1 Choice-compulsory study plan
2016/2017 (N2647) Information and Communication Technology (1103T031) Computational Mathematics P English Ostrava 1 Optional study plan
2016/2017 (N2647) Information and Communication Technology (1103T031) Computational Mathematics K English Ostrava 1 Optional study plan
2016/2017 (N2647) Information and Communication Technology (2612T025) Computer Science and Technology P English Ostrava 1 Choice-compulsory study plan
2016/2017 (N2647) Information and Communication Technology (2612T025) Computer Science and Technology K English Ostrava 1 Choice-compulsory study plan
2015/2016 (N2647) Information and Communication Technology (1103T031) Computational Mathematics P English Ostrava 1 Optional study plan
2015/2016 (N2647) Information and Communication Technology (1103T031) Computational Mathematics K English Ostrava 1 Optional study plan
2015/2016 (N2647) Information and Communication Technology (2612T025) Computer Science and Technology P English Ostrava 1 Choice-compulsory study plan
2015/2016 (N2647) Information and Communication Technology (2612T025) Computer Science and Technology K English Ostrava 1 Choice-compulsory study plan

Occurrence in special blocks

Block nameAcademic yearForm of studyStudy language YearWSType of blockBlock owner