6 EC
Semester 2, periode 5
5082ITCV6Y
| Eigenaar | Bachelor Kunstmatige Intelligentie |
| Coördinator | Dimitris Tzionas |
| Onderdeel van | Bachelor Kunstmatige Intelligentie, jaar 2 |
We see in order to move; we move in order to see [William Gibson]. Seeing and perceiving the world is vital for everyday life. For humans and animals this perceptual capability seems effortless, as it has been “baked” into them through biological evolution. However, endowing computers with similar capabilities proves to be hard. In this course we discuss computational models for computer vision and how these can be implemented as working programs.
In this direction, we convert digital images based on pixels into "visual features", and then process these features for classifying images into categories, tracking the depicted objects, or reconstructing them in 3D. For converting pixels into features we use mathematical models of the local structure and color of images, ideas from the human visual system, the camera's imaging process, and computationally efficient algorithms. For computer vision we use classic tools, such as linear algebra and Taylor series of multi-dimensional functions (i.e, images), or more advanced ones, such as convolutional neural networks. In more detail, we will discuss the following topics:
We implement the above models as working programs on computers, apply them on images and get results.
In this course you will use skills acquired through the "Linear Algebra" course and the "Calculus and Optimization” course. You will also need prior hands-on experience in computer programming.
In Hoorcollege (HC) the tutors will introduce some key concepts per week.
In Laptopcollege (LC) the students will work on weekly assignments on the topics discussed in HC, with the help of TAs (1 TA will be helping a group of ~20 students).
The Werkcollege (WC) is the last slot of every week; this is the opportunity for students to do extra practice and ask questions to the tutor.
|
Activiteit |
Uren |
|
|
Hoorcollege |
24 |
|
|
Laptopcollege |
26 |
|
|
Tentamen |
3 |
|
|
Werkcollege |
8 |
|
|
Zelfstudie |
107 |
|
|
Totaal |
168 |
(6 EC x 28 uur) |
Aanwezigheidseisen opleiding (OER-B):
Aanvullende eisen voor dit vak:
- HC attendance is highly encouraged, but not mandatory (lectures are recorded for offline preview).
- WC attendance is highly encouraged, but not mandatory (this is extra practice, only in class activities, not recorded).
- LC attendance is mandatory. For any issue, the first point of contact is the TA. For more important issues, the point of contact is the "senior team" and/or the "study advisor" (depending on case).
For missing a class, the general rules of the BSc program apply; please contact the "study advisor" for questions.
| Onderdeel en weging | Details |
|
Eindcijfer | |
|
20% Python assignments | |
|
1 (14%) Python assignment week 1: Equalization and Interpolation | |
|
1 (14%) Python assignment week 2: Geometric Transformations | |
|
1 (14%) Python assignment week 3: Convolutions and Local Structure | |
|
1 (14%) Python assignment week 4: SIFT & RANSAC | |
|
1 (14%) Python assignment week 5: Pinhole Camera | |
|
1 (14%) Python assignment week 6: CNN | |
|
1 (14%) Python assignment week 7: Motion | |
|
60% Exam grade | Moet ≥ 5 zijn |
|
20% Theorievragen | |
|
1 (14%) Theorievragen week 1 | |
|
1 (14%) Theory Questions Week 2 | |
|
1 (14%) Theory Questions Week 3 | |
|
1 (14%) Theory Questions Week 4 | |
|
1 (14%) Theory Questions week 5 | |
|
1 (14%) Theorievragen week 6 | |
|
1 (14%) Theorievragen week 7 |
- The grade for weekly assignments must be >=5.
- The grade for the final exam must be >=5.
- The overall grade (40% of weekly grade and 60% of final exam grade) must be >=5.5.
In HC slots there will be in-class activities (WooClap with UvAnetID) to encourage attendance and engagement. The max accumulated bonus grade is 0.5 for the full course spread out over all activities, and will count only if all above 3 criteria are met.
Out of N weekly assignments, only the top N-1 are considered for grading.
Students that re-take the course still need to (newly) submit weekly assignments (irrespective of last year's grades).
Announcement through Canvas for weekly-assignment results, and final-exam results (incl. resit).
Inspecting the assessed work is possible with the help of the TA of each student group.
Any discussion on grading needs to take place through ANS (except for CodeGrade assignments).
Weekly assignments include theory and programming tasks.
Students work in pairs of two, and also submit in pairs.
Coding assignments are submitted on CodeGrade -- which also facilitates semi-automatic grading.
Theory assignments are submitted on ANS.
The TA of each LC group does the grading for both coding and weekly assignments for the (roughly 20) students in their group.
For any corrections (in a window of max 2 weeks after grade release), the first point of contact is the TA for quick resolving.
Dit vak hanteert de algemene 'Fraude- en plagiaatregeling' van de UvA. Hier wordt nauwkeurig op gecontroleerd. Bij verdenking van fraude of plagiaat wordt de examencommissie van de opleiding ingeschakeld. Zie de Fraude- en plagiaatregeling van de UvA: http://student.uva.nl
| Weeknummer | Onderwerpen | Studiestof (rule of thumb) |
| 1 | Histograms & Interpolation | - E-notes - Image Processing - Ch1 Images - E-notes - Image Processing - Ch3 Point Operators - Slides |
| 2 | Homogeneous Coordinates & Geometric Transforms | - E-notes - Image Processing - Ch4 Geometrical Operators - E-notes - Math Tools - Ch5 Homogeneous coordinates - Slides |
| 3 | Local Operators & Structure | - E-notes - Image Processing - Ch5 Local Operators - E-notes - Image Processing - Ch6 Local Structure - Slides |
| 4 | SIFT | - E-notes - Image Processing - Ch7 Scale Space - SIFT paper - Slides |
| 5 | Onderwijsvrije week | Onderwijsvrije week |
| 6 | Camera | - E-notes - Computer Vision - Ch1 The Pinhole Camera - E-notes - Computer Vision - Ch2 Stereo Vision - Slides |
| 7 | CNN | - E-notes - Computer Vision - Ch4 Convolutional Neural Networks - Slides |
| 8 | Motion | - E-notes - Computer Vision - Ch3 Images in Motion - Slides |
The above is rule of thumb. Any refinement of the above will be published on Canvas -- please use Canvas as the main source.
E-notes: https://rvdboomgaard.github.io/ComputerVision_LectureNotes/index.html
Slides: Uploaded on Canvas after HC slots.
The typical submission deadline for the weekly assignments released each week, is Monday 12:00 of next week. That is, 1h before the first HC lecture that introduces a new topic.
We integrated many suggestions from last year. Non-exhaustive list:
- Formative (non-graded) assessment for training. We use WooClap.
- Extra practice (for non-programming tasks) in WC slots.
- Deadlines for weekly assignments are consistent across the course, and after the weekend.
- HC slots: We use only the laptop and don't use the whiteboard, as it is not captured in video recordings.
- LC slots: We hint at a few representative hidden tests (without explicitly giving them away) through discussion led by TAs or WooClap activities in LC. We collect feedback for cases where tests can be improved (for next year).
- LC slots: We added minimal slides (so they don't add big overhead) to help guide the activities. These are created bottom-up by volunteer TAs that experienced the course as students in the past, so they know better the student's point of view.
- Assignments: This year LaTeX for weekly assignments compiles without problems on VS Code.
- Assignments: We refine the written formulations of exercises (when necessary), as sometimes they were perceived as too vague.
- Canvas page: This year we provide course information early, eg. the study material for each week (with a gentle disclaimer for refinement in case there are time restrictions during HC).
- Slides: We create (many) more new slides. Students liked last year's new visual examples for intuitions.