Geometric Data Analysis and Processing
Overall Course Objectives
The aim of this course is to prepare students for problems that require dealing with geometric data such as point clouds, triangle meshes, or surfaces given implicitly as iso-contours of scalar fields. Such problems include cleaning and merging data from optical scanners, modeling surfaces from scattered points, generating geometry algorithmically, and meshing for FEM simulation. Informed by this larger goal, the immediate objectives are to familiarise students with representations for geometric data and to introduce a range of algorithms for processing geometric data, converting between representations, and visualising geometric data.
The practical work consists of weekly assignments solved in Python.
See course description in Danish
Learning Objectives
- select and use surface representations for tasks involving geometric data
- compute differential geometric properties using the Laplace Beltrami operator for triangle meshes
- polygonize implicit surfaces
- represent functions on meshes using basis functions and perform interpolation
- simplify polygonal meshes
- smooth and remove noise from polygonal meshes
- register point clouds
- triangulate 2D point sets using Delaunay triangulation
- parameterize 3D surfaces
- use the volume representation to process geometric data
- use computer graphics to visualize geometric data effectively
Course Content
The following topics are discussed:
– Several surface representations, for instance, meshes, distance fields (signed and unsigned), skeletal and medial representations, tetrahedral and hexahedral grids, point clouds, etc.
– Spectral analys of triangle meshes using methods that are analogous to Fourier analysis.
– Differential geometry properties of discrete surface representations.
– Primitive operations on meshes.
– Simplification and optimization of meshes.
– Registration of point clouds using the ICP method.
– Triangulation and manipulation of triangulations.
– Basis functions and of scattered data.
– Approaching geometry processing and analysis through programming.
– Using computer graphics to make geometric data more accessible.
Recommended prerequisites
01002/01004/01005/01006/02002/02631/02632/02633, Knowledge of a programming language such as Python and a good understanding of basic calculus and linear algebra including eigenvalue problems. Knowledge of Fourier series (introduced in Advanced Engineering Math 2) is an advantage.
Teaching Method
Lectures and databar exercises.