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.


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.

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.).



Practical work

Two practical exercises

Note: If students are unable to be in Cambridge due to COVID-19 restrictions, the practical exercises will be assesed online by the student demonstrating their work via a platform such as Zoom and screen sharing


  • Two practical exercises and mini-vivas (40%)
  • Mini-project (60%)

Further Information

Due to COVID-19, the method of teaching for this module will be adjusted to cater for physical distancing and students who are working remotely. We will confirm precisely how the module will be taught closer to the start of term.

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.