3D Scanning and Geometry Processing
|Lecturer:||Prof. Dr. Mario Botsch|
|Lecture:||Tue, 10-12, U2-135|
|Exercise:||Tue, 14-16, V2-229|
Following digital audio, images, and video, 3D models can be considered the next wave of digital multimedia. Virtual geometric models are ubiquitous in computer games, computer-generated movies, CAD systems, numerical simulation, and many other applications. In these fields, triangle meshes are the standard representation for geometric objects. Their conceptual simplicity enables highly efficient processing of geometric data sets.
In this course we discuss the geometry acquisition and processing pipeline: We start with different methods for 3D scanninig, which typically yield a large amount of sample points. This point cloud is subsequently converted into a triangle mesh. The resulting meshes then have to be optimized with respect to different quality criteria: Mesh smoothing removes noise, mesh simplification reduces the number of triangles while preserving the overall shape, remeshing improves the shape of triangles. Mesh parameterization computes a uv-layout for texturing the objects, and mesh deformation allows to change its geometric shape. Finally, mesh compression aims at compact storage of massive 3D models. Besides these methods we will also learn about some fundamental concepts in geometry processing, which are used in most of the approaches (e.g. discrete differential geometry, solving partial differential equations on a mesh).
Most of the techniques you only understand if you really try to use them, i.e., if you implement them. Our exercises therefore consist of a few mini-projects, where students can work on their own or in groups of 2-4 and implement the methods learned in the lecture. The overall goal is to scan, reconstruct, and "beautify" our faces.
Our tutors have consulting hours each week, where students can get help if they have trouble with the implementation. At the end of each mini-project, students will present their results in the exercise course.
- Basic knowledge of linear algebra is required.
- The programming exercises will be done in C++.
- Mario Botsch, Leif Kobbelt, Mark Pauly, Pierre Alliez, Bruno Levy: Polygon Mesh Processing, AK Peters, 2010.
Tentative Schedule & Slides
|Week||Lecture (Tuesday)||Exercise (Tuesday)|
|41||Introduction, 3D-Scanning||SurfaceMesh Intro|
|42||Surface Reconstruction||Scanning Session|
|43||Differential Geometry (HTML, PDF)||Exercise Code, Surface Reconstruction|
|46||Discrete Differential Geometry (HTML, PDF)|
|47||Delaunay Triangulations||Decimation & Remeshing|
|48||Decimation & Remeshing (HTML, PDF)|
|49||Mesh Smoothing (HTML, PDF)|
|50||Mesh Parameterization (HTML, PDF)||Mesh Smoothing|
|2||Mesh Fairing (HTML, PDF)||Parameterization|
|3||Mesh Deformation (PDF)|
|4||Non-Rigid Registration (PDF)|
|5||Compression (PDF) & Conclusion (PDF)|