CSCI 5561 Computer Vision (Spring 2014)
02:30 P.M. - 03:45 P.M., M,W (01/21/2014 - 05/09/2014), KHKH 3-125
Instructor: Volkan Isler (Office hours: 3:45 - 4:30 M & W)
Lab sessions will be held in Lind Hall 40 on Wednesdays during regular class hours, starting second week.
TA: Pratap Tokekar (Office Hours: Tuesday 12:00 P.M - 13:00 P.M. KHKH 2-140B)
Please use the address csci5561-help@cs for course
related emails (this alias forwards to isler and tokekar.)
The primary goal of this course is to introduce students to computer
vision -- how to make computers make sense of images!
Traditionally, computer vision is studied in a bottom up fashion. At
the lowest level, images are processed to obtain simple features
(e.g. corners, edges). Then comes geometry in which these features are
used to build 3D models of the environment. Next up is mid-level
vision in which features are grouped into segments or other salient
regions. At the highest level is the big problem of object
It is impossible to cover all aspects of computer vision in
depth in a single course. However, after taking this course, you will:
Learn about basic tools and techniques for designing (and analyzing)
computer vision algorithms
Become familiar with active research challenges in vision
Gain hands-on experience in building vision systems
Topics Covered and Text Book
There is no required textbook for the course. The recommended textbook course is
Computer Vision: A Modern Approach by
Forsyth and Ponce (2nd Edition).
We will start with cameras (chapters 1) and continue
with local features (Ch. 4-6), Then cover projective geometry, stereo and structure from motion (chapters 7 and 8). Next we will cover Segmentation and Grouping (Chapters 9 and 10) and selected topics from High Level Vision.
While we will follow the
book for most of the time, we will also use Introductory Techniques for 3-D Computer Vision by Trucco
and Verri, and Multiple View Geometry in Computer Vision by
Hartley and Zisserman for some of the topics. These books are
not required. They are on library reserve for this course. I will make my notes
available. There are some excellent resources online, including books by Rick Szeliski and Simon. Prince.
You need to be familiar with basic concepts in calculus (Math 1271/1371) , linear
algebra (Math 2243), and discrete math (CSci 2011). If you have not taken
equivalents of these courses, you need permission from the instructor.
Homework and Lab session will be based on MATLAB. Previous courses in AI and Robotics are
useful but not required.
We will cover a relatively large range of topics which rely on various
backgrounds. As a result, at times, you might find that the
current topic is quite challenging (or rather basic). For example,
dynamic programming may be easy to grasp for a student who has taken
advanced algorithms courses. The same student may find projective
geometry quite challenging.
Here are some tips that you might helpful:
Do not rely on a single source to learn the material. If the
topic in one book does not make sense,
do not hesitate to review other books, or even basic texts
such as your linear algebra textbook. If you need guidance, do not hesitate
to talk to your instructor or the TA. There are excellent resources online.
Learn from each other. The diversity of this class is a big asset.
Work regularly. As the list of topics is quite diverse, make sure that
you review the material in a timely fashion.
Evaluation will be composed of the following components:
- Class Participation (20%): In addition to lectures, we will have lab sessions including quizzes.
Lab sessions will be
held in Lind 40 on Wednesdays starting second week.
- Homework (30%): Three assignments. Important: The assignments will require writing (lots of!) matlab code. If you haven't used Matlab before, it's
to start familiarizing yourself! Additional links on obtaining a
copy of Matlab and getting started are posted here.
- Course Project (30%): More about the project will be on the project page.
- Term Paper and Presentation (20%). Details here.
93.0% or above yields an A,
86% = B+,
82% = B,
78% = B-,
74% = C+,
70% = C,
67% = C-,
63% = D+,
60% = D,
and less than 60% yields an F.
Other grade related issues: Late submissions are not allowed. Questions about a specific mark should be raised within 10 days after the mark is given.
Incompletes (or make up exams) will, in general, not be given. Exceptions will be considered only when a
provably serious family or personal emergency arises, proof is presented, and the student has already completed all
but a small portion of the work.
Scholastic misconduct is broadly defined as "any act that violates the right of another student in academic work or
that involves misrepresentation of your own work. Scholastic dishonesty includes, (but is not necessarily limited
cheating on assignments or examinations; plagiarizing, which means misrepresenting as your own work any part of work
done by another; submitting the same paper, or substantially similar papers, to meet the requirements of more than one
course without the approval and consent of all instructors concerned; depriving another student of necessary course
materials; or interfering with another student's work."
Important: MATLAB should make your life easy but should not do
the homework for you! You are welcome to use standard matrix
functions, or utilities to read and write images, but when, e.g., the problem
asks you to implement an edge detector, you should not use built-in
edge detection functions. When in doubt, just ask. Using
implementations off-the-web or elsewhere in homeworks yields an