kleurruimten van darktable
Invoerafbeeldingen zijn RGB-bestanden (zoals JPEG’s of TIFF’s) of camera-RAW’s. Beide slaan visuele informatie op als een combinatie van primaire kleuren (bijv. rood, groen en blauw) die samen een lichtemissie beschrijven die door een scherm moet worden nagebootst.
De volgende afbeelding illustreert dit concept.
De linkerkant van de afbeelding toont een gekleurd licht dat we digitaal moeten weergeven. We kunnen drie ideale kleurenfilters gebruiken om dit licht te ontleden in drie gekleurde primaire lichten met verschillende intensiteiten. Om het originele gekleurde licht van onze ideale ontbinding (zoals geïllustreerd in het midden van de afbeelding) opnieuw te creëren, hoeven we alleen die drie primaire lichten opnieuw te combineren door ze op te tellen.
Het moet mogelijk zijn om het originele gekleurde licht te reproduceren door een set witte lichten met de juiste intensiteit te nemen en die lichten door geschikte gekleurde filters te projecteren. Dit experiment kan thuis worden uitgevoerd met gels en dimbare witte lampen. Dit is ongeveer wat oude kleuren CRT-schermen deden en zo werken videoprojectoren nog steeds.
Bij fotografie wordt de eerste ontledingsstap uitgevoerd door de kleurenfilterreeks die bovenop de sensor van jouw camera zit. Deze ontleding is niet ideaal, dus het is niet mogelijk om de oorspronkelijke emissie precies na te bootsen met een simpele toevoeging – enige tussentijdse schaling is vereist om de drie intensiteiten aan te passen.
Op schermen worden de LED-lampen proportioneel gedimd aan elke intensiteit, en de emissies van de drie lampen worden fysiek toegevoegd om de oorspronkelijke emissie te reconstrueren. Digitale afbeeldingen slaan de intensiteiten van deze primaire lichten op als een set van drie getallen voor elke pixel, weergegeven aan de rechterkant van de bovenstaande afbeelding als grijstinten.
Hoewel een set weergave-intensiteiten eenvoudig kan worden gecombineerd om een origineel licht op een scherm te creëren (bijvoorbeeld als we een synthetisch beeld in de computer hebben gemaakt), heeft de set vastgelegde intensiteiten van een sensor enige schaal nodig om voor de schermlichttoevoeging de oorspronkelijke lichtemissie redelijk te reproduceren. Dit betekent dat elke set intensiteiten, uitgedrukt als een RGB-set, moet worden gekoppeld aan een set filters (of primaire LED-kleuren) die een kleurruimte definiëren - elke RGB-set heeft alleen zin met betrekking tot een kleurruimte.
We moeten niet alleen de vastgelegde intensiteiten temperen om ze weer optelbaar te maken, maar als we het oorspronkelijke licht opnieuw willen samenstellen op een scherm dat niet dezelfde gekleurde filters of primaire kleuren heeft als de ruimte waarin onze RGB-set thuishoort, moeten deze intensiteiten opnieuw worden geschaald om rekening te houden met de verschillende filters op het scherm. Het mechanisme voor deze schaal wordt beschreven in kleurprofielen, meestal opgeslagen in .icc
-bestanden.
Opmerking: Kleur is geen fysieke eigenschap van licht – het bestaat alleen in het menselijk brein, als een product van de ontbinding van een lichtemissie door de kegelcellen in het netvlies, in principe weer erg vergelijkbaar met het bovenstaande voorbeeld filteren. Een “RGB”-waarde moet worden opgevat als “lichtemissies gecodeerd op 3 kanalen verbonden met 3 primaire kleuren”, maar de primaire waarden zelf kunnen er anders uitzien dan wat mensen “rood”, “groen” of “blauw” zouden noemen.
De hier beschreven filters zijn overlappende banddoorlaatfilters. Omdat ze elkaar overlappen, zou het optellen ervan de energie van het oorspronkelijke spectrum niet behouden, dus (lang verhaal kort) we moeten ze naar beneden draaien met betrekking tot de reactie van de retinakegel
De meeste daadwerkelijke beeldverwerking van darktable vindt plaats in een grote RGB “werkprofiel”-ruimte, waarbij sommige (meestal oudere) modules intern werken in de CIELab 1976-kleurruimte (vaak gewoon “Lab” genoemd). De uiteindelijke uitvoer van de beeldverwerkingspijplijn bevindt zich opnieuw in een RGB-ruimte die is gevormd voor ofwel de monitorweergave of het uitvoerbestand.
Dit proces houdt in dat de pixelpijp twee vaste kleurconversiestappen heeft: ingaand kleurprofiel en [uitgaand kleurprofiel](.. /../module-reference/processing-modules/output-color-profile.md). Daarnaast is er de demozaïek stap voor onbewerkte afbeeldingen, waarbij de kleuren van elke pixel worden gereconstrueerd door interpolatie.
Elke module heeft een positie in de pixelpijp die aangeeft in welke kleurruimte de module leeft:
-
tot demozaïek : De onbewerkte beeldinformatie vormt nog geen “beeld” maar slechts “gegevens” over het door de camera vastgelegde licht. Elke pixel heeft een enkele intensiteit voor één primaire kleur, en primaire camera’s zijn heel anders dan primaire kleuren die worden gebruikt in modellen van het menselijk zicht. Houd er rekening mee dat sommige modules in dit deel van de pijp ook kunnen werken op niet-onbewerkte invoerafbeeldingen in RGB-indeling (met volledige informatie over alle drie de kleurkanalen).
-
tussen demozaïek en [ingaand kleurprofiel](../../module-reference/processing-modules/input-color-profile .md) : Afbeelding is in RGB-indeling binnen de kleurruimte van de specifieke camera of het invoerbestand.
-
tussen ingaand kleurprofiel en [uitgaand kleurprofiel](../../module-reference/processing-modules /output-color-profile.md) : Afbeelding bevindt zich in de kleurruimte die is gedefinieerd door het geselecteerde werkprofiel (standaard lineair Rec2020 RGB). Omdat darktable afbeeldingen verwerkt in 4x32-bit floating point buffers, kunnen we grote werkkleurenruimten aan zonder het risico te lopen strepen of toononderbrekingen te riskeren.
-
na uitgaand kleurprofiel : Afbeelding is in RGB-indeling zoals gedefinieerd door het geselecteerde ICC-beeldscherm- of uitvoerprofiel.