TSBB15 Computer Vision VT2022
This course is given during the VT1 and VT2 periods. The course is planned to take place on campus.
Registration
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
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
People
- Per-Erik Forssén, lectures, examiner
- Michael Felsberg, lectures
- Mårten Wadenbäck, lectures
- Johan Edstedt, computer lessons, computer exercises, project guide
- Karl Holmqvist, project guide
- Pavlo Melnyk, project guide
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
Literature
In the course we will use the following literature:
- 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. - Book: Klas Nordberg, Introduction to Representations and Estimation in Geometry (IREG).
This compendium covers only the 3D geometry part of the course. - 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
Examination
The course has a written examination and a mid-term exam. These are offered at the following occasions during 2022 (see Tentabokning):- 2022-03-23, 14-18: voluntary mid-term examination for this years's students (KTR1).
- 2021-06-01, 14-18: Examination at end of course.
- 2021-08-16, 8-12: Re-examination opportunity.
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
- Details on grading can be found on the page for grading criteria.
Lecture and lab schedule VT1
Lecture and lab schedule VT1
- The course schedule for TSBB15 can be found in TimeEdit.
- A more detailed schedule for VT1, with reading material is given below.
The course content is similar to last year's course, so you may want to look there for details (e.g. slides). Updated slides for this year will be added below, after each lecture.
Date,Time,Room | Activity | Teacher | Material |
---|---|---|---|
Jan 19: 10.15-12 Systemet |
Lecture 1 Introduction to Computer Vision |
Per-Erik |
|
Jan 20: 13.15-17 ASGÅRD |
Computer lessons 1&2 Images in Python |
Johan |
|
Jan 21: 10.15-12 Zoom Meeting 619 7833 0323 |
Lecture 2 Image Representations |
Mårten |
|
Jan 26: 10.15-12 Systemet |
Lecture 3 The structure tensor |
Mårten |
|
Jan 27: 13.15-15 Systemet |
Lecture 4 Motion estimation and optical flow |
Mårten |
|
Jan 28: 10.15-12 Systemet |
Lecture 5 Global motion estimation and tracking |
Mårten |
|
Feb 1: 8.15-10 ASGÅRD |
Computer Execercise 1 Tracking |
Preparation time |
|
Feb 2: 10.15-12 Systemet |
Lecture 6 Clustering and learning |
Per-Erik | |
Feb 3: 13.15-17 ASGÅRD |
Computer Execercise 1 Tracking |
Johan | |
Feb 4: 10.15-12 Systemet |
Lecture 7 Overview of project 1: Tracking |
Per-Erik | |
Feb 8: 8.15-10 ASGÅRD |
Computer Execercise 2 Motion estimation |
Preparation time |
|
Feb 9: 10.15-12 Systemet |
Lecture 8 Local Features |
Per-Erik |
|
Feb 10: 13.15-17.00 ASGÅRD |
Computer Execercise 2 Motion estimation |
Johan | |
Feb 16: 10.15-12 Systemet |
Lecture 9 Biological Vision Systems |
Per-Erik | |
Mar 11: 10.15-12
Systemet |
Lecture 10
Geometry recap, ML, and RANSAC |
Mårten |
|
- 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
Lecture and lab schedule VT2
- The course schedule for TSBB15 can be found in TimeEdit.
- A more detailed schedule for VT2, with reading material is given below.
The course content is similar to last year's course, so you may want to look there for details (e.g. slides). Updated slides for this year will be added below, after each lecture.
Date,Time,Room | Activity | Teacher | Material |
---|---|---|---|
Mar 28: 10.15-12
Systemet |
Lecture 11
RANSAC, Calibrated geometry and PnP |
Mårten |
|
Mar 29: 13.15-16
Systemet |
Seminar 1
Presentation of project 1 |
Per-Erik |
|
Mar 31: 8.15-10
Systemet |
Lecture 12
Structure from motion, and Project 2 |
Per-Erik |
|
Apr 4: 10.15-12
Systemet |
Lecture 13
Multi-view Stereo |
Per-Erik Forssén |
|
Apr 5: 13.15-15
Systemet |
Lecture 14
Discrete Optimization |
Michael |
|
Apr 11: 10.15-12
ASGÅRD |
Computer Exercise 3
Optimisation |
Preparation time |
|
Apr 12: 13.15-17
ASGÅRD |
Computer Exercise 3
Optimisation |
Johan | |
Apr 21: 8.15-10
Systemet NB! new time. |
Lecture 15
Image Denoising and Enhancement |
Michael Felsberg |
|
Apr 25: 10.15-12 ASGÅRD |
Computer Exercise 4
Image Restoration |
Preparation time |
|
Apr 26: 13.15-17 ASGÅRD |
Computer Exercise 4
Image Restoration |
Johan | |
May 3: 13.15-15
Systemet |
Guest Lectures
|
Leif Haglund, Maxar Abdelrahman Eldesokey, Signality |
|
May 17: 13.15-16
Systemet |
Seminar 2
Presentation of project 2 |
Per-Erik |
|
Projects
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
-
Project 1: Object Tracking
Introductory lecture on February 4
Design plan due February 11
Report due March 25 (checked by guide before that)
Presentation seminar on March 29
-
Project 2: 3D Reconstruction
Introductory lecture on March 31
Design plan due April 6
Report due May 13 (checked by guide before that)
Presentation seminar on May 17
General resources
We suggest and allow you to use the following software:
- OpenCV
(Open Source Computer Vision). Version 3.4.3 is installed
on the department's Linux computers (first you need to issue the module add prog/opencv/3.4.3 command). See also the minimal example OpenCV progam (contributed by Gustav Häger).
Read the section on OpenCV in the hints and pitfalls page. There is a cheat sheet for OpenCV. An important exception is the Background modelling with mixtures of Gaussians, which you are NOT allowed to use (as you're supposed to learn this in the course). - Python with OpenCV bindings. Python 3.6.9 is installed in the computer labs. Essential libraries such as Matplotlib, NumPy, and SciPy are also available.
- VLFeat has a a useful code library, both for Matlab and C/C++. For example, it has an alternative implementation of SIFT, and also an implementation of MSER. Both are made by Andrea Vedaldi.
- The Visual Geometry Group at Oxford University maintains code for affine invariant region detectors, produced in cooperation with other groups.
- The Computer Vision Laboratory at ETH provides an implementation of SURF.
- An IDE, e.g. PyCharm community edition, which is installed in the computer labs after loading the right module (see module avail) (remember to say no to creation of a shortcut on /usr/local when you start pycharm).
Project repositories
Project code should be developed under versioning control, with changes tracked according to LiU-ID of the participating group members.
- Project groups should create their repositories in the LiU Git. Note: this is not GitHub, and GitHub should not be used.
- Project guides and examiner should be given "reporter" access to the group repositories.
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.