skip to content

Department of Computer Science and Technology

Principal lecturer: 
MPhil ACS, Part III
Michaelmas term
Course code: 
Programming in C
Class limit: 


Advanced Graphics covers topics related to processing, perception and display of images. The focus of the course is on the algorithms behind new emerging display technologies, such as virtual reality, augmented reality, and high dynamic range displays. It complements two computer graphics courses, Introduction to Graphics and Further Graphics, by introducing problems that became the part of graphics pipeline: tone-mapping, post-processing, displays and models of visual perception.


  • GP-GPU: scheduling and thread mapping, reductions.
  • Advanced image processing: edge-stopping filters, pyramids, optimization-based image processing.
  • Beyond 2D: stereo rendering and light fields.
  • Models of visual perception: visual system, brightness perception, detection and discrimination, contrast sensitivity function, contrast constancy, perceptually uniform spaces, depth perception.
  • High Dynamic Range and tone mapping: dynamic range, display model, methods of tone-mapping.
  • Display technologies: 2D displays, 3D displays, temporal display characteristic, HDR displays.
  • Virtual and Augmented Reality: display technologies, VR rendering, orientation tracking, pose tracking, perceptual considerations, panoramic imaging.

Please note that the OpenCL lectures may be replaced with one that is more graphics-oriented. 


By the end of the course students should be able to:

  • implement real-time image processing methods on a GPU (OpenCL);
  • design and implement a tone-mapping algorithm;
  • describe the limitations of display technologies (dynamic range, brightness, visual comfort, VR simulation sickness) and how they can be addressed using computational methods (tone-mapping, HDR displays);
  • describe the limitations of the visual system and how those limitation can be exploited in computer graphics and image processing.

Assessment - Part II Students

  • Two practical exercises, worth 50% of the marks.
  • One test, worth 50% of the marks

Recommended reading

Hainich, R. and Bimber, O. (2016) Displays: Fundamentals and Applications. CRC Press (2nd ed.).
Boreskov, A. and Shikin, E. (2013) Computer Graphics: From Pixels to Programmable Graphics Hardware. CRC Press.
Reinhard, E., et. al. (2010) High Dynamic Range Imaging: Acquisition, Display, and Image-Based Lighting. Morgan Kaufmann (2nd ed.).

Assessment - Part III and MPhil students

  • Two practical exercises and mini-vivas (30%)
  • Mini-project (70%)

Further Information

Due to infectious respiratory diseases, the method of teaching for this module may be adjusted to cater for physical distancing and students who are working remotely. Unless otherwise advised, this module will be taught in person.

Current Cambridge undergraduate students who are continuing onto Part III or the MPhil in Advanced Computer Science may only take this module if they did NOT take it as a Unit of Assessment in Part II.

This module is shared with the Part II Computer Science Tripos course Advanced Graphics and Image Processing. Assessment will be adjusted for the two groups of students to be at an appropriate level for whichever course the student is enrolled on. Further information about assessment and practicals will follow at the first lecture.