Introduction to Computer Vision
    CSC 589, Spring 2015

Time: MT 11:45am - 1pm
Place: SCAN 157

Instructor: Prof. Bei Xiao
  course syllabus: Syallbus
  office: SCAN 110
  office hours: Monday 3pm-4:15pm, Thursday 2pm-3pm


  Lectures Projects Class Resources  


The goal of computer vision is to acquire, modify, analyze, understand images, videos and any high-dimentional data from the 3D world. This course is an introduction to current algorithms used in computer vision and computational photography (automatic image editing and manipulations). We will start from low-level image processing (edges), and then move to mid-level feature analysis (texture, color, motion), and eventually to high-level image and video understanding (objects, faces, scene, human activity). The topics include basic image processing and image analysis, camera models, texture synthesis, motion analysis, automatic image editing, object and scene recognition, face and pose recognition and a gentle survey of machine learning methods for computer vision. Students will learn the state-of-the art tools in computer vision and will acquire hands-on experience with image manipulations. We will use Python as our primary programming tool in this course. Codes written in MATLAB might be demoed if needed. Working models of computer vision will be demoed in class and homework will be programming exercises with tools such as Numpy, SciPy, and OpenCV.

Prerequisites

This course will be self-contained; students do not need to have computer vision background. However, the following are recommended:

  • Working knowledge of Python/MATLAB/C++
  • Linear algebra
  • Vector calculus
  • Strong interests in working with images, vidoes, and multimedia

Demo Codes

Since we are one of a few courses that use Python to do computer vision. I encourage every student to use Gihub to share their codes with the public (after projects are due) and download in-class demos from my respositories.


Please send the instructor email or speak to me if you are unsure of whether you can take the course.

Textbook

This course will have readings from Computer Vision: Algorithms and Applications (online), by Richard Szeliski.

We will also use the following book as reference: Computer Vision with Python. O'Reilly,

Grading Policy

60% homework projects(read late policy), 15% mid-term exam, 20% Final project, 5% attendances including quizzes (three class absences = 0% attendance).

    Homework Late Policy
  • Assignments are due midnight of the due date
  • 5 free late days for homework only (not final project) use them in your ways;
  • After you have finished using all of your late days, there is a 25% off per day late penalty;
  • No submission is accepted after 3 late days per homework (zero points);
  • All homeworks must be submitted via Blackboard. Homeworks submitted to instructor's email box will not be looked at
Online Discussion

This class uses Piazza for discussion and questions. Please sign up here: piazza.com/american/spring2015/csc589
Annoucements and grades will be posted on blackboard.

Academic Integrity Policy

Projects are to be done either individually or in groups of two, as specified in the project description. You may collaborate on the whiteboard, but each group's code must be their own. Please refer to American University's Academic regulations for more information regarding academic integrity. No copying of code from other classmates (other than team members) or from sources on the internet. If you want to use an existing function or implement algorithms from a paper, please cite the resources.