This course provides an overview of Computer Vision – enabling computers to understand visual input. The course introduces the major concepts and methods, and gives you a sample of problem settings and techniques for solving them. It is intended for those who want to get an understanding of how computer vision works and how it can perform such diverse tasks as object recognition, robot navigation, and increase situational awareness. The course has strong ties between theory, examples of its application, and practical exercises in order to promote fast and persistent learning.
The course is intended for students with a basic proficiency in linear algebra and a programming language. Example courses at NPS: MA2043 or MA3042
What tasks do you need to master in order to achieve the overall course goal? Upon successful completion of this course, you will be able to:
The course covers a wide range of ESR subjects as it spans the entire gamut from theory to working application. Students apply mathematical theory and concepts (ESR paragraph 1) as well as important algorithms (ESR paragraph 4) to solve data analysis and data modeling problems. Large data volumes and tight network bandwidth restrictions help develop the students’ systems skills and programming knowledge (ESR paragraphs 2 and 3). Image data handling and storage and video compression teach the students proficiency in core computer science technologies including algorithms, data structures, and software engineering (ESR paragraph 4).
Automated video analysis is of ever-increasing importance to the military, with applications ranging from base protection and surveillance to unmanned system operations and intelligent systems (ESR paragraph 4). In various class projects, students exercise ”innovation, problem solving, systems thinking,” and tangible results ensure the ”real world applicability” (ESR paragraph 5).
Take a look at the Contents on the following pages to get an idea of the syllabus. Computer vision is a “hot topic” and rapidly evolving, so expect several modifications that reflect recent developments and advances. Every chapter is a learning module with specific learning objectives, reading and study material, exercises, and graded assignments.
Reading assignments are from various textbooks, see :
SZ = Szeliski
BK = Bradski & Kaehler,
SS = Shapiro & Stockman,
BB = Ballard & Brown,
DIP = Gonzalez & Woods (Digital Image Processing),
DIPuM = Gonzalez et al. (Digital Image Processing using Matlab).
The reading report is due before class on the following Monday. For example, the first chapter is to be read in the week of 09/27 and you have to hand in the reading report before class on 10/04. Note that this is a preliminary schedule for the quarter: the most up-to-date and authorative information is on Sakai.
| Week | Date | Modules | Topic | Reading | Assignments (due date) |
| 1 | 09/27 | 1, 2 | Introduction to Computer Vision, Pixel Operations | SZ1.1, SZ3.1 | 10/01: Matlab intro |
| 2 | 10/04 | 3, 4 | Morphology, Spatial Filtering | SZ3.2, SZ3.3 | 10/05: bg model, histogram, 3x3 average |
| 3 | 10/11 | 4, 5 | Spatial Filtering, Color | SZ3.4-3.5.3 | (Monday is Columbus Day) 10/15: Gaussian, Laplacian, orientation histogram |
| 4 | 10/18 | ?? | Feature detection and matching | SZ4 | 10/19: Object tracking |
| 5 | 10/25 | 6 | Segmentation | SZ5 | 10/26: model fitting |
| 6 | 11/01 | 7, 8 | Fitting, determistic and probabilistic | SZ5 | Wed 10/27: midterm |
| 6 | 11/08 | 9 | Shapes and Regions, PCA | SZ B.1.1 | midterm discussion, 11/10: PCA |
| 7 | 11/15 | ?? | Recognition | SZ14 | 11/13: texture-based classification |
| 8 | 11/22 | ?? | Parts-based Recognition | SZ14 | 11/24: recognition |
| 9 | 11/29 | ?? | Alignment | SS4 | |
| 10 | 12/06 | 14 | Capstone | unconventional optics | 12/9-11: Final Exam |
The required textbook for this course is Richard Szeliski: Computer Vision: Algorithms and
Applications (see below). We will also work with a reader and several resources provided to you in
class. Grades for homework assignments etc. will be on Sakai. Software and other course material can
be found here:
http://www.movesinstitute.org/~kolsch/courses/CS4330
Lectures and lab:
Monday, Tuesday, Wednesday, 0800-0850, GE-B03 IN-250
Friday 1000-1150, GE-117 IN-250
These time slots will be used for lectures and/or lab time. Please bring your laptop for every
meeting.
Final:
7-11 Dec, 2010 (exact date TBD)
Holidays:
Mon 11 Oct 2010 (Columbus Day) Thu 11 Nov 2010 (Veterans Day) Thu 25 Nov 2010 (Thanksgiving
Day)
Office Hours:
I am available for questions and help whenever I am in my office (WA-279) and have some time. If you would like a firm appointment, please don’t hesitate to set one up by email or phone (656-3402).
Grades for homework assignments etc. will be on Sakai:
15% programming, lab projects
25% written (theory) homework, quizzes
5% reading reports
15% midterm
15% presentation
25% final
Homework assignments will be posted by Monday and are due the following Friday at 11:59pm unless otherwise noted. No credit will be given for assignments that are more than 3 days late (Sunday 11:59pm). You can hand in at most one assignment up to 3 days late and still receive full credit. That is: one permitted late assignment for the entire quarter. Additional late assignment will be given a max of 50% credit.
Unless otherwise noted, written assignment can be handed in on a sheet of paper (preferred) or by email. If you email it to me, please make sure your name appears on top of the actual assignment (e.g., in the text file attachment), not just in the email. Programming assignment must be turned in using Sakai file submission or as instructed in class. See the respective assignment for the naming convention.
Collaborative work:
There will be weekly reading assignments from the reader and from other reading material. A “reading assignment” requires you to read the material and to write a short, one or two page summary. Demonstrate your understanding of the contents, don’t provide me with a complete recount of the entire text. You are encouraged to add a paragraph in which you critique the reading, note questions that you have or state some other related comment. Print the reports (duplex, please) and bring them to class on the respective due day. If you cannot make it to class, please email them to me prior to class.
In case oral presentations will be part of the syllabus (they are currently not planned), they will be evaluated as follows.
Content:
Have you understood the main concepts? Have you learned enough details for a thorough
understanding? Can you answer questions well?
Didactics:
Can you explain the high-level view, including possible method applications and limitations? Can you
explain critical detail? Is your story and/or presentation well organized or do you jump from here to
there and back? Are you making good use of examples? Did you bring your own material and
explanations into the presentation, not merely read out my slides?
Delivery:
Do you speak in an appropriate fashior, or too fast, slow, or softly? Are you making eye contact with
your audience? Are you relying too much on notes? Are you keeping your audience engaged? If using
slides or other screen material, was it legible and not too much text? Are you staying within your
allocated time limit?
Framework:
Provide a summary handout that captures the main takehome message in a brief, concise manner.
Provide a few references for further information and study of the topic. Devise 5-10 study questions,
some general and conceptual, and some detailed and specific, possibly examples. Plan for a 30 minute
presentation, plus questions.
http://ec.hku.hk/epc/presentation/self_evaluation.htm
All special equipment and software will be provided to you, if required:
High-performance laptop, Matlab with Image Processing Toolbox, USB or FireWire (1394) camera,
OpenCV
As part of the course, we will work on small programming projects with the help of a high-level computer vision library (OpenCV or Matlab) to demonstrate some of the methods we have learned in class. Some sample projects are listed below, further ideas and detail can be found in Appendix C:
Textbooks, more or less in order of relevance