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 such as point clouds, triangle meshes and implicit surfaces for tasks involving geometric data
- compute geometric and differential geometric properties of triangle meshes
- use tools from linear algebra for reconstruction and manipulation of surfaces
- polygonize implicit surfaces
- simplify, optimize, and remove noise from 3D triangle meshes
- perform spectral analysis of triangle meshes using the Laplace-Beltrami operator and apply it to smoothing, parametrization and more
- detect and classify features in point clouds and register point clouds
- triangulate 2D point sets using Delaunay triangulation
- reconstruct triangle meshes from 3D point clouds
- compute basic topological features such as genus from polygonal meshes
- represent 3D surfaces as skeletons or medial surfaces
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.
– Geometric and 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 scattered data interpolation. Representation of surfaces as implicit surfaces or height maps via basis functions.
– Approaching geometry processing and analysis through programming.
– The use of methods from linear algebra such as linear system solving (including the Singular Value Decomposition) for tasks in geometry reconstruction and manipulation.
– Computation of topological characteristics using the Euler-Poincare formula.
– Using computer graphics to make geometric data more accessible.
Possible start times
- 36 – 49 (Thurs 13-17)
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.




