Computer Science Department
The University of Western Ontario
CS 3335A --- Visual Computing
Syllabus: Fall 2016
Visual computing encompasses a variety of innovative processing techniques leveraged in applications such as facial recognition, image searching, augmented reality, medical image analysis, automated mapping of environments, and digital effects in movies and photography. This course provides an introduction to the computational and mathematical foundations of computer vision, with a blending of both theory and application in this area.
|| Monday || 1:30 - 3:30pm || at KB-K203 (Kresge Building)
|| Wednesday || 2:30 - 3:30pm || at WSC-240 (Western Science)
||Prof. Yuri Boykov
||Middlesex College 387
|Office Hours :
||after class or by appointment
||yuri 'at' csd.uwo.ca
||(519) 661-2159 (UWO office)
||(226) 289-6980 (UWO vision lab)
|| Egor Chesakov
|Office Hours :
||TBA (in MS 4a)
||echesako 'at' uwo.ca
Students are responsible for ensuring that they have either the prerequisites for this course,
or written special permission from the instructor.
If a student does not have the course prerequisites, and has not been granted a special permission, it is in his/her best interest to drop the course well before the end of the add/drop period.
Unless you have either the requisites for this course or written special permission from your Dean to enroll in it, you may be removed from this course and it will be deleted from your record. This decision may not be appealed. You will receive no adjustment to your fees in the event that you are dropped from a course for failing to have the necessary prerequisites.
- One of the first-year Calculus courses (1000, 1301, 1501)
- Linear Algebra (1600A/B) or a confident mark in "Discrete Structures for Computing" (CS 2214A).
- Programming skills in Python or C/C++. Expertice in MATLAB could be an acceptable alternative (with instructor's permission).
- No background in vision, graphics, or image processing will be assumed.
The website for the course is
Lecture notes, assignments, code samples, and other supplementary materials
will be posted on this web site. Many important announcements will be posted as well. It is your
responsibility to check this web site on a regular basis.
OWL will be used primarily for collecting homework assignments and projects.
Textbooks and Lecture Notes
There is no required textbook for this course. All lecture notes/slides will be available on the course web site. While the posted slides cover all the necessary material, they are supposed to be complemented by live discussion and blackboard scribbles. Note that class attensdance is very important since the posted slides are not designed for independent reading. Lecture notes could be complemented by readings from recommended text-books on computer vision and standard CS algorithms given below. You will be referred to specific relevant sections of these books in class.
- Richard Szeliski (Microsoft Research). Computer Vision: Algorithms and Applications, 2010.
- Milan Sonka, Vaclav Hlavac, Roger Boyle. Image Processing, Analysis, and Machine Vision,
Thomson Learning, 3d edition, 2007
- Gonzalez and Woods. Digital Image Processing, Prentice Hall, 2nd edition, 2002.
This course introduces many standard computer vision problems and computational approaches for solving them. The context of image analysis provides an intuitive and stimulating visual environment for developing and understanding numerical algorithms. A tentative list of topics is given below.
- Overview of Imaging Modalities: photo (camera model), video, medical, etc.
- Elements of Image Pre-Processing (gamma and window/center correction, histogram equalization)
- Features and Filtering: colors, edges, corners, SIFT, etc.
- Quantization. Clustering techniques.
- mean-shift, K-means, kernel methods
- Image Segmentation, Shape Reconstruction
- background subtraction, photo/video editing, medical image analysis, interactive segmentation
- basic methods: thresholding, region growing
- clustering methods (eg. RGBXY features)
- regularization methods: shape priors, graph algorithms
- 3D shape reconstruction (medical volumes, multi-view photometric data)
- Image Warping
- domain transformations, homographies
- Model Estimation
- color models: non-parametric (histograms, kernel densities), parametric (Gaussian, GMM), ML estimation, segmentation with color models
- geometric models (lines, planes, homographies) for reconstruction (panoramas, 3D structure),
robust estimation (RANSAC)
- multi-model fitting (multi-structure reconstruction), joint fitting and segmentation
- Correspondence and Registration
- template matching, image registration (SSD, normalized correlation, mutual information)
- non-rigid registration, pictorial structures (pose estimation), stereo, motion, aperture problem
- General Image Labeling and Regularization
- restoration, stitching, scene understanding, stereo, motion, etc.
- robust regularization, optimization algorithms
- Elements of Object Detection
- faces, pedestrians
- There will be 3 assignments (programming projects).
- The assignments will be posted on the course web page.
- Assignemnts will require submission of code and a report.
Typical image analysis algorithms produde output (geometric structures, segments, labelings) that can be visualized. The report must include representative input images as well as images visualizing the algorithm's output for them. The report should describe and justify the proposed method for the given problem and/or answer all posted qestions.
- The last assignment will be a project where a student can select one of several proposed topics/problems.
- We will support coding in Python and C++.
- Submission of your home work (reports and/or code) should be done electronically by the due date. Students
will be instructed to do submissions through their OWL accounts No files will be accepted via email.
- Late assignments: 10% of the mark will be subtracted for each day the assignment is late, up to the maximum of 5 days. Extensions may be granted only in case of serious documented
medical or family emergency, in which case you must take supporting documentation to the office of the Dean of your faculty.
- Assignments may include an extra credit part which may contribute up to 20% toward the mark on that assignment.
- While students may discuss the assignments, any code or written text should be an individual effort of each student. Scholastic offences are taken seriously and students are directed to read the appropriate policy, specifically, the definition of what constitutes a Scholastic Offence, at the following Web site: http://www.uwo.ca/univsec/pdf/academic_policies/appeals/scholastic_discipline_undergrad.pdf. Computer-marked multiple-choice tests and/or exams may be subject to submission for similarity review by software that will check for unusual coincidences in answer patterns that may indicate cheating.
- Tentative assignment topics and their tentative posting schedule below are subject to change. Assignments will be due in 7-10 days after posting.
- Assignment 1 (Oct. 7): color quantization, superpixels, interactive object extraction.
- Assignment 2 (Oct. 28): geometric model fitting (lines, homographies, panoramas).
- Assignment/project 3 (Nov. 25): labeling (restoration, stereo, seamless stitching, etc.)
There will be 3 short surprise quizzes given at the beginning of classes every 3-4 weeks. No electronic devices will be permitted during the quizes. Your 2 best results (out of 3) will be used in the grading scheme. No make-ups will be offered.
There will be no exams in this course.
| Quizzes || 10% ||(5% each for 2 best out of 3)
| Assignments 1, 2 || 28%
| Assignment 3 (final project) ||34%
Best Ways to Contact me
If you have a question and need to contact me, the best way to do so is to talk to me right after class. You can also email me to make an appointment. All emails should be sent from your UWO account and they should have CS3335 in the subject line. Otherwise your email is likely to get filtered out.
Accommodations for medical illness, long term disability, religious holidays
If you are unable to meet a course requirement due to illness or other serious circumstances, you must provide valid medical or supporting documentation to the Academic Counselling Office of your home faculty as soon as possible. Accomodations for properly documented medical illness are based on standard university policies (www.uwo.ca/univsec/pdf/academic_policies/appeals/accommodation_illness.pdf). Documented illness may be used for reducing late penalties or (in exceptional cases of long-term illness) in a proportional reweighting of a missed assignment among other tests.
For accommodation for students with disabilities check out
For policies on accommodation for religious holidays see
Learning-skills counsellors at the Student Development Centre (http://www.sdc.uwo.ca) are ready to help you improve your learning skills. They offer presentations on strategies for improving time management, multiple-choice exam preparation/writing, textbook reading, and more. Individual support is offered throughout the Fall/Winter terms in the drop-in Learning Help Centre, and year-round through individual counselling.
Students who are in emotional/mental distress should refer to Mental Health@Western (http://www.health.uwo.ca/mental_health) for a complete list of options about how to obtain help.
Additional student-run support services are offered by the USC, http://westernusc.ca/services.
The website for Registrarial Services is http://www.registrar.uwo.ca.
Code of Student Conduct
To foster a supportive and enriching academic environment that is conducive to learning and free inquiry, Western has a Code of Student Conduct (http://www.uwo.ca/univsec/pdf/board/code.pdf).