LED-Wall Color Correction — Following the Viewing Angle

LED-Wall Color Correction — Following the Viewing Angle

Measuring why a camera never sees the color an LED wall shows — and building a correction that follows the viewing angle.

TL;DR

In LED virtual production, the color a camera captures off an LED wall drifts depending on the camera's viewing angle. My bachelor thesis builds a matrix-based color correction that accounts for this angle, validated with spectrometer measurements and a Python pipeline.

Overview

My bachelor thesis, supervised by Prof. Dr. Jan Fröhlich at HdM Stuttgart. In LED virtual production, a camera films an LED wall displaying a virtual set — but the captured color drifts from the intended one, and that drift shifts strongly with the camera’s angle.

The Problem

LED panels aren’t Lambertian emitters — their luminance and color output change with viewing angle, which is invisible to the eye on set but shows up as a measurable color error on camera. The thesis reconstructs a matrix-based correction method from the color-science literature and extends it with a viewing-angle-dependent component.

A gray reference patch at 0° vs. −70° viewing angle — the visible color shift this thesis corrects for.
A gray reference patch at 0° vs. −70° viewing angle — the visible color shift this thesis corrects for.

Measuring the Falloff

Normalized luminance vs. viewing angle — the measurable, asymmetric falloff.
Normalized luminance vs. viewing angle — the measurable, asymmetric falloff.

An LED panel was measured with a spectrometer across viewing angles from −85° to +85° on a turntable, with a Python pipeline computing correction matrices per angle and interpolating between them.

The Result

Tested on red/green/blue reference colors, the correction measurably reduces the color error left by viewing angle alone.

Tools
Color science Python Spectroradiometry