Binnen tien minuten had ik m’n nieuwe camera zo ver dat de melding “overexposed” bij het histogram verscheen. Daarna heeft het nog drie maanden geduurd om aan dezelfde camera de mededeling “underexposed” te ontlokken. Ik begon te twijfelen. Niet aan mijn camera, maar aan mijn bovenkamer: het leek wel alsof een langere belichting veel meer verschuiving van het histogram tot gevolg had dan een kortere belichting. Dat kon ik niet zo goed verklaren, want alle beschrijvingen van het gedrag van sensoren waren éénsluidend: de sensor van een digitale camera reageert lineair op verandering van de hoeveelheid licht die op de sensor valt. Dan zou je toch mogen verwachten dat het effect op het histogram van korter belichten hetzelfde is als van langer belichten? En dat je daardoor in de loop der tijd ongeveer net zo veel onderbelichte opnamen produceert als overbelichte?
Na lang zoeken ben ik tot de conclusie gekomen dat beide beweringen kloppen. De sensor reageert lineair op de hoeveelheid aangeboden licht en het veranderen van de belichting heeft relatief meer effect op lichte partijen dan op schaduwpartijen; het risico van overbelichting is veel groter dan van onderbelichting. Hieronder heb ik de resultaten van mijn zoektocht op een rijtje gezet.
De ideale sensor
We beginnen bij de hoofdvraag: hoe reageert een sensor op verandering van de hoeveelheid licht die op de sensor valt.
We gaan voor dit gedachtenexperiment uit van een ideale sensor. Dat is een sensor die vanaf een bepaalde lichtsterkte de maximale outputspanning Vmax geeft. Onder dat maximum geeft de ideale sensor bij elke halvering van de lichtsterkte telkens de helft van de outputspanning V. Het mooie van een ideale sensor is dat het halveren van de lichtsterkte tot in het oneindige door kan gaan – het outputsignaal nadert asymptotisch tot 0. Een andere prettige bijkomstigheid van de ideale sensor is dat hij geen last heeft van ruis, hoe laag de outputspanning V ook wordt. Figuur 1 geeft het gedrag van de ideale sensor weer. Het valt niet te ontkennen: dit ziet er ernstig lineair uit.
De ideale sensor en het histogram
Wanneer we de lichtsterkte in Figuur 1 niet in cd/m2 uitdrukken maar in Exposure Value1), kunnen we in Figuur 2 zien hoe de output van onze ideale sensor varieert wanneer we de belichting met een of meerdere stops aanpassen. Méér licht geeft volgens deze grafiek een enorme toename van het outputsignaal, minder licht heeft relatief minder effect.
Om volledig te begrijpen wat het effect is van het veranderen van de belichting op een histogram moeten we het outputsignaal van de sensor nog converteren naar waarden tussen 0 en 255, zoals bij het berekenen van een preview-image in de camera gebeurt, of tijdens de raw-conversie in bijvoorbeeld Lightroom of Aperture. Als we uitgaan van conversie naar de sRGB color space, zoals de meeste camera’s die intern uitvoeren, kunnen we uit Figuur 3 aflezen hoe verandering van de belichting doorwerkt in het histogram2).
Conclusies
Ondanks het feit dat een sensor lineair reageert op wijziging van de lichtsterkte, resulteert één stop langer belichten in een toename van de grijswaarde van een lichte partij van 186 naar 255, terwijl één stop korter belichten resulteert in een afname van de grijswaarde van een schaduwpartij van bijvoorbeeld 28 naar 21. Oftewel, het veranderen van de lichtsterkte heeft een veel grotere invloed op de rechterkant van het histogram dan op de linkerkant.
Vooral dit laatste statement moet qua diepzinnigheid niet worden onderschat. Zo betekent verdubbelen van lichtsterkte bijvoorbeeld een vermenigvuldiging van de luminantie of reflectie met 2. In een 2.2 gamma color space, waar sRGB veel van weg heeft, komt dat overeen met een 2^(1/2.2) = 1.37 vermenigvuldigingsfactor voor alle grijswaarden. En geloof het of niet, maar die tikt voor hoge grijswaarden (de lichte partijen) heel wat harder aan dan voor lage grijswaarden (de schaduwpartijen). Nogal klontjes dus dat de rechterkant van het histogram sterker verandert dan de linkerkant…
References and notes
1. Wikipedia: Exposure Value
2. In its most simple form, pixel value in sRGB = 1.055 * ((V/Vmax) ^ (1/2.4)) – 0.055. See also Wikipedia: sRGB