Introduction to Computer Vision 2018/2019
Mathieu Aubry, Karteek Alahari, Ivan Laptev, and Josef Sivic
Class time: Thursday 9:00 - 12:00
There will be four/five programming assignments representing 60% of the grade. The supporting materials for the programming assignments projects will be in Python.
The final project will represent 40% of the grade. Each project is based on a paper and a list of suggested papers is available here.
You are expected to understand and present the paper, but also to offer some added value, such as experiments of your own, new interesting tests with available code, or comparison with other relevant works. This will have to be adapted depending on the paper. You will have to present your project (10 minutes + questions) and return a short summary (2 pages max) of the essential points that should be readable (and useful) for the other students in the class.
You can discuss the assignments and final projects with other students in the class. Discussions are encouraged and are an essential component of the academic environment. However, each student has to work out their assignment alone (including any coding, experiments or derivations) and submit their own report. The assignments and final projects will be checked to contain original material. Any uncredited reuse of material (text, code, results) will be considered as plagiarism and will result in zero points for the assignment / final project. If a plagiarism is detected, the student will be reported to ENS.
Topic and reading materials.
Introduction, overview, image formation, digital photography
Low level Computer Vision, image correspondences and grouping
Image filtering: convolution, derivation, Canny,Bilateral Filter, Bilateral Filter and applications, Non-Local-Mean
Human color perception, color in computer vision, grouping in human perception
Segmentation: K-means, GMM, Mean shift
Feature detectors and descriptors, SIFT
Assignment 1 Due (Canny edges)
Markov Random Fields: optimization methods (graph-cuts, belief propagation, TRW-S), applications to stereo and segmentation
Human 3D vision/perception
Projective geometry, camera matrix
refs : Forsyth and Ponce "Geometric camera model" chapter
Szeliski chapter 2 "Image formation"
Assignment 2 Due (Mean Shift clustering)
camera calibration, multi-view reconstruction
Project choice due
Introduction to category-level recognition / Introduction to CNNs
analyzing CNNs, CNNs for object detection and semantic segmentation
Assignment 3 Due (camera calibration)
3D shape analysis (ICP, shape geometry, shape descriptors, CNN based)
Optical Flow: optical flow equation, Lukas-Kanade, Horn and Schunk, SIFT-flow, large displacement optical flow
Assignment 4 Due (MNIST recognition with NN)
Low-level video analysis: tracking, human segmentation and pose
High level video analysis, action recognition
Optional Assignment Due (Optical flow)
Overview of other/advanced topics
Intro to Computer Graphics
Project reports due
Final projects presentation
Final projects presentation
D.A. Forsyth and J. Ponce, "Computer Vision: A Modern Approach", Prentice-Hall, 2nd edition, 2011
J. Ponce, M. Hebert, C. Schmid and A. Zisserman "Toward Category-Level Object Recognition", Lecture Notes in Computer Science 4170, Springer-Verlag, 2007
O. Faugeras, Q.T. Luong, and T. Papadopoulo, "Geometry of Multiple Images", MIT Press, 2001.
R. Hartley and A. Zisserman, "Multiple View Geometry in Computer Vision", Cambridge University Press, 2004.
J. Koenderink, "Solid Shape", MIT Press, 1990
R. Szeliski, "Computer Vision: Algorithms and Applications", 2010. Online book.
Good and relevant lectures by other people (many slides are taken from them)
James Hays https://www.cc.gatech.edu/~hays/compvision/
Svetlana Lazebnik http://slazebni.cs.illinois.edu/spring18/
Derek Hoeim https://courses.engr.illinois.edu/cs543/sp2017/