3D Scanning and Geometry Processing
Lecturer: | Prof. Dr. Mario Botsch |
Assistant: | Martin Komaritzan |
Lecture: | Tue, 10-12, V2-121 |
Exercise: | Wed, 12-14, V2-229 |
eKVV: | 392130 |
Credits: | 5 points |
Content
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 of the programming exercises is to scan, reconstruct, and optimize ourselves, based on the full-body scanner of our research group, to obtain a 3D-printable virtual clone.
Prerequisites
- Basic knowledge of linear algebra is required.
- The programming exercises will be done in C++.
Literature
- Mario Botsch, Leif Kobbelt, Mark Pauly, Pierre Alliez, Bruno Levy: Polygon Mesh Processing, AK Peters, 2010.
Tentative Schedule & Slides
Week | Lecture (Tuesday) | Exercise (Wednesday) |
---|---|---|
41 | Introduction (PDF), 3D-Scanning (PDF) | |
42 | Surface Reconstruction 1 (PDF) | Scanning Session |
43 | Surface Reconstruction 2 (PDF) |
Surface Reconstruction Exercise Code, SurfaceMesh Quick Reference, SurfaceMesh Intro Slides |
44 | Delaunay Triangulations (PDF) | |
45 | Decimation & Remeshing (HTML, PDF) | |
46 | Differential Geometry (HTML, PDF) | Decimation & Remeshing |
47 | Discrete Differential Geometry (HTML, PDF) | |
49 | Mesh Smoothing (HTML, PDF) | |
49 | Mesh Parameterization (HTML, PDF) | Mesh Smoothing |
50 | Mesh Fairing (HTML, PDF) | |
51 | Mesh Deformation | |
52 | Xmas holidays | |
1 | ||
2 | Template Fitting | Template Fitting |
3 | Shape Up | |
4 | Compression | |
5 | Conclusion | Conclusion |