Learning-based Computer Vision


Jochen Lang


General and Specific Objectives of the Course

The recent surge in machine learning and in particular deep learning using neural network has revolutionized many fields including speech processing, data mining and medicine. Arguably one of the greatest impacts of this revolution is in computer vision. Since the success of AlexNet at the 2012 ImageNet Large Scale Visual Recognition Challenge (ILSVRC) where the deep neural network solution outperformed, by a significant margin, arguably much more advanced classical computer vision systems, deep neural networks can now be found everywhere in visual processing. This revolution has created enormous economic interest (Facebook, Google, …). The OCICS offering contains various courses that cover neural networks from a machine learning or data mining perspective but there is no dedicated course of machine learning in computer vision. This course is to fill this gap. While it necessarily includes machine learning background, it specifically looks at neural networks and their applications to standard problems in computer vision. It will also contrast the deep-learning based approaches to classical computer vision approaches and how classical approaches inform the design of these deep-learning based solutions.

Calendar Description

Introduction to learning-based computer vision; statistical learning background; image processing and filtering primer; convolutional neural networks (CNNs), network layers, computer vision data sets and competitions; computer vision problems, in particular, image classification, detection and recognition, semantic segmentation, image generation, multi-view problems and tracking.

Course Prerequisites: None

Teaching Methods and Student Expectations

The course material will be covered in in-person, synchronous and asynchronous on-line lectures including program demonstrations. Additional resources in form of textbooks and on-line references are listed below. The course will be using group work and interactive student feedback using Virtual Campus (Brightspace) and Microsoft Teams. Students are encouraged to apply their knowledge through three programming assignments in Jupyter notebooks using Scikit-Learn, Keras and Tensorflow. Participation in the course requires approriate access to resources. The active participation of students is encouraged through discussions, the group video presentation and the individual student project presentations.

Recommended Textbooks and Additional Resources

Course Topics and Readings

Course notes will be made available through Virtual Campus.

Student Evaluation

Student evaluation will be based on assignments and a project.

Marking Scheme

The maximum is 100 marks*) with the following breakdown:

3 Programming assignments (using Tensorflow, Jupyter notebooks)
  • Linear and logistic regression
  • Image recognition
  • Transfer learning for small data-sets
30 marks
Project including oral presentation

Marked in oral progress meetings. Project must be done in groups 2. A presentation is required.

40 marks
Final Exam

Closed book.

30 marks

Reminder: Academic Regulations

All components of the course (i.e. assignments, projects, etc.) must be fulfilled otherwise students may receive an INC as a final mark (equivalent to an F). This also holds for a student who is taking the course for the second time.

Academic Fraud and Plagiarism

For any plagiarism or fraud the university regulation on academic integrity and misconduct applies. Two websites detail the rules surrounding academic fraud and the rules regarding the use of AI. Please familiarize yourself with them.