Display - ISET/isetcam GitHub Wiki


What the display represents

ISETCam has tools to evaluate image system components and overall image processing quality. But measuring the quality of an RGB image requires knowing how that image would appear on a display device — nobody looks directly at RGB values; they are always shown on a display, and the eye responds to the resulting spectral radiance. The display structure makes that last step explicit.

Display calibration data (data/displays/*.mat) store the spectral radiance distribution of the display's primaries and its gamma function — the same physical, calibrated representation used for the scene, optical image, sensor, and ip structures. Like those, the display comes with the usual functions: displayCreate, displaySet/displayGet, displayWindow, and displayPlot.

d = displayCreate('LCD-Apple');
displayWindow(d);
gamma = displayGet(d,'gamma');
spd   = displayGet(d,'spd');       % Spectral power distribution of the primaries
dpi   = displayGet(d,'dpi');       % Physical pixel density

Where the display fits in the pipeline

Scene (radiance) --oiCompute--> Optical Image (irradiance) --sensorCompute--> Sensor --ipCompute--> Image Processor --> Display

The display is the pipeline's final stage — how the ip's rendered RGB values are physically realized as light. When no display is explicitly specified, such as when rendering the scene, optical image, or ip windows, ISETCam uses an implicit sRGB display color model. Explicit, calibrated display models are typically used for image-quality metrics such as CIELAB and spatial CIELAB, where the physical viewing conditions matter. We are aware, of course, that not every engineer follows this path — many compare RGB values directly, without accounting for the physics of the display device or viewing distance. This is true, for example, of SSIM, which is only a luminance metric in any case.

The display model runs in both directions

A calibrated display model is also used to go the other way: turning an ordinary image file into an estimated scene spectral radiance, via sceneFromFile. The display's primaries and white point determine the radiance sceneFromFile assigns to each RGB value — see Scene Radiance for the full explanation and worked example, including how two different display models produce two different estimated scenes from the same image file.

Recommended tutorials and examples

Related FISE concepts

The online Foundations of Image Systems Engineering (FISE) develops display colorimetry and the display-referred color spaces used here as conceptual background.