Course details
Computational Geometry
VGE Acad. year 2024/2025 Summer semester 5 credits
Linear algebra, geometric algebra, affine an projective geometry, principle of duality, homogeneous and parallel coordinates, point in polygon testing, convex hull, intersection problems, range searching, space partitioning methods, 2D/3D triangulation, Delaunay triangulation, proximity problem, Voronoi diagrams, tetrahedral meshing, surface reconstruction, point clouds, volumetric data, mesh smoothing and simplification, linear programming.
Guarantor
Course coordinator
Language of instruction
Completion
Time span
- 26 hrs lectures
- 26 hrs projects
Assessment points
- 51 pts final exam (24 pts written part, 27 pts test part)
- 31 pts projects
- 18 pts homework
Department
Lecturer
Beran Vítězslav, doc. Ing., Ph.D. (DCGM)
Herout Adam, prof. Ing., Ph.D. (DCGM)
Španěl Michal, Ing., Ph.D. (DCGM)
Zemčík Pavel, prof. Dr. Ing., dr. h. c. (DCGM)
Learning objectives
- Student will get acquaint with the typical problems of computational geometry.
- Student will understand the existing solutions and their applications in computer graphics and machine vision.
- Student will get deeper knowledge of mathematics in relation to computer graphics.
- Student will learn the principles of geometric algebra including its application in graphics and vision related tasks.
- Student will practice programming, problem solving and defence of a small project.
- Student will learn terminology in English language.
- Student will learn to work in a team and present/defend results of their work.
- Student will also improve his programming skills and his knowledge of development tools.
Prerequisite knowledge and skills
- Basic knowledge of linear algebra and geometry.
- Good knowledge of computer graphics principles.
- Good knowledge of basic abstract data types and fundamental algorithms.
Study literature
- Csaba D. Toth, Joseph O'Rourke, Jacob E. Goodman: Handbook of Discrete and Computational Geometry, 3rd Edition, 2017.
- Mark de Berg, Otfried Cheong, Marc van Kreveld, Mark Overmars: Computational Geometry: Algorithms and Applications, 3rd. ed., Springer-Verlag, 2008.
- Leo Dorst, Daniel Fontijne, Stephen Mann: Geometric Algebra for Computer Science: An Object-Oriented Approach to Geometry, rev. ed., Morgan Kaufmann, 2007.
- Geometric Algebra (based on Clifford Algebra), http://staff.science.uva.nl/~leo/clifford/
- Suter, J.: Geometric Algebra Primer, 2003, http://www.jaapsuter.com/geometric-algebra.pdf
- Gaigen, https://github.com/Sciumo/gaigen
- Computational Geometry on the Web, http://cgm.cs.mcgill.ca/~godfried/teaching/cg-web.html
Fundamental literature
- Leo Dorst, Daniel Fontijne, Stephen Mann: Geometric Algebra for Computer Science: An Object-Oriented Approach to Geometry, rev. ed., Morgan Kaufmann, 2007.
- Mark de Berg, Otfried Cheong, Marc van Kreveld, Mark Overmars: Computational Geometry: Algorithms and Applications, 3rd. ed., Springer-Verlag, 2008.
Syllabus of lectures
- Introduction to computational geometry: typical problems in computer graphics and machine vision, algorithm complexity and robustness, numerical precision and stability.
- Overview of linear algebra and geometry. Why is it necessary to know this?
- Range searching and space partitioning methods: range tree; quad tree, k-d tree, BSP tree. Applications in machine vision.
- Coordinate systems and homogeneous coordinates. Applications in computer graphics.
- Point in polygon testing, polygon triangulation, convex hull in 2D/3D and practical applications.
- Collision detection and the algorithm GJK.
- Proximity problem: closest pair; nearest neighbor; Voronoi diagrams.
- Affine and projective geometry. Epipolar geometry. Applications in 3D machine vision.
- Triangulation in 2D/3D, Delaunay triangulation, tetrahedral meshing.
- Principle of duality and its applications.
- Surface reconstruction from point clouds and volumetric data.
- Basics and of geometric algebra. Quaternions. Applications in computer graphics.
- More computational geometry problems and modern trends. Linear programming: basic notion and applications; half-plane intersection.
Syllabus - others, projects and individual work of students
Team or individually assigned projects.
Progress assessment
- Preparing for lectures (readings): up to 18 points
- Realized and defended project: up to 31 points
- Written final exam: up to 51 points
- Minimum for final written examination is 17 points.
- Minimum to pass the course according to the ECTS assessment - 50 points.
The evaluation includes reading scientific articles, individual project, and the final exam.
Schedule
Day | Type | Weeks | Room | Start | End | Capacity | Lect.grp | Groups | Info |
---|---|---|---|---|---|---|---|---|---|
Fri | lecture | 1., 2., 3., 5. of lectures | D0207 | 12:00 | 13:50 | 30 | 1MIT 2MIT | NGRI NVIZ xx | Bařina |
Fri | lecture | 6., 9., 11. of lectures | D0207 | 12:00 | 13:50 | 30 | 1MIT 2MIT | NGRI NVIZ xx | Španěl |
Fri | lecture | 10., 12., 13. of lectures | D0207 | 12:00 | 13:50 | 30 | 1MIT 2MIT | NGRI NVIZ xx | Herout |
Fri | lecture | 2025-03-07 | D0207 | 12:00 | 13:50 | 30 | 1MIT 2MIT | NGRI NVIZ xx | Zemčík |
Fri | lecture | 2025-03-28 | D0207 | 12:00 | 13:50 | 30 | 1MIT 2MIT | NGRI NVIZ xx | Beran |
Fri | lecture | 2025-04-04 | D0207 | 12:00 | 13:50 | 30 | 1MIT 2MIT | NGRI NVIZ xx |
Course inclusion in study plans