MRES.B.02.01 – Selected Topics in image Processing and Computer Vision

 

Computer vision is perhaps one of the most thrilling fields which combines the concepts of data-driven Machine Learning and image processing. Computer vision exists in numerous applications ranging from Navigation, e.g., by any type of an autonomous vehicle; document analysis and understanding, mixed reality etc. The course contains selected topics in computer vision and pattern recognition.

The module syllabus contains the following topics:

  • A review on image processing and computer vision methods. Image transforms, image compression & morphological transformations.
  • Feature detection and extraction. Edge detection: Lines, edges and ridges with the Sobel, Prewitt, Roberts and Canny operators.
  • Feature detection and extraction. Corner detection: the role of Hessian and the Harris operator.
  • Feature detection and extraction. Blob detection with Laplacian of Gaussian (LoG) and Difference of Gaussian (DoG).
  • Data-driven feature detection and extraction. Identification and coding of Regions of Interest (ROI). Key-point detection and visual descriptor with the Scale-invariant feature transform (SIFT). Local correspondence and the RANSAC algorithm.
  • Image matching and recognition by considering image features as words. The Bag-of-visual-words model.
  • Special topic: Dictionary learning (DL) and sparse representation (SR) methods: The K-SVD & OMP pairs of algorithms.

The purpose of the course is to provide the students, besides the principles of processing and analyzing images as two-dimensional signals, the elements of modern data-driven computer vision algorithms for understanding the meaning of images.

Upon successful completion of the course, students are expected to be able to:

  • Describe and explain the basics of image processing and computer vision.
  • Use and comprehend computer vision processing techniques including: Image enhancement with histograms and transforms as well as handcrafted and data-driven feature detection and extraction.
  • Apply computer vision algorithms to typical and real-world problems such as de-noising and image reconstruction.
  • Explain and interpret results; comment on their validity; make decisions on the basis of these results.

Mandatory:

We will assume you have a basic level of expertise in programming, computer science, and mathematics, especially linear algebra and probabilities. For example, if you are unfamiliar with the topics of elementary linear algebra or calculus, then you might want to consider to introduce yourself to them: without these tools, most likely you will struggle with the course.

Concretely, we will assume that you are familiar with the following topics; they will not be reviewed in class:

  • Linear Algebra: In addition to basic matrix and vector operations, it will be good to know least squares, Eigen- and singular-value decompositions.
  • Calculus: You should be comfortable with the chain rule, and taking gradients and partial derivatives of vector-valued functions.
  • Probabilities: It is desirable to know basic postulates of probability theory, including the concepts of multi-variable distributions.
  • Programming, including algorithms and data structures.
  • Matlab: Potential course assignments will involve programming in Matlab. You should either have prior experience, or be able to quickly learn a new language.

Desirable:

Python-PyTorch: You should either have prior experience, or be able to quickly learn this exciting language and machine learning library.

Student evaluation comes from

  • Homework Assignments (50% of the final grade): There will be two programming assignments during the course. The first assignment is worth 15% while the other assignment is worth 35%.
  • Course Project (50% of the final grade): You will work either individually or in pairs, in order to carry out a given project.

Currently, there are no required textbooks. The following books may be found quite useful:

  • Computer Vision: Algorithms and Applications by Richard Szeliski. Available for free online here
  • Computer Vision: A Modern Approach (Second Edition) by David Forsyth and Jean Ponce. Available for free online here:
  • Elements of Statistical Learning by Trevor Hastie, Robert Tibshirani, and Jerome Friedman. Available free pdf online here.
  • Multiple View Geometry in Computer Vision (Second Edition) by Richard Hartley and Andrew Zisserman. Available for free pdf online here
  • Digital Image Processing, by R. C. Gonzalez and R. E. Woods 4th

RESEARCH ARTICLES

The students are encouraged to search and review the computer vision literature among the top-notch Journals and conferences of image processing and computer vision such as those organized by:

  1. The Computer Vision Foundation (CVF) which is a non-profit organization that fosters and supports research in all aspects of computer vision https://www.thecvf.com/. All CVF organized events such as Computer vision and Pattern recognition (CVPR), international conference on computer vision (ICCV), European conference on computer vision (ECCV), etc. publications are open accessed here: https://openaccess.thecvf.com/menu.
  2. The IEEE computer society publications such as the flagship IEEE Transactions on Pattern Analysis and Machine Intelligence.
  3. The IEEE signal processing society such as the flagship IEEE Transactions on Image Processing.

TOOLS

  • The popular open source VLFeat library which implements popular computer vision algorithms specializing in image understanding and local features extraction and matching.
  • MATLAB: https://www.mathworks.com/products/matlab.html
  • The K-SVD toolbox for learning dictionaries and sparse representation
  • The SPAMS (SPArse Modeling Software) toolbox which is an optimization toolbox for solving various sparse estimation problems.

WEBSITES

Instructor(s): Elias ZOIS