CSCE 689: Machine Learning Methods in Computer Vision (Fall 2017)





Dr. Zhangyang (Atlas) Wang



Time and Location

Š       Lecture time: 2:20-3:35 pm, every Tuesday and Thursday

Š       Lecture location: HEB 137 (same as CVE 137)

Š       Office Hour: 1:30 3:00 pm every Wednesday

Š       Class fully seated. NO AUDITION ALLOWED.


Course Description

Discussion of established and new trends in optimization and statistical modeling approaches, as well as classical algorithms, for computer vision, pattern recognition and image processing, addressing both theoretical and application challenges.


Course Goal

The students will digest and practice their knowledge and skills by class discussion and course presentation, and obtain in-depth experience with a particular topic through a final project.


Evaluation Metrics

Grading will be based on three in-class quizzes (10% each), paper presentation and open discussion (25%), and one final project (45%) (proposal 5% + presentation 15% + code review 10% + report 15%).  There will be no final exam. Everything should be submitted via email.


Paper presentation and discussion A student presents a paper of his/her own choice, at either of the two scheduled slots (week 8 with sparsity/low-dimensionality theme, and week 11 with deep learning theme). No team work is allowed. To earn full 25% credits, the student has to both present the chosen paper (20%), and actively involve Q&A discussions when others present (5%). Extra credits (>25%) will be given to students who volunteer to present for both times (+5%).


Final project Collaborations and teamwork are encouraged, but must be coordinated and approved by the instructor. A team cannot have more than 2 members. Extra credits (>50%) will be given to:

-       One project to receive the Best Project Award, voted by all class members. (+5%)

-       Projects of interdisciplinary topics and novel application domains. (+3%)

-       Projects completed by only one individual student (a.k.a. lone hero bonus). (+3%)

For late submission, each additional late day will incur a 10% penalty.




Paper presentation and open discussion


Final project



(A "+" denotes an area in which extra credit can be earned.)


The grading policy is as follows:













It's important that you work on a real computer vision project, or a real problem in some relevant domain, so that you earn first-hand experience how the computational models are bridged with the high complexity and uncertainty of the real world. You're encouraged to develop your project ideas, or you can consult the instructor for suggestion. The instructor is available to discuss and shape the project if you like. The scale of the project should be one semester long. By the end of the semester, you should submit your code and data for this project, write a project report of maximum 8 pages (plus additional pages containing only references) using the standard CVPR paper template, and prepare a class presentation. The instructor will be happy to help develop promising project ideas into a formal publication during or after the semester, if you wish so.



Š       Students should have taken the following courses or equivalent: Data Structure and Algorithms (CSCE 221), Linear Algebra (MATH 304 or MATH 323), Numerical Methods (MATH 417).

Š       Coding experiences with Matlab (recommended), C/C++ or Python are assumed.

Š       Previous knowledge of computer vision, machine learning, signal processing or data mining will be helpful, but not necessary.


Reading Materials

This course does not follow any textbook closely. Among many recommended readings are:

1.     Introduction to Machine Learning, Ethem Alpaydin (2014), MIT Press. [Book home page (3rd edition)] [Book home page (2nd edition)] [Book home page (1st edition)]

2.     Pattern Recognition and Machine Learning, Christopher M. Bishop (2006). [A Bayesian view]

3.     The Elements of Statistical Learning, Jerome H. Friedman, Robert Tibshirani, and Trevor Hastie (2001), Springer. [Warning: not so elementary but quite insightful]

4.     Computer Vision: Algorithms and Applications, Richard Szeliski (2010), Springer.

5.     Sparse Coding and its Applications in Computer Vision, Wang et. al. (2015), WorldScientific.

6.     Convex Optimization, Stephen Boyd and Lieven Vandenberghe (2004), Cambridge University Press. [Their CVX toolbox is a great Matlab-based convex optimization tool for beginners]

7.     Distributed optimization and statistical learning via the alternating direction method of multipliers, Stephen Boyd et. al. (2011). [Dedicated reference for ADMM]

8.     Linear Algebra and its Applications, Gilbert Strang (1988). [For those who want to simply keep a concise reference for linear algebra, my best recommendation is The Matrix Cookbook]


Lecture Notes (in PDF format) will be uploaded to the course webpage no more than 24 hours AFTER each class.


Attendance and Make-up Policies

Every student should attend the class, unless you have an accepted excuse. Please check student rule 7 for details.


Academic Integrity

Aggie Code of Honor: An Aggie does not lie, cheat or steal, or tolerate those who do. see: Honor Council Rules and Procedures


Americans with Disabilities Act (ADA) Statement

The Americans with Disabilities Act (ADA) is a federal anti-discrimination statute that provides comprehensive civil rights protection for persons with disabilities. Among other things, this legislation requires that all students with disabilities be guaranteed a learning environment that provides for reasonable accommodation of their disabilities. If you believe you have a disability requiring an accommodation, please contact Disability Services, currently located in the Disability Services building at the Student Services at White Creek complex on west campus or call 979-845-1637. For additional information, visit



(Further minor changes may occur due to potential changes of the instructor’s schedule, and will be notified separately via email)


Week 1



Introduction [Slides]

Week 2



Basics I: Linear Algebra [Slides]


Basics II: Vector Space and Optimization [Slides]

Week 3



Basics III: Probability Theory and Statistical Learning [Slides]


Linear Regression and Classification (i) [Slides]

Week 4

(Due by Week 4 Sunday: Submitting Project Proposal)


Linear Regression and Classification (ii) [Slides]


Support Vector Machine [Slides]

Week 5



Sparse Learning (i): Motivation and Concepts [Slides]


Sparse Learning (ii): Theoretical Guarantees [Slides]

Week 6

(Due by Week 6 Sunday: Deciding on Paper Presentation)


Sparse Learning (iii): Models and Algorithms [Slides]


Sparse Learning (iv): Applications and Variants [Slides]

Week 7



Low Dimensionality in High-Dimension Data (i) [Slides]


Low Dimensionality in High-Dimension Data (ii) [Slides]

Week 8



Sparsity and Low Dimensionality

(Paper Presentation and Discussion 1)


Kernel Methods [Slides]

Week 9



Graphical Models [Slides]


Ensemble Learning [Slides]

Week 10



Deep Learning (i): Past and Present [Slides]


Deep Learning (ii): Hot and Promising [Slides]

Week 11



Application Topics (i): Image Restoration and Enhancement [Slides]


The Future of Deep Learning

(Paper Presentation and Discussion 2)

Week 12



Application Topics (ii): Visual Recognition and Detection [Slides]


Application Topics (iii): Clustering, Segmentation, and Hashing [Slides]

Week 13



Final Project Presentations (i)


Thanksgiving Break

Week 14



Final Project Presentations (ii)


Final Project Presentations (iii)

Week 15



Final Project Presentations (iv)