Scheda programma d'esame
3D GEOMETRIC MODELING & PROCESSING
PAOLO CIGNONI
Academic year2023/24
CourseCOMPUTER SCIENCE
Code758AA
Credits6
PeriodSemester 2
LanguageEnglish

ModulesAreaTypeHoursTeacher(s)
3D GEOMETRIC MODELING & PROCESSINGINF/01LEZIONI48
PAOLO CIGNONI unimap
Obiettivi di apprendimento
Learning outcomes
Conoscenze

Il corso inizia introduceendo le basi teoriche per il trattamento di superfici e forme 3D in matematica e informatica. Il framework dei complessi simpliciali e alcune basi di geometria e di topologia differenziale vengono presentate agli studenti sottolineando gli aspetti di queste discipline che hanno un forte impatto nelle applicazioni di computer grafica e di machine learning. Successivamente vengono descritte le principali strutture dati per la gestione delle rappresentazioni discrete di superfici e viene presentata una panoramica delle strutture dati per la gestione efficiente di query spaziali.

Su questa base vengono introdotti i principali algoritmi di geometry processing e le loro applicazioni pratiche.

Nella parte finale del corso si illustrano le connessioni di questi argomenti con le problematiche di machine learning per la gestione ed analisi di strutture tridimensionali. 

Durante il corso verranno svolte esercitazioni sugli argomenti trattati esaminando e presentando sia implementazioni di basso livello (C++) di strutture dati e algoritmi sia librerie Python che consentono la prototipazione rapida di applicazioni in grado di risolvere problemi geometrici complessi.

Knowledge

The course begins by laying the theoretical foundations for treating 3D surfaces and shapes in mathematics and computer science. The framework of simplicial complexes and the basics of differential geometry and topology are presented to students with a flavour oriented to computer graphics applications. Subsequently, the main data structures for the management of discrete representations of surfaces are described together with introduces an overview of data structures for the efficient management of spatial queries.

On this basis, the main geometry processing algorithms are introduced together with their practical applications.

In the final part of the course we will survey the connection of geometry processing with recent advances of  machine learning for 3D shapes.

During the course, exercises will be conducted on the topics discussed by examining and presenting both low-level (C ++) implementations of data structures and algorithms and python libraries that allow rapid prototyping of applications that can solve complex geometric problems.

Capacità

 

Alla fine del corso, gli studenti saranno in grado di utilizzare gli algoritmi di elaborazione della geometria e la struttura dei dati più appropriati per risolvere i problemi che possono sorgere durante la gestione di rappresentazioni di forme geometriche 3D. Il background teorico e la buona conoscenza delle proprietà geometriche delle superfici saranno utili per una migliore comprensione delle insidie e dei limiti che si possono incontrare nella gestione di problemi del mondo reale in cui sono coinvolte superfici e rappresentazioni 3D, come quella che si può incontrare in computer aided design, computer grafica interattiva e design industriale.

Skills

By the end of the course, the students will be able to use the most appropriate geometry processing algorithms and data structure to solve the problems that can arise when handling 3D  geometric shape representations. The theoretical background and the good knowledge of the geometrical properties of surfaces will be useful for a better comprehension of the pitfalls and limitations that can be encountered when handling real world problems where surfaces and 3D representations are involved, like the one that can be encountered in computer aided design, interactive computer graphics and industrial design.

 

Prerequisiti (conoscenze iniziali)

Prerequisites: Knowledge of linear algebra and calculus. 

Advisement recommendations: C++, Python

Prerequisites

Prerequisites: Knowledge of linear algebra and calculus. 

Advisement recommendations: C++, Python

Programma (contenuti dell'insegnamento)
  1. Basi di Geometria Differenziale e Topologia per Computer Graphics
  2. Rappresentazioni discrete per complessi simpliciali e strutture dati per indexing spaziale
  3. Algoritmi di Mesh Processing  
    1. Remeshing, Refinement & Simplification
    2. Parametrization and Texturing
    3. Fairing and Smoothing
    4. Surface reconstruction and Sampling
  4.  Geometry Representation for Deep Learning
Syllabus
  1. Basics of Differential Geometry and Topology for Computer Graphics 
  2. Discrete Representations for Simplicial Complexesand and Data Structures for Spatial Indexing
  3. Mesh Processing Algorithms 
    1. Remeshing, Refinement & Simplification
    2. Parametrization and Texturing
    3. Fairing and Smoothing
    4. Surface reconstruction and Sampling
  4. Shape Analysis and Representations for Machine Learning
Bibliografia e materiale didattico

Durante il corso verranno fornite slide, strumenti software, articoli scientifici e materiale didattico

Bibliography

During the course we will provide slides, software tools, scientific papers and other didactic material

Indicazioni per non frequentanti

Il materiale del corso è fornito durante la durata del corso stesso all'interno del team del corso in MS Teams.

Non-attending students info

The course material will be provided within MS Teams.  

Modalità d'esame

L'esame consisterà in una parte pratica (un progetto) e una parte teorica (un esame orale, dopo la consegna del progetto).

La parte pratica vale 20/30, mentre la parte teorica vale 10/30

Assessment methods

The exam will consist of a practical part (a project) and a theoretical part (an oral examination, after the delivery of the project).

The practical part is worth 20/30, while the theoretical part is 10/30

Updated: 02/11/2023 09:36