ECE 5554 / ECE 4554: Computer Vision Fall 2016
Course overview
|
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.
|
Course syllabus
Lectures
Where: Room 230, New Classroom Building (NCB)
When: Tuesday and Thursday 3:30 – 4:45 PM
Instructor | VT Email | Office | Office Hours |
Jia-Bin Huang | jbhuang | 440 Whittemore Hall | Monday 1:00 PM – 2:00 PM (final project) Friday 3:00 PM – 4:00 PM (lectures/homeworks) |
Akrit Mohapatra (TA) | akrit | 264 Whittemore Hall | Monday 10:30 – 11:30 AM (on HW due day only) Wednesday 10:30 – 11:30 AM
|
Assignments
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:
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)
Prerequisites
Good knowledge of linear algebra and calculus. Previous experience with
MATLAB will be helpful as all homeworks involve programming in MATLAB.
Attendance
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 ssd@vt.edu 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 (60% 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.
Final exam (15% of final grade): The exam will cover a variety of conceptual and
paper-and-pencil problems related to the topics of lectures.
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 extra 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. For details, please review the honor code manual and policy online here.
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 four free late days for your submissions,
meaning you can accrue up to four 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.
|