This course unites topics in computer graphics, computer vision, and human perception---visual computing.
It has a strong practical component with students building the foundations of Gaussian splatting---the state-of-the-art algorithm for 3D reconstruction and rendering.
Conceptually, the lectures introduce computer graphics from a human-centric point of view. Human perception motivates the design of extended reality devices and efficient computer graphics algorithms. How can we simulate how light propagates in real time by exploiting the limitations of the human visual system? In turn, the computer graphics models are used for 3D computer vision by inverse graphics, the analysis by synthesis principle. How can we invert the image, which measures light intensity?
The basic building blocks for visual computing applications that are taught are:
Together, they form the foundation for developing and extending Gaussian Splatting. Practical experiences are gained in the assignments and tutorials.
The following slides provide additional details and context to the existing visual computing modules at Bielefeld University:
https://docs.google.com/presentation/d/e/2PACX-1vRGyE0j_cU324qp-vOEE4hEBPn3HdwliZQqeg_vT0w7Yt9EUXmgFB6NamL_ynqeBMYRgD-cdvfvXobA/pub?start=false&loop=false&delayms=3000
The course builds upon the programming skills, mathematical models, and concepts learned in the introductory Programming and Math courses.
Required are basic programming skills (in python or Julia) and basic mathematics (in particular linear algebra, some integral calculus, little probability theory).
Prior knowledge of the PyTorch framework typically used for machine learning is a plus but not required.
The course material is largely self-contained and refers to external sources where not. The https://scratchapixel.com/ website is an excellent resource for self study of the covered materials and beyond. A script covering the core methodologies may be provided in future iterations of this course.
Frequency | Weekday | Time | Format / Place | Period | |
---|---|---|---|---|---|
weekly | Di | 10-12 | H10 | 07.04.-18.07.2025
not on: 6/24/25 |
einmlaig am 24.06.2025 in X-E1-201 |
one-time | Di | 10-12 | X-E1-201 | 24.06.2025 | einmalig am 24.06.2025 in X-E1-201 |
Module | Course | Requirements | |
---|---|---|---|
39-Inf-VC Visual Computing | Visual Computing | Student information | |
- | Graded examination | Student information | |
39-M-Inf-ASE-bas Basics of Autonomous Systems Engineering | Basics of Autonomous Systems Engineering: Vorlesung | Student information | |
- | Ungraded examination | Student information | |
39-M-Inf-INT-bas Basics of Interaction Technology | Basics of Interaction Technology: Vorlesung | Student information | |
- | Ungraded examination | Student information |
The binding module descriptions contain further information, including specifications on the "types of assignments" students need to complete. In cases where a module description mentions more than one kind of assignment, the respective member of the teaching staff will decide which task(s) they assign the students.
The course has a strong practical component, with live coding during lectures and weekly assignments that cover the learned material step-by-step.
Passing the assignments is a prerequisite for writing the written exam.
This course has a video conference. Details will be displayed to you as a participant of this course. For an event with participant management, you must also be registered as attending by the teaching staff.