TSBB33 3D Computer Vision

This course covers the algorithms and estimation problems used to infer 3D structure from images. The course covers both the mathematics used, and how these are put into practice in algorithm implementation. The course features two computer labs, and a 3hp project where groups of participants together will implement a structure from motion system. The project is presented both in written form and orally at a seminar. The course ends with a written exam on the theoretical content.

3D Reconstruction Flowchart

General Information

  • Course syllabus

    Course syllabus can be found in the Study guide.

  • Schedule

    The course schedule in TimeEdit.

  • Literature
    • K. Nordberg, Introduction to Representations and Estimation in Geometry (IREG). [Book webpage]
    • R. Szeliski, Computer Vision, Algorithms and Applications (CVAA).
      Available as an on-campus e-book via the LiU library. [Book webpage]
    • R. Hartley and A. Zisserman, Multiple View Geometry in Computer Vision (HZ), on-campus e-book
    • Additional material, including information about the exam, can be found in the course repository.
    • Another recent book that may interest you (we will not use this one in the course):
      K. Ikeuchi, Computer Vision, a Reference Guide, on-campus e-book.

People

Per-Erik Forssén
Lectures, Examiner
Mårten Wadenbäck
Lectures
Justus Karlsson
Supervisor
Cuong Le
Supervisor
Ioannis Athanasiadis
Supervisor, Labs
Johannes Hägerlind
Supervisor, Labs

Lecture Schedule VT2026

Below is an up-to-date list of all staffed lectures and computer labs.
Additional, unstaffed computer lab time can be found in TimeEdit.

Lectures and labs are given in rooms at the Department of Electrical Engineering.

Lectures are given in Systemet and Transformen, and the labs are given in Asgård, Vippan, Egypten, SU04, and SU24.

Note that the lecture slides that are linked in the schedule below are from last year. They will be updated after each lecture.

Date,Time,Room Activity Teacher Literature
March 30: 10.15-12
Systemet
Lecture 1
Introduction, 3D perception, local features
Per-Erik Forssén CVAA: 7.1
Background geometry: IREG ch. 7-9,13
March 31: 13.15-15
Systemet
Lecture 2
Cost minimisation, and robust error norms
Per-Erik Forssén K. Madsen, NL Least Squares Tutorial
Z. Zhang, Parameter Est. Techniques, Ch. 9.
April 7: 13.15-15
Transformen
Lecture 3
Maximum likelihood, RANSAC, cameras and epipolar geometry
Mårten Wadenbäck Multi-dim course, first half. Also IREG: 17.3 (RANSAC).
April 7: 15.15-17.00
Asgård
CE1
Non-linear optimization and gold standard
Unstaffed. CE1 Lab sheet
April 9: 8.15-10
Transformen
Lecture 4
Multiview stereo, correspondence fields, and triangulation
Per-Erik Forssén Furukawa MVS-tutorial, PatchMatch paper
IREG: 10.4, CVAA: 12.1, 12.3
Jump Flooding paper
April 13: 10.15-12
Systemet
Lecture 5
Structure from motion, bundle adjustment, and project start
Per-Erik Forssén IREG: 15.1,15.12 (3D alignment), 21 (SfM)
CVAA: 8.1.5, 8.3.1 (3D alignment), 11 (SfM)
April 14: 13.15-17.00
SU04
CE1
Non-linear optimization and gold standard
Ioannis Athanasiadis
Johannes Hägerlind
CE1 Lab sheet
April 16: 8.15-10
Systemet
Lecture 6
Absolute and relative camera pose, and minimal cases
Mårten Wadenbäck CVAA: 8.1.5, 11.2
IREG: ch. 15
April 17: 15.15-17
Asgård
CE2
Dense Correspondences with PatchMatch
Unstaffed. CE2 Lab sheet
Skeleton code
Cheatsheet notebook
April 21: 13.15-17
Asgård
CE2
Dense Correspondences with PatchMatch
Ioannis Athanasiadis
Johannes Hägerlind
CE2 Lab sheet
Skeleton code
Cheatsheet notebook
April 20: 10.15-12
Transformen
Lecture 7
Rotations in 3D
Mårten Wadenbäck IREG: ch. 11
April 28: 13.15-17
Asgård
CE1/CE2
Extra checkup.
Ioannis Athanasiadis
Johannes Hägerlind
May 11: 10.15-11
Systemet
Guest Lecture 1
Vantor, Linköping
Amanda Berg
May 11: 11.15-12
Systemet
Guest Lecture 2
Spiideo, Linköping
Ludwig Jacobsson
May 19: 13.15-17
Systemet
Final Seminar
Project presentations, exam discussion, and wrap up
Per-Erik Forssén

3D reconstruction project

Half the course consists of a 3D reconstruction project. The project starts on April 13, and ends with a final seminar on May 19. The project builds on top of the two computer exercises.

For more information see the project description page.