TSBB15 Computer Vision

VT2022

This course ran the last time spring 2022. It has been replaced by TSBB33 and TSBB34.

Registration

If you intend to take the course but are not registered, make sure to register ASAP in Ladok, using the Student portal. You need to be registered on the course to receive course email, and to have results registered in Ladok. If you take the course but are not registered to any program at Linköping University, please contact the course examiner in order to make sure that you receive email about the course.

Course extent

This course is worth 12 ECTS credits, which corresponds to approximately 320h of work per student. The time is divided among the following activities:

   
*Lectures** 32h (16x2h)
*Computer lessons** 4h (2x2h)
*Computer exercises** 16h (4x4h)
*Written examination** 4h
*Seminars** 8h (2x4h)
*Own studies** 106h (approx.)
*Project work** 150h (approx.)

More details can be found in Studieinfo (the web interface to the Bilda course database).

People

We all have our offices in the B-building, ground floor. Teacher offices are in corridor D (rooms 2D:513 to 2D:527), assistant offices are in Visionen. We recommend the use of email to request meetings.

Literature

In the course we will use the following literature:

  1. Book: Richard Szeliski, Computer Vision: Algorithms and Applications, Springer Verlag (2nd ed. 2022). This book covers topics such as tracking, optical flow and image features. The book is available as an campus e-book via the LiU library. See also Book webpage.
  2. Book: Klas Nordberg, Introduction to Representations and Estimation in Geometry (IREG). This compendium covers only the 3D geometry part of the course.
  3. GIT: Other relevant literature, e.g. articles and masters theses can be fund in the TSBB15 GIT repository.

We have collected pointers to relevant literature in the column “Material” in both of the “Lecture and Lab schedules” below. These either refer to one of the two books above, or to an article in the TSBB15 GIT repository. There are also additional pointers that may be of use, e.g. to introductory videos and Wikipedia pages.

Examination

The course has a written examination and a mid-term exam. These are offered at the following occasions during 2022 (see Tentabokning):

Exam related questions may be asked in the Exam Q and A chat in the course teams group]. We will answer when we have time. Make sure to tag a teacher to get a response.

Old exams

See the page on previous exams for a selection of old exams given in the course.

How to use the old exams

We recommend that you use these exams as pointers into the literature (“instuderingsfrågor”). To answer the exam, read corresponding discussions in your notes, the course book, and the lecture slides. While it is faster to look at other people’s exam answers, this merely gives you answers, while reading and thinking also results in understanding.

Grades

Lecture and lab schedule

Activity Teacher Material
Lecture 1 Introduction to Computer Vision Per-Erik Slides for Lecture 1;
Edupack - orientation, section 1; Edupack - orientation2, section 1    
Computer lessons 1&2 Images in Python Johan Python lesson instructions Jupyter notebook
Lecture 2 Image Representations Mårten Slides for Lecture 2; Videos: Scale Space 1 - Introduction and Scale Space 2 - Linear Scale Space in the CVL Video Channel; Wikipedia: scale space;RNDF up to section 3.3; CVAA: 3.5 Pyramids and wavelets (optional); or GW: sec 7.1.1 p463 (optional); Groups and semi-groups are described in TOOL, section 1.3, and in the vides Groups-1-Intro and Groups-2-Examples in the CVL Video Channel; SLIC: a method for super-pixel formation; Video: SLIC superpixels on Youtube
;Lecture 3 The structure tensor Mårten Slides for Lecture 3; Videos: The Structure Tensor in the CVL Video Channel.; EDUPACK - orientation; Bigün & Granlund,
Optimal orientation detection of linear symmetry, ICCV 1987 (optional)    
Lecture 4 Motion estimation and optical flow Mårten Slides for Lecture 4; CVAA: 8.1 Alignment; Videos: MotionAnalysis-1-Intro in the CVL Video Channel
Lecture 5 Global motion estimation and tracking Mårten Slides for Lecture 5; CVAA: 8.4 Optical Flow; Lucas-Kanade tracking; Summary of Horn & Schunck’s optical flow method; Horn & Schunck’s paper on optical flow (optional); Shi & Tomasi’s paper on tracking (optional)
Computer Execercise 1 Tracking Preparationtime Derivation of LK tracking; CE1: The Harris detector and the LK Tracker
*Lecture 6** Clustering and learning Per-Erik Slides for Lecture 6; CVAA: 5.3 Mean shift and mode finding; CVAA 4.3.2: Hough Transforms; SHB: 16.5.1 Background modelling; (ML 16.6) Gaussian mixture models YouTube; (ML 16.3) EM algorithm YouTube; (ML 16.7) EM for GMM YouTube; An EM demo in Python
Computer Execercise 1 Tracking Johan CE1: The Harris detector and the LK Tracker; Derivation of LK tracking
Lecture 7 Overview of project 1: Tracking Per-Erik Slides for Lecture 7
Computer Execercise 2 Motion estimation Preparationtime CE2: Motion Estimation
Lecture 8 Local Features Per-Erik Slides for Lecture 8; CSCI 512: Lecture 12, SIFT YouTube; CVAA: 4.1 Points and Patches; Background geometry: IREG ch. 7-9,13
Computer Execercise 2 Motion estimation Johan CE2: Motion Estimation
Lecture 9 Biological Vision Systems Per-Erik Slides for Lecture 9
Lecture 10 Geometry recap, ML, and RANSAC Mårten Slides for Lecture 10; IREG: 10.3 (F), 12.6 (ML), 16.1.3 (opt.tri.), 17 (robust); CVAA: 6.1.4 (ransac); SHB: 10.2 (ransac); HZ: 4.7 (robust), 11.4 (geometric distances) ; IREG = Introduction to Representations and Estimation in Geometry, LiU compendium, Klas Nordberg; TOOL = Mathematical Toolbox for studies in Visual Computing at Linköping University, LiU compendium, Klas Nordberg; CVAA = Richard Szeliski, “Computer Vision: Algorithms and Applications” (2011). The book is available as an on campus e-book via the LiU library. See also Book webpage; SHB = Sonka, Hlavac and Boyle “Image Processing, Analysis, and Machine Vision” (Old course book); GW = Gonzalez and Woods, “Digital Image Processing”; HZ = Hartley and Zisserman, “Multiple View Geometry in Computer Vision” (2nd edition 2003). Available as e-book from LiU library; Wikipedia = Search wikipedia for the listed term; Edupack - orientation is a tutorial found here; EDUPACK2 = orientation2.pdf; RNDF = J. Weickert: A Review of Nonlinear Diffusion filtering, Scale-Space 1997

Lecture and lab schedule VT2

Activity Teacher Material
Lecture 11 RANSAC, Calibrated geometry and PnP Mårten Slides for Lecture 11; Solving the correspondence problem with RANSAC; IREG: 10.5 (E), 15.4 (PnP), 16.3 (E est.); SHB: 11.5 (two view geometry); HZ: 9.6 (E)
Seminar 1 Presentation of project 1 Per-Erik  
Lecture 12 Structure from motion, and Project 2 Per-Erik Slides for Lecture 12; IREG: 15.1,15.12 (3D alignment), 21 (SfM); CVAA: 6.1.5 (3D alignment), 7 (SfM)
Lecture 13 Multi-view Stereo Per-Erik Forssén Slides for Lecture 13; Y. Furukawa Multiview Stereo: A Tutorial
Lecture 14 Discrete Optimization Michael Slides for Lecture 14; CVAA: 3.7.2, 5.5; Survey article on DP and Graph Algorithms
Computer Exercise 3 Optimisation Preparationtime CE3: Optimisation; H&Z e-book
Computer Exercise 3 Optimisation Johan CE3: Optimisation; H&Z e-book
Lecture 15 Image Denoising and Enhancement Michael Felsberg Slides for Lecture 15; Videos: Scale Space-3-DiffusionEquation in the CVL Video Channel; Edupack - orientation
; RNDF: Pages 1-9,15-16    
Computer Exercise 4 Image Restoration Preparationtime CE4: Image Restoration
Computer Exercise 4 Image Restoration Johan CE4: Image Restoration
Guest Lectures Leif Haglund, Maxar Abdelrahman Eldesokey, Signality  
Seminar 2 Presentation of project 2 Per-Erik  

Projects

The two projects are conducted in groups of 5, 4 or 3 students (in order of preference). We aim for 3 project groups this year. Assignment into groups is made on the introductory lecture for project 1.

List of project groups VT2022

General resources

We suggest and allow you to use the following software:

Project repositories

Project code should be developed under versioning control, with changes tracked according to LiU-ID of the participating group members.

Hints and pitfalls

Based on experience from previous year’s projects, we have accumulated a list of hints and pitfalls for the projects. Read them carefully before starting your project work.