ECE 5554 / ECE 4554: Computer Vision Fall 2017

Course overview

Computer Vision 

Computer vision aims to develop algorithms to enable machines to understand and analyze visual data, i.e., ‘‘teaching machines to see". Applications include 3D reconstruction, autonomous vehicle navigation, medical image analysis, multimedia search, face detection/recognition, entertainment, and security.

In this introductory course, we will cover many of the core concepts and algorithms of computer vision: image formation, linear filters, interest points, correspondence and alignment, single-view and multi-view geometry, grouping, and recognition.


Where: Room 104C, Surge Space Building
When: Tuesday and Thursday 3:30 – 4:45 PM

Instructor VT Email Office Office Hours
Jia-Bin Huang jbhuang 440 Whittemore Hall Friday 11:00 AM – 12:00 PM
Yuliang Zou (TA) ylzou 344 Whittemore Hall Wedesday 2:30 PM – 3:30 PM
Monday 2:30 PM – 3:30 PM (On HW due day)


Homework Topic Due date Solution Competition
HW 1 Image filter, Pyramid, and Edge detection Sept 25 (Mon) 23:59 PM Link
HW 2 Feature detection and tracking, shape alignment Oct 09 (Mon) 23:59 PM Link
HW 3 Epipolar geometry, structure from motion Oct 25 (Wed) 23:59 PM Link
HW 4 Nov 06 (Mon) 23:59 PM Link
HW 5 Nov 27 (Mon) 23:59 PM Link

Homework submission via Canvas

General Information

Textbook and optional references

Lectures are not based on any particular textbook. Our primary reference for this course is:

Computational Vision: Algorithms and Applications 

Computer Vision: Algorithms and Applications, Richard Szeliski, 2010

The electronic copy of the book in PDF is freely available on the web page.

Other useful references:

  • Computer Vision: A Modern Approach (2nd edition) by David Forsyth and Jean Ponces

  • Multiple View Geometry in Computer Vision, Hartley & Zisserman (a bible on recovering 3D geometry)

  • Concise Computer Vision: An Introduction into Theory and Algorithms by Reinhard Klette

  • Computer Vision, Shapiro and Stockman (a nice introduction to computer vision)

  • Linear Algebra and its Applications, Gilbert Strang (excellent book on linear algebra)

  • Vision Science: Photons to Phenomenology, Stephen Palmer (a great book on human visual perception)

  • Digital Image Processing, 2nd edition, Gonzalez and Woods (a good general image processing text)


Good knowledge of linear algebra and calculus. Previous experience with MATLAB will be helpful as all homeworks involve programming in MATLAB.


Regular attendance is expected. I will post lecture slides on the course website. However, the slides will be difficult to interpret without attending lectures.

Disability-related academic adjustments

To obtain disability-related academic adjustments and/or auxiliary aids, students with disabilities must contact the course instructor and the Services for Students with Disabilities (SSD) as soon as possible. To contact SSD you may visit Suite 310 at Lavery Hall, or contact SSD via email or here.

Course objectives

Having successfully completed this course, the students will be able to

  • Become familiar with both the theoretical and practical aspects of image processing and analysis techniques.

  • Describe the foundation of image formation and image analysis.

  • Understand basics of measurements and robust detection of local features in images.

  • Describe various methods used for registration, alignment, and matching across images.

  • Understand the basics of 2D and 3D Computer Vision.

  • Program software of core computer vision techniques such as edge detection, shape registration, multi-view reconstruction, tracking, and image categorization.

  • Get an exposure to advanced concepts leading to object and scene categorization from images.

  • Develop practical skills that are necessary for building computer vision applications in other domains.

  • Understand basic ideas of deep convolutional neural networks and their applications in computer vision.

Assignments and Grading

  • Homeworks (70% of final grade): There are in total five homework assignments.

  • Final project (25% of final grade): Do a final project of your choice in groups of 2-4 people.

  • Attendence and participation (5% of final grade): If for whatever reason that you cannot attend the class, you need to send both the instructor and TA a note before the class.

Graduate credits

  • Graduate students enrolled in ECE 5554 will be expected to do additional work for each homework assignment. Each homework assignment is worth up to 100 points, so you can earn 500 points through the standard assignments. In each assignment, we will also list several graduate credit opportuniities available. ECE 4554 students are graded out of 525 points. Graduate students are graded out of 600 points.

Academic integrity

Feel free to discuss homeworks with your classmates, but please refrain from showing or sharing any code. Any existing code from the Internet cannot be used in your project assignments unless it is specifically approved by the course instructor. Be sure to acknowledge any help that you do get from other students or outside works, even if its just a small suggestion. Note that violations of academic integrity will go on record at the university, and zero points for the entire project assignment. Please

The Undergraduate Honor Code pledge that each member of the university community agrees to abide by states:

“As a Hokie, I will conduct myself with honor and integrity at all times. I will not lie, cheat, or steal, nor will I accept the actions of those who do.”

Students enrolled in this course are responsible for abiding by the Honor Code. A student who has doubts about how the Honor Code applies to any assignment is responsible for obtaining specific guidance from the course instructor before submitting the assignment for evaluation. Ignorance of the rules does not exclude any member of the University community from the requirements and expectations of the Honor Code.

For additional information about the Honor Code, please visit:

Due dates

All problem sets/reports are to be submitted through Canvas by the due date noted on the assignment. Deadlines are firm.

Late policy

You are expected to do assignments on time. Late assignments will be assigned a penalty of 20% per day. Throughout the term you have an allowance of FIVE free late days for your submissions, meaning you can accrue up to six days in late submissions with no penalty.

Final project

The final project is a chance to further explore a topic of interest. Groups of up to four are highly encouraged. More is expected of larger groups. Projects will include a project report webpage and a poster presentation. Various types of projects are possible. You could implement a paper that you find interesting, something discussed in class, a significant extension of one of the course projects, or something entirely of your own design. The work does not have to be of publishable originality. However, you are encouraged to submit the revised versions of projects to top computer vision conferences.

  • Research project: Perform a project in a topic of your choice. Formulate a goal, devise an approach, and evaluate. When proposing, indicate what dataset you will use for evaluation. For example, you could base your project on an existing paper and try to improve the accuracy or speed with some modification. You could also apply existing algorithms to your own field (e.g., robotics).

  • Review and implement a paper: Choose a paper or set of papers and write a scholarly review. Then, implement and evaluate the algorithm. If done in a group, more than one paper should be implemented and compared. Reviews should be written independently for each person, but the group can collaborate on implementation and evaluation.

Credits and Course Notes

The course material builds upon many preceding efforts to design excellent course projects and wonderful course notes. Feel free to use and modify any of the slides for academic and research purposes. Please do credit the original sources where appropriate.