===== Syllabus ===== ==== Description ==== This course introduces the fundamental concepts of computer vision, with a balance of theory and practical application. Specific topics: * Introduction * Image formation * Image processing * Feature detection & matching * Segmentation * Dense motion estimation * Feature-based alignment * 3D - motion * 3D - stereo * 3D - single view * Recognition ==== Prerequisites ==== General prerequisite; LE/EECS 2030 3.00 or LE/EECS 1030 3.00; SC/MATH 1025 3.00; SC MATH 1310 3.00, LE/EECS 2031 3.00. (NOTE: The General Prerequisite is a cumulative GPA of 4.50 or better over all major EECS courses. EECS courses with the second digit "5" are not major courses.) It also is recommended that students enter this course with a good working knowledge of the calculus of several variables and linear algebra. Familiarity with linear systems theory (e.g., EECS 3451, formerly COSC 4451 and CSE 3451), comfort with elementary manipulation of complex variables and previous experience equivalent to a university level introduction to physics course also would be of value. If in doubt, then consult with the instructor. The primary software environment used for this course will be MATLAB. ==== Instructor & TAs ==== == Instructor == * [[http://www.yorku.ca/jelder|James Elder]] * Office: LAS 003G * Office hours: W 11:30AM-12:30PM * Email: jelder@yorku.ca == Teaching Assistant == * [[https://karaimer.github.io/|Hakki Karaimer]] * Office: LAS 2052 * Office hours: Changed as of Nov 7 to Th 11:00AM - 12:00PM * Email: hakkicankaraimer@gmail.com ==== Textbooks ==== The required textbook is: Computer Vision Algorithms and Applications, Richard Szeliski, Springer, 2011. * Hardcopy: available at the York Bookstore; one copy is on reserve at the Steacie Library. * [[http://szeliski.org/Book/drafts/SzeliskiBook_20100903_draft.pdf|Online version]] * [[https://sites.google.com/site/szeliskijp/book/eratta|Errata]] Supplementary (Optional): * Multiple View Geometry in Computer Vision, Hartley R & Zisserman A, 2004 * Pattern Recognition and Machine Learning, Bishop CM, 2006 * [[http://www.computervisionmodels.com/|Computer Vision: Models, Learning and Inference, Prince SJD, 2012]] ==== Lectures ==== * MW 10:00AM - 11:30AM in Calumet 106. * Students are responsible for all material covered in lectures. * Lecture slides will be posted incrementally on this website. ==== Assigned Readings ==== * Assigned Readings: Students are responsible for all material assigned as reading in the textbook; see the Schedule link on the side bar to this page. ==== Labs ==== * Six two-hour labs held in Bergeron 211. * 4pm-6pm on selected Mondays - see schedule. * Laptop-based: please bring your own laptop, or sign one out from the lab monitor in LAS 1006. See https://wiki.eecs.yorku.ca/dept/tdb/services:loaner-laptop for more information. * Desks do not have power - please make sure laptop batteries are fully charged or bring a long power cable to plug into the wall. * Primary software environment: MATLAB. York now has a site license - please see https://matlab.info.yorku.ca/ for information on how to install MATLAB on your machine. * The TA will be present at each lab to provide demonstrations and guidance. * Students are responsible for all material presented in labs. * Labs 1, 2, 4 and 5 will be associated with the four short assignments (see below). * Lab 3 will be used to help students prepare for the midterm. * The final lab will be used to demo projects and to discuss project reports. ==== Assignments ==== * There will be four short assignments that include theory and coding questions * Due dates can be found on the schedule page. ==== Midterm ==== * In class, closed book. * Lab 3 will be used to help students prepare. ==== Project ==== * Students will complete a project involving the implementation of one or more computer vision algorithms of their choosing. * Details can be found on the project page. ==== Course Learning Outcomes ==== * Explain the basic terms, concepts and applications of computer vision. * Apply basic mathematical techniques to solve problems in computer vision. * Develop software to solve problems in computer vision. ==== Grading ==== The weight distribution of the course components is as follows: * 30% - 4 assignments, 7.5% each. * 30% - Midterm exam * 40% - Project * 10% - Proposal * 10% - Presentation/Demo * 20% - Final Report