The University of Sheffield
Department of Computer Science

COM31006 Computer Vision

Summary This module provides a comprehensive introduction to computer vision. Major topics include image processing, detection and recognition, semantic understanding, photometric geometry, image registration, place recognition, and vision and video analysis. Students will learn the basic theories and fundamental topics of computer vision, the mainstream methods for core computer vision applications. Importantly, the students will also gain hands-on experience to solve real-life vision problems.
Session Spring 2023/24
Credits 10
Assessment

Programming assignment examines ability to use deep learning tools, to run experiments and interpret results. Students will submit code and a short project report.

Formal examination examines the core computer vision knowledge taught in the lectures.

Lecturer(s) Prof. Jungong Han & Dr Jefersson dos Santos
Resources
Aims

This unit aims to:

  1. develop students’ background of deep learning especially for computer vision.
  2. develop students’ geometry background for computer vision such as principles of photographic geometry, camera pose estimation, 3D reconstruction, etc.
  3. introduce the state-of-the-art approaches for fundamental computer vision problems.
  4. build the practical skills to solve real-world applications.
Learning Outcomes 

By the end of the unit, a student will be able to

  1. explain the basic knowledge of photographic geometry and theories of deep learning for computer vision.
  2. adapt the state-of-the-art computer vision approaches to a range of real-world applications such as: object detection and recognition, semantic understanding, feature matching, 3D reconstruction, camera poses estimation, photographic geometry, etc.
  3. use widely-used deep learning toolboxes to build the neural network architectures and train the model using public benchmark datasets.
Content

Topics such as: 

  • Foundations of vision: Image acquisition, sources of noise, human visual perception, and the evaluation and design of visual computing systems. 
  • Edges and features: The image as landscape, edge detection, feature detection and representation, and appearance as the feature. 
  • Motion: The video as an image sequence, optical flow, feature tracking, modelling motion and change. 
  • 3D: Basic image transformation; Camera calibration and image registration; photometric stereo. 
  • Objects: face detection and object detection based on deep learning, e.g., YOLO. 
  • Image classification and recognition: traditional recognition/classification. Artificial Neural Networks. Convolutional Neural Networks for classification. Evaluation of classifiers.  
Restriction Restricted to students in the Department of Computer Science.
Teaching Method

Large group teaching. This module will be taught through weekly lectures. The lectures will cover the basic principles and main theoretical knowledge of the state-of-the-art methodologies.

Lab demonstrations. The practical skills will be taught in the weekly labs, in which the students will learn how to set up the environments, run the example code, and work on the assignments or projects. The demonstrator will answer questions and help the students with debugging.

Feedback Formative feedback will be available in laboratory sessions throughout the semester. Students will have the opportunity to present their solutions to staff in these sessions before the submission of their programming assignment. Solutions to problem sheets will be provided, with the opportunity for in class discussion.