How it Works
HDR tonemapping compresses a scene's wide luminance range into the narrow range a display can show. The simulator generates synthetic HDR radiance maps for four scene types, then applies the selected operator in real-time.
Each pixel has a linear HDR luminance value L. The operator maps L → L' in [0,1], which is then gamma-encoded for display. Exposure EV shifts the input by 2^EV before mapping.
Frequently Asked Questions
What is HDR tonemapping?
HDR tonemapping converts a high dynamic range image (luminance ratios up to 100,000:1) into a low dynamic range image suitable for standard monitors (typically 100:1 contrast ratio), preserving perceptual detail across the entire range.
What is the Reinhard tonemapping operator?
The Reinhard operator maps luminance L to L/(1+L), a simple global operator that compresses highlights while preserving shadow detail. It is mathematically elegant but can produce slightly desaturated results in saturated scenes.
What makes ACES Filmic tonemapping special?
ACES (Academy Color Encoding System) Filmic uses an S-curve that mimics photographic film response. It clips bright highlights naturally and preserves color saturation better than simple Reinhard mapping, making it popular in game engines.
What is the Drago tonemapping operator?
The Drago operator uses logarithmic compression with an adaptive bias parameter. It is particularly effective for scenes with very high dynamic range and produces natural-looking results for outdoor photography.
How does gamma correction relate to tonemapping?
Gamma correction (typically gamma 2.2) converts linear light values to perceptually uniform display values. Tonemapping operators work in linear light space and gamma is applied as a final step before display.
What is exposure in tonemapping?
Exposure in tonemapping is a multiplier applied to the linear HDR image before the tone curve. Increasing exposure brightens the image overall, similar to extending shutter time in photography, expressed in EV (exposure value) stops.
What is local vs global tonemapping?
Global tonemapping applies the same curve to every pixel independently. Local tonemapping (like Durand) analyzes spatial neighborhoods to boost local contrast, revealing detail in both shadows and highlights simultaneously.
What is the Durand tonemapping operator?
The Durand bilateral tonemapping operator decomposes an image into a large-scale base layer and a detail layer using a bilateral filter. The base is compressed while the detail layer is preserved, enhancing local contrast.
Why do HDR images look flat on a standard monitor?
Standard monitors display about 8 bits per channel (256 levels), while HDR scenes may span 20+ stops of light. Without tonemapping, simply clamping values to 0-255 loses all highlight detail and appears washed out.
What is the key parameter in Reinhard tonemapping?
The key parameter (often called 'a', typically 0.18) controls the overall brightness target. Reinhard first maps the log-average luminance to this key value, then applies the L/(1+L) compression curve across the image.