University of Surrey - Guildford

Registry > Module Catalogue
View Module List by A.O.U. and Level  Alphabetical Module Code List  Alphabetical Module Title List  Alphabetical Old Short Name List  View Menu 
2010/1 Module Catalogue
Module Provider: Electronic Engineering Short Name: EEE3032
Level: HE3 Module Co-ordinator: COLLOMOSSE JP Dr (Elec Eng)
Number of credits: 15 Number of ECTS credits: 7.5
Module Availability
Spring Semester
Assessment Pattern

Unit(s) of Assessment


Weighting Towards Module Mark(%)






Practical Assignment




Module Overview

The module delivers a grounding in Computer Vision, for students with a background in linear algebra similar to that provided in ee2.cvg (graphics) at Level 2 undergraduate, or eem.ipv (image processing and vision) at MSc level.  Content is presented as an application-focussed tour of Computer Vision from the low-level (image processing), through to high level model fitting and object recognition. 


The module first introduces low-level image processing, discussing how edges may be detected, and how regions of interest may be identified using simple colour classifiers.  Mid-level scene representation is then discussed in the context of global shape descriptors and local feature descriptors.  These descriptors are combined with knowledge of machine learning; simple classifiers to explore supervised classification problems (shape and object recognition) and applications of unsupervised clustering (e.g. codebook based image retrieval). The latter is explored more deeply through coursework assignments.  Dynamical models are then presented in the content of object tracking, with examples of classical and contemporary tracking algorithms.  High-level scene description is briefly explored using statistical models of shape.  Finally, models of camera geometry and image formation are presented, and their applications to 3D reconstruction are explored.  Taught material is reinforced through lab-based exercises in Matlab.

ee2.cvg or similar background in geometric interpretation of Linear Algebra (e.g. homogeneous coordinates and matrices for point transformation e.g. rotation, translation, scaling).


ee3.ood or similar programming background in C



There is a self-test available to check the requisite maths (and a pre-study guide if needed) at:
Module Aims
The module teaches the mathematical principles and concepts of computer vision alongside its practical applications.  The module aims to provide a first course in computer vision, encompassing: image formation and low-level image processing; mid-level scene representation; model-based description and tracking.
Learning Outcomes

On completion, students should be able to:-


·       Identify and implement appropriate solutions to low, mid and high level Computer Vision problems.


·       Represent problems as a mathematical models and apply appropriate machine learning and optimization techniques to solve those problems.


·       Understand the effect of digital image processing operations in terms of the spatial and frequency domain.


Understand and apply statistical representations of static and dynamic objects to enable their detection, classification and/or tracking.

Module Content

COMPUTER VISION (30h Lectures)


[1] Introduction to Computer Vision and its Applications.


[2-3] Image Processing:  Convolution and Linear filters.  Edge detection.  Image  Interpolation.


[4-5] Pattern classification: Supervised clustering; K-NN; Thresholding and decision boundaries; Eigenmodels and Mahalanobis distance;  PCA; Applications (segmentation and visualisation).


[6-9]  Recognition and Classification:  Feature Descriptors (SIFT, HoG).  Concept of a feature space.  Unsupervised clustering (K-Means).  Visual codebooks.  Overview of Support Vector Machines (SVMs).  Applications to object classification and video analysis.


[10-12] Shape Description:  Moments, Fourier descriptors, Shape Contexts. 


 [13-16] Tracking: Templates and cross-correlation. Blob trackers. Kalman filter.  Bayes Law.  Particle filters.


[17-21] Model based vision: Active contours; PDMs; ASMs.  Radon transform.  RANSAC.


 [22-23] Geometry of Cameras:  Camera models (orthographic, affine, projective), camera calibration methods.


 [24-30] Multiview Geometry:  Epipolar Geometry; Fundamental Matrix estimation; Homography and Mosaicing; Bundle Adjustment; Stereo rectification and Depth Estimation; Visual Hull.
Methods of Teaching/Learning

Lectures 3hrs/week for 10 weeks


Laboratories 1hr/week for 6 weeks:


 Weeks 2-3:  Image processing exercises using Matlab


 Weeks 3-4:  Shape and pattern classification exercises using Matlab


 Weeks 5-6:  Tracking exercises using Matlab


 Weeks 3-7: Computer Vision coursework (OpenCV)
Selected Texts/Journals

Szeliski, R.


Computer Vision: Algorithms and Applications




(released Oct ’10, full draft online)








Forsythe,D. and Ponce , J.


Computer Vision: A Modern Approach










Nixon, M. and Aguardo, A.


Feature extraction and image processing










Trucco, E. and Verri, A.


Introductory Techniques for 3D Computer Vision










Last Updated
12 August 2010