Current students

COMPM085 - Computational Photography and Capture

This database contains 2017-18 versions of the syllabuses. For current versions please see here.

Code COMPM085 (Also taught as COMPGV15)
Year 4 (Masters)

Completion of years 1 to 3 of the MEng Computer Science or CS with EE Programme plus A-Level maths and basic knowledge of Matlab

Term 2
Taught By

Gabriel Brostow (50%)

Tim Weyrich (50%)

AimsThe module is designed to be self-contained, introducing the theoretical and practical aspects of modern photography and capture algorithms to students with only limited mathematical background. The two primary aims are i) to introduce universal models of colour, computer-controlled cameras, lighting and shape capture, and ii) to motivate students to choose among the topics presented for either continuing study (for those considering MSc’s and PhD’s) or future careers in the fields of advanced imaging.
Learning OutcomesStudents will develop in-depth knowledge and understanding of the main Computational Photography topics as listed in the attached outline syllabus.


Introduction to Computational Photography

  • More on cameras, sensors and colour
  • Blending and compositing
  • Background subtraction and matting
  • Warping, morphing, mosaics and panoramas
  • High-dynamic range imaging/tome mapping
  • Hybrid images
  • Flash photography
  • Stylised rendering using multi-flash

Image Inpainting

  • Texture synthesis
  • Image quilting
  • Heeger and Bergen
  • Simplicial complex of morphable textures (Matusik 2005)

Extension to the temporal domain

  • TIP, Video textures
  • Temporal sequence rendering
  • Ezzat speech anim, comtrolled video sprites
  • Video-based rendering: using photographs to enhance videos of a static scene
  • Motion magnification
  • Non-photorealistic rendering and animation

Colourization and colour transfercolorization using optimization

  • Colour transfer between images
  • N-Dimensional probability density function transfer and its application to colour transfer
  • Intrinsic images
  • Vectorising Raster images
  • Poisson image editing
  • Seam carving
  • De-blurring/ dehazing
  • Coded aperture imaging

Image-based rendering

  • Image-based modelling and photo editing view dependence, light-dependence, plenoptic function
  • Selected ways to capture the above representations

Extensions to the temporal domain

  • Factored time-lapse video
  • Computational time-lapse video
  • Video synopsis and indexing

Capturing images with structured light

  • Laser-stripe projection
  • ShadowCuts
  • Stripe codes
  • Edge codes
  • Phase shift
  • Brief recap of stereo, spatio-temporal stereo
  • Photometric stereo
  • The Helmholtz wheel (Helmholtz reciprocity)

Dual photography

  • Seeing around corners
  • Dual light stage
  • Separation of global and local reflectance
  • Image-based BRDF measurements
  • Measuring the BSSRDF

Method of Instruction

Lecture presentations supplemented by practical lab demonstration sessions and substantial online content, with other detailed examples and links for both further reading and existing demo software.


The course has the following assessment components:

  • Individual Project (60%)
    • Implementation
    • Written report
  • Coursework (40%)
    • 2 pieces

To pass this course, students must:

  • Submit a proper attempt at the coursework component.
  • Obtain an overall pass mark of 50% for all sections combined.
  • Obtain a minimum mark of 40% in each component worth ≥ 30% of the module as a whole.


Reading list available via the UCL Library catalogue.