Fundamentals of Computer Graphics

Teaching material for the course Fundamentals of Computer Graphics, 1st semester 2018, Sapienza University of Rome


Fundamentals of Computer Graphics

Course material

News

  • 23/06/2019: The final exam dates are from 15 Jul to 19 Jul 2019. Please contact me directly to fix the exact date and time, and remember to register on Infostud.

Logistics

Who: Prof. Emanuele Rodolà

When: Mondays 14:00-16:30 and Thursdays 08:00-10:30 (see the official schedule)

Where: Aula Alfa - Sociologia, via Salaria 113

Office Hours: Drop me an email at my-last-name-without-accent@di.uniroma1.it

Pre-requisites

Fundamentals of programming is a must-have, since there are coding assignments; there is no mandatory language, although lecture material will prefer Matlab. Linear algebra, calculus and numerical methods are nice-to-have, but not essential; the key concepts will be reviewed throughout the course.

Syllabus

The course will cover topics of 3D shape representation, analysis, processing, matching, and modeling. An emphasis will be put on discrete geometry processing algorithms with applications in computer vision and graphics. Shape rendering and visualization will also be touched upon. The course will start from scratch by reviewing the key mathematical concepts and will proceed step by step up to the most recent advances in the area. Invited lectures from prominent scientists in the field are also expected.

Text book and reading material

The lectures are not based on any text book in particular. Reading material suggested throughout the lectures is listed here:

  • [A15] Axler, “Linear algebra done right - 3rd edition”. Springer, 2015.
  • [BBI01] Burago, Burago, Ivanov, “A course in metric geometry”. AMS, 2001.
  • [POV] POV-Ray reference
  • [dC76] Do Carmo, “Differential geometry of curves and surfaces”. Prentice-Hall, 1976.

Grading

Grades for the midterm evaluation are available here.

The final project will be discussed in an oral examination, and may fall into one of these categories:

  • In-depth survey of a topic related to the syllabus
  • Coding assignment plus report

A non-definitive list of topics / coding projects is the following:

Lectures

Date Topic Reading Code & Data
       
Mon 24 Sep Introduction; Shape representation slides cat0.off ; load_off.m ; save_as_off.m ; calc_tri_areas.m ; calc_boundary_edges.m
       
Thu 27 Sep Metric geometry slides fps_euclidean.m ; voronoi_euclidean.m
       
Mon 01 Oct Euclidean embeddings slides sphere.off ; tr_reg_000.off ; geodesic distances for tr_reg_000.off
       
Thu 04 Oct Shape visualization I; Piecewise-linear approximation slides cat_partial.off
       
Mon 08 Oct Recap of linear algebra I slides ; [A15] bunny.off
       
Thu 11 Oct Assignment problems slides ; RL11 ; [BBI01] tr_reg_001.off ; tr_reg_002.off ; tr_reg_003.off ; bun000.off ; bun045.off
       
Mon 15 Oct Shape visualization II slides ; [POV] cat2.off ; load_mesh.inc ; save_mesh_povray.m ; demo.m ; render.pov
       
Thu 18 Oct Recap of linear algebra II slides ; [A15] tr_reg_010.off ; tr_reg_031.off
       
Thu 25 Oct Wrap-up slides dog0.off ; dog.sym.labels
       
Mon 05 Nov Midterm evaluation    
       
Thu 08 Nov Mesh processing I slides ; SC04  
       
Mon 12 Nov Regular surfaces slides ; [dC76]  
       
Thu 15 Nov Projects    
       
Mon 19 Nov Lengths and areas slides (pdf) ; slides (pptx) ; [dC76]  
       
Thu 22 Nov The gradient slides (pdf) ; slides (pptx)  
       
Mon 26 Nov The Laplace-Beltrami operator slides  
       
Thu 29 Nov Spectral geometry slides deadpool.off
       
Mon 03 Dec Paper reading: Functional maps paper  
       
Thu 06 Dec Heat diffusion slides ; SOG09 ; C05  
       
Mon 10 Dec Exercises slides ; MRCB18 calc_LB_FEM.m
       
Thu 13 Dec Talk: Isospectralization slides ; CPROBR18  
       
Thu 20 Dec Current and future perspectives RPWO18 ; WHOG14 ; RO13 ; RLBBS18 ; MBBV15  
       
  End