Elective in Artificial Intelligence · 3 CFU module

Spatial AI

How machines perceive, reconstruct, and reason about the 3D world — from classical geometry and image formation, through modern neural rendering (NeRF and 3D Gaussian Splatting), to lifting semantics into 3D and agents that act through world models.

Credits
3 CFU
Hours
~36 h
Level
MSc AI and Robotics
Language
English
Semester
A.Y. 2026/27First period
October – mid November
About this module

This module follows a single thread: turning 2D observations into structured, queryable, and actionable 3D. We begin with how images are formed and the classical ways of representing 3D geometry, move through depth estimation and multi-view reconstruction and state estimation (Structure-from-Motion and SLAM), and then into the neural rendering methods: volumetric fields, NeRF, and 3D Gaussian Splatting, that now define the field.

The final weeks lift language and semantics into these 3D representations for open-set queries, and connect perception to action through active perception and world models. Teaching combines lectures with hands-on practicals: PyTorch3D, COLMAP, NeRFStudio, language-embedded Gaussians, and a DreamerV3 agent, and the module is assessed through a short quiz and an end-to-end group project. It is one module of the 12 CFU Elective in Artificial Intelligence.

Learning outcomes
  • Represent 3D scenes with point clouds, meshes, voxels, implicit fields, and Gaussians, and reason about the geometry of image formation.
  • Reconstruct geometry from images: monocular and multi-view depth, Structure-from-Motion, and SLAM.
  • Build and train neural rendering pipelines: volume rendering, NeRF, and 3D Gaussian Splatting, and weigh their trade-offs.
  • Lift 2D semantics into 3D for open-set queries, and connect perception to action with active perception and world models.

What you will learn

A few glimpses of what we will build together. These are only a taste of what the module covers.

Mesh vs Rendering

The same office scene reconstructed two ways: a classical mesh and rendering (3D Gaussian Splatting). Drag the slider to wipe between them.

MrHash

Open-vocabulary 3D mapping

Lifting language into the map: the robot is given an object described in free-form text and actively explores to find and map it, deciding where to look next from open-vocabulary semantics.

MTT

Active localization

Choosing where to look to localize reliably: your robot should see only places that help it localize! Selecting viewpoints that maximize camera pose-estimation accuracy.

ActLoc

Logistics

Lectures
3 days / week
Days · 00:00–00:00 TBD
Room
Room TBD
Via Ariosto 25
Office hours
By appointment
Day · time TBD

Teaching staff

Emanuele Giacomini
Emanuele Giacomini

Schedule

Six weeks, three sessions per week, with a hands-on practical each week. Slides are linked as PDF after each lecture. SCHEDULE CAN BE SLIGHTLY CHANGED.

#
Date
Topic
Slides
Suggested Reading
Practicals
Week 1 · Foundations & 3D representations
01
TBD
Introduction & course overview
02
TBD
3D representations
03
TBD
Image formation
PyTorch3D
Week 2 · Reconstruction: depth, SfM & SLAM
04
TBD
Single-view 3D (depth) & LiDAR completion
05
TBD
Multi-view depth estimation & MVS
06
TBD
Structure-from-Motion & SLAM
Synthetic SfM in Python · Home: COLMAP + a neural pipeline on 5 images
Week 3 · Neural rendering I: fields & NeRF
07
TBD
Volume rendering
08
TBD
Neural Radiance Fields (NeRF)
09
TBD
Neural implicit rendering
Week 4 · Neural rendering II: Gaussian Splatting
10
TBD
Differentiable primitive rendering
11
TBD
Neural appearance modelling
12
TBD
3D Gaussian Splatting with NeRFStudio
3DGS with NeRFStudio (fill in a slow Python rasterizer)
Week 5 · Semantics in 3D
13
TBD
Lifting 2D semantics into 3D (feature / semantic fields)
14
TBD
Semantics on explicit primitives (language-embedded Gaussians)
Language head on your 3DGS scene (LangSplat / CLIP distillation)
15
TBD
From scenes to agents: open-set mapping & 3D scene graphs
Week 6 · Action & world models
16
TBD
Active perception: from passive to active
17
TBD
World models: predicting the consequences of action
DreamerV3 on a control task (visualize imagined vs. real rollouts)
18
TBD
Closing the loop: prediction-driven action & the generative frontier

Grading & exam

Quiz · 13 questions10 pts
Group project20 pts +3 bonus
Exam format

Assessment has two parts: a quiz (13 questions, max 10 points) and a group project built on the practical sessions (max 20 points, plus up to +3 bonus for reimplementing something from a paper method or a top-3 leaderboard finish).

The quiz is held on the last day of lessons, with further sittings in the standard exam sessions. The project can be presented in a 10-minute talk at the end of December or during standard exam sessions.

This grade counts toward the overall mark of the 12 CFU Elective in Artificial Intelligence.