Schermen en de meeste bestandsindelingen voor afbeeldingen kunnen alleen RGB-intensiteiten coderen die binnen een bepaald bereik liggen. Afbeeldingen die zijn gecodeerd op 8 bits kunnen bijvoorbeeld alleen waarden bevatten van 0 tot 255, afbeeldingen op 10 bits van 0 tot 1023, enzovoort… Grafische standaarden stellen dat het maximum van dat bereik, ongeacht de werkelijke waarde, altijd de maximale helderheid die het weergavemedium kan weergeven, meestal tussen 100 en 160 Cd/m² (of nits), afhankelijk van de werkelijke standaard. Over het algemeen noemen we dit maximum “100 % scherm-gerefereerd”. Het minimum van het bereik, gecodeerd met 0, ongeacht de gebruikte bitdiepte, wordt dan “0 % scherm-gerefereerd”. 100% codeert voor puur wit, 0% codeert voor puur zwart.

Dit is een beperking voor beeldverwerkingstoepassingen, omdat het betekent dat elke pixel die buiten dit bereik ligt, wordt bijgesneden tot de dichtstbijzijnde grens, wat resulteert in niet-herstelbaar verlies van gegevens (kleuren en/of texturen).

Ook beeldverwerkingssoftware was lange tijd om technische redenen aan deze beperking gebonden, en sommige zijn dat nog steeds, maar nu door ontwerpkeuze. Als gevolg hiervan zouden ze de RGB-intensiteiten afsnijden op 100 % scherm-gerefereerd tussen beeldbewerkingen.

Ansel gebruikt rekenkunde met floating-point binnen de kleurenpijplijn, wat betekent dat het elke RGB-waarde intern kan verwerken, zelfs die buiten het scherm-gerefereerde bereik, zolang het maar positief is. Pas helemaal aan het einde van de pijplijn, voordat de afbeelding wordt opgeslagen in een bestand of wordt verzonden om weer te geven, worden de RGB-waarden indien nodig afgekapt.

Pixels die waarden buiten het weergavebereik kunnen aannemen, zouden “onbegrensde kleuren” hebben. Men zou ervoor kunnen kiezen om die waarden bij elke verwerkingsstap vast te zetten (d.w.z. te beperken) tot het toegestane bereik of ervoor kiezen om ermee door te gaan en ze pas bij de laatste stap in de pijplijn vast te zetten. Het is echter gebleken dat de verwerking minder vatbaar is voor artefacten als de onbegrensde kleuren niet worden vastgezet maar worden behandeld zoals alle andere kleurgegevens.

At the end of the pipeline, modules like filmic rgb can help you to remap RGB values to the display-referred range while maximizing the data preservation and avoiding hard clipping, which is usually not visually pleasing.

However, at all times in the pipeline, you must ensure that you do not create negative RGB values. RGB intensities encode light emissions and negative light does not exist. Those modules that rely on a physical understanding of light to process pixels will fail if they encounter a non-physical light emission. For safety, negative RGB values are still clipped whenever they might make the algorithms fail, but the visual result might look degraded. Negative values can be produced when abusing the black level in exposure or the offset in color balance RGB and care should be taken when using these modules.