A fully-featured color-space correction, white balance adjustment and channel mixer module.

Ten prosty, ale potężny moduł może być użyty na kilka poniższych sposobów:

  • To adjust the white balance (chromatic adaptation), working in tandem with the white balance module. Here, the white balance module makes some initial adjustments (required for the demosaic module to work effectively), and the color calibration module then calculates a more perceptually-accurate white balance after the input color profile has been applied.

  • As a simple RGB channel mixer, adjusting the R, G and B output channels based on the R, G and B input channels, to perform cross-talk color-grading.

  • To adjust the color saturation and brightness of the image, based on the relative strength of the R, G and B channels of each pixel.

  • To produce a grayscale output based on the relative strengths of the R, G and B channels, in a way similar to the response of black and white film to a light spectrum.

  • To improve the color accuracy of the input color profile using a color checker chart.

Balans bieli w zakładce CAT (Transformacji adaptacji chromatycznej, ang. Chromatic Adaptation Transformation)

Adaptacja chromatyczna ma na celu przewidzieć, jak wszystkie powierzchnie na planie wyglądałyby oświetlone przez inne źródło światła. Tak naprawdę potrzebujemy określić, jak te powierzchnie wyglądałyby oświetlone światłem monitorowym, w celu dopasowania wszystkich kolorów na scenie do zmiany źródła światła. Balans bieli ma z kolei na celu sprawienie, aby wszystkie szarości były naprawdę neutralne (R = G = B), ale nie zwraca uwagi na pozostałą część zakresu kolorów. Ustawienie balansu bieli jest więc tylko częściową adaptacją chromatyczną.

Adaptacja chromatyczna kontrolowana jest z poziomu zakładki Chromatic Adaptation Transformation (CAT) modułu kalibracji koloru. Jeśli wykonujemy ją w ten sposób, potrzebujemy dodatkowo modułu balansu bieli; jest on potrzebny do przeprowadzenia operacji podstawowego balansu bieli (w połączeniu z parametrami z modułu profilu koloru wejściowego). Ten techniczny balans bieli (tryb “referencyjny aparatu”) jest płaskim ustawieniem sprawiającym, że szarości oświetlone standardowym źródłem światła D65 nabierają achromatycznego wyglądu i czyniącym proces demozaikowania dokładniejszym, ale nie dokonującym żadnej percepcyjnej adaptacji sceny. Faktyczna adaptacja przeprowadzana jest następnie w module kalibracji koloru, pod koniec korekcji przeprowadzanych modułami balansu bieli i profilu kolor wejściowego. Z tego też względu odradzamy używanie dedykowanych matryc w module profilu koloru wejściowego. Dodatkowo współczynniki RGB w module balans bieli muszą być dokładne, aby moduł ten działał w przewidywalny sposób.

Moduły kalibracji koloru oraz _balansu bieli_mogą być stosowane automatycznie w celu wykonania adaptacji chromatycznej dla nowych zdjęć poprzez ustawienie opcji organizacji pracy adaptacji chromatycznej (ustawienia > przetwarzanie > automatycznie aplikuj domyślne ustawienia adaptacji chromatycznej) na “nowy”. Jeśli wolisz wykonać całość balansu bieli wewnątrz modułu balansu bieli, wybierz ustawienie “dawny”. Wybór żadnej z tych opcji nie uniemożliwia użycia innych modułów (takich jak balans kolorów rgb RGB) na późniejszych etapach kolejki przetwarzania w celu zastosowania kreatywnej korekty barwnej.

Domyślnie kalibracja koloru wykonuje adaptację chromatyczną poprzez:

  • reading the RAW file’s Exif data to fetch the scene white balance set by the camera,
  • adjusting this setting using the camera reference white balance from the white balance module,
  • further adjusting this setting with the input color profile in use (standard matrix only).

Dla zachowania spójności domyślne ustawienia modułu kalibracji koloru zakładają, że w module wejściowego profilu koloru korzystamy ze standardowej macierzy – wszystkie ustawienia niestandardowe w tym module zostaną zignorowane. Domyślne wartości modułu kalibracji koloru potrafią jednak odczytywać każdy automatycznie zastosowany preset modułu balansu bieli.

It is also worth noting that, unlike the white balance module, color calibration can be used with masks. This means that you can selectively correct different parts of the image to account for differing light sources.

To achieve this, create an instance of the color calibration module to perform global adjustments using a mask to exclude those parts of the image that you wish to handle differently. Then create a second instance of the module reusing the mask from the first instance (inverted) using a raster mask.

praca z kartą CAT

Domyślny kolor oświetlenia i przestrzeń barwna, użyte do adaptacji chromatycznej, inicjalizowane są wartościami metadanych Exif z pliku RAW. Do ich ręcznego ustawienia służą cztery opcje w zakładce CAT:

  • Use the color picker (to the right of the color patch) to select a neutral color from the image or, if one is unavailable, select the entire image. In this case, the algorithm finds the average color within the chosen area and sets that color as the illuminant. This method relies on the “gray-world” assumption, which predicts that the average color of a natural scene will be neutral. This method will not work for artificial scenes, for example those with painted surfaces.

  • Select “(AI) detect from edges”, which uses a machine-learning technique to detect the illuminant using the entire image. This algorithm finds the average gradient color over the edges in the image and sets that color as the illuminant. This method relies on the “gray-edge” assumption, which may fail if large chromatic aberrations are present. As with any edge-detection method, it is sensitive to noise and poorly suited to high-ISO images, but it is very well suited for artificial scenes where no neutral colors are available.

  • Select “(AI) detect from surfaces”, which combines the two previous methods, also using the entire image. This algorithm finds the average color within the image, giving greater weight to areas where sharp details are found and colors are strongly correlated. This makes it more immune to noise than the edge variant and more immune to legitimate non-neutral surfaces than the naïve average, but sharp colored textures (like green grass) are likely to make it fail.

  • Select “as shot in camera” to restore the camera defaults and re-read the RAW Exif.

Kolorowa łatka pokazuje kolor aktualnie obliczonego iluminatora rzutowanego na przestrzeń sRGB. Celem algorytmu adaptacji chromatycznej jest przekształcenie tego koloru w czystą biel, co niekoniecznie oznacza przesunięcie obrazu w kierunku jego percepcyjnego odpowiednika. Jeśli iluminator jest prawidłowo ustawiony, obraz będzie miał taki sam odcień, jak pokazano na kolorowej łatce, gdy moduł jest wyłączony.

Po lewej stronie kolorowej łatki znajduje się przybliżenie CCT (skorelowanej temperatury koloru). Jest to temperatura, wyrażona w stopniach Kelvina, która jest najbliższa używanego oświetlenia. W większości programów do przetwarzania obrazu balans bieli zwykle ustawia się za pomocą kombinacji temperatury i odcienia. Jednakże, gdy źródło światła jest dalekie od światła dziennego, CCT staje się niedokładne i nieistotne, a CIE (Międzynarodowa Komisja ds. Oświetlenia) odradza jego stosowanie w takich warunkach. Odczyt CCT informuje o najbliższym znalezionym dopasowaniu CCT:

  • When the CCT is followed by “(daylight)”, this means that the current illuminant is close to an ideal daylight spectrum ± 0.5 %, and the CCT figure is therefore meaningful. In this case, you are advised to use the “D (daylight)” illuminant.
  • When the CCT is followed by “(black body)”, this means that the current illuminant is close to an ideal black body (Planckian) spectrum ± 0.5 %, and the CCT figure is therfore meaningful. In this case, you are advised to use the “Planckian (black body)” illuminant.
  • When the CCT is followed by “(invalid)”, this means that the CCT figure is meaningless and wrong, because we are too far from either a daylight or a black body light spectrum. In this case, you are advised to use the custom illuminant. The chromatic adaptation will still perform as expected (see the note below), so the “(invalid)” tag only means that the current illuminant color is not accurately tied to the displayed CCT. This tag is nothing to be concerned about – it is merely there to tell you to stay away from the daylight and planckian illuminants because they will not behave as you might expect.

W przypadku zastosowania jednej z powyższych metod wykrywania oświetlenia, moduł sprawdza, gdzie znajduje się obliczone oświetlenie, korzystając z dwóch wyidealizowanych widm (światła dziennego i ciała doskonale czarnego) i wybiera najdokładniejszy model widma do zastosowania w parametrze oświetlenie. Interfejs użytkownika zmieni się odpowiednio:

  • A temperature slider will be provided if the detected illuminant is close to a D (daylight) or Planckian (black body) spectrum, for which the CCT is meaningful.
  • Hue and chroma sliders in CIE 1976 Luv space are offered for the custom illuminant, which allows direct selection of the illuminant color in a perceptual framework without any intermediate assumption.

Uwaga: Wewnętrznie oświetlenie jest reprezentowane przez jego bezwzględne współrzędne chrominancji w przestrzeni kolorów CIE xyY. Opcje wyboru oświetlenia w module są jedynie interfejsami do ustawienia tej chrominancji na podstawie rzeczywistych relacji i mają na celu przyspieszenie tego procesu. Dla algorytmu nie ma znaczenia, czy CCT jest oznaczony jako „nieprawidłowy” – oznacza to po prostu, że związek między CCT a odpowiednimi współrzędnymi xyY nie jest fizycznie dokładny. Niezależnie od tego ustawiony kolor dla oświetlenia, wyświetlany w łatce, zawsze będzie honorowany przez algorytm.


Podczas przełączania z jednego oświetlenia na drugie, moduł próbuje jak najdokładniej przetłumaczyć poprzednie ustawienia na nowe źródło światła. Przełączenie z dowolnego oświetlenia na niestandardowy całkowicie zachowuje ustawienia, ponieważ niestandardowy oświetlacz jest przypadkiem ogólnym. Przełączanie między innymi trybami lub z trybu niestandardowego na dowolny inny nie zachowa dokładnie ustawień z poprzedniego trybu z powodu błędów zaokrąglania.

Dostępne są inne zakodowane na stałe oświetlenia (patrz poniżej). Ich wartości pochodzą ze standardowych źródeł światła CIE i są bezwzględne. Możesz ich użyć bezpośrednio, jeśli wiesz dokładnie, jakiego rodzaju żarówka została użyta do oświetlenia sceny i jeśli ufasz, że profil wejściowy aparatu i współczynniki referencyjne (D65) są dokładne. W przeciwnym razie zobacz uwagi poniżej.

kontrolki karty CAT

adaptacja
Robocza przestrzeń kolorów, w której moduł wykona transformację adaptacji chromatycznej i mieszanie kanałów. Dostępne są następujące opcje:
  • Bradford, liniowy (1985): Dokładna dla źródeł światła zbliżonych do światła dziennego i zgodne ze standardem ICC v4, ale daje kolory spoza gamutu dla trudniejszych źródeł światła.
  • CAT16 (2016): Domyślna i bardziej odporna na unikanie wyimaginowanych kolorów podczas pracy z szerokim gamutem lub nasyconymi kolorami cyjanowymi i fioletowymi. W większości przypadków jest dokładniejszy niż Bradford CAT.
  • Bradford, nieliniowy (1985): Czasami może dać lepsze wyniki niż wersja liniowa, ale bywa zawodna.
  • XYZ: Jest to najmniej dokładna metoda i generalnie nie jest zalecana z wyjątkiem celów testowania i debugowania.
  • brak (pomiń): Wyłącz wszelkie adaptacje i użyj roboczej przestrzeni RGB.
oświetlenie
Typ światła, zakładany do oświetlenia sceny. Wybierz spośród następujących:
  • jak potok przetwrzania (D50): Nie przeprowadza adaptacji chromatycznej w tej instancji modułu, ale po prostu wykonuje mieszanie kanałów, używając wybranej opcją adaptacji przestrzeni kolorów.
  • Standardowe źródło światła CIE: Wybierz jedno ze standardowych źródeł światła CIE (światło dzienne, żarowe, jarzeniowe, o równomiernej energii lub ciało doskonale czarne) lub niestandardowe źródło światła “oświetlenie LED”. Wszystkie te wartości są wstępnie obliczone – o ile czujnik aparatu jest odpowiednio wyprofilowany, można ich używać bez zmian. Dla oświetleń, które leżą w pobliżu miejsca Plancka, widoczna jest również dodatkowa kontrolka “temperatury” (p. niżej).
  • niestandardowy: Jeśli na obrazie dostępna jest neutralna szara próbka, kolor źródła światła można wybrać za pomocą próbnika kolorów lub ręcznie określić za pomocą suwaków odcienia i nasycenia (w percepcyjnej przestrzeni kolorów LCh). Próbka koloru obok próbnika kolorów pokazuje kolor obliczonego oświetlenia, użytego w kompensacji CAT. Próbnika kolorów można również użyć do ograniczenia obszaru używanego do wykrywania AI (poniżej).
  • (AI) wykryj z powierzchni obrazu: Algorytm ten uzyskuje średni kolor próbek obrazu, które mają wysoką kowariancję między kanałami chrominancji w przestrzeni YUV i wysoką wariancję wewnątrzkanałową. Innymi słowy, szuka on części obrazu, które wyglądają tak, jakby były szare, i odrzuca płaskie kolorowe powierzchnie, które mogą nie być szare. Odrzuca również szumy chromatyczne oraz aberracje chromatyczne.
  • (AI) wykryj z krawędzi obrazu: W przeciwieństwie do automatycznego równoważenia bieli modułu balansu bieli, które opiera się na założeniu „szarego świata”, ta metoda automatycznie wykrywa odpowiednie oświetlenie przy użyciu założenia „szarej krawędzi”, obliczając p-normę Minkowskiego (p = 8) laplacjana i próbując ją minimalizować. Oznacza to, że zakłada, że krawędzie powinny mieć ten sam gradient we wszystkich kanałach (krawędzie szare). Jest bardziej czuła na szum, niż poprzednia metoda wykrywania powierzchniowego.
  • jak z aparatu: Oblicza natężenie oświetlenia w oparciu o ustawienia balansu bieli, dostarczone przez aparat.
temperatura
Dostosowuje temperaturę barwową źródła światła. Przesuń suwak w prawo, aby uzyskać bardziej niebieskie oświetlenie, co sprawi, że obraz o balansie bieli będzie cieplejszy/bardziej czerwony. Przesuń suwak w lewo, aby uzyskać bardziej czerwone oświetlenie, co sprawia, że po kompensacji obraz wydaje się chłodniejszy/bardziej niebieski.

Ta kontrola jest przewidziana tylko dla oświetleń, które leżą w pobliżu miejsca Plancka i zapewnia precyzyjną regulację wzdłuż tego miejsca. W przypadku innych źródeł światła pojęcie “temperatury barwowej” nie ma sensu, dlatego nie ma suwaka temperatury.

odcień
Dla niestandardowego balansu bieli ustawia odcień koloru oświetlenia w przestrzeni kolorów LCh (pochodzącej z przestrzeni CIE Luv).
chrominancja
Dla niestandardowego balansu bieli ustawia chrominancję (lub nasycenie) koloru oświetlenia w przestrzeni kolorów LCh (pochodzącej z przestrzeni CIE Luv).
gamut compression
Most camera sensors are slightly sensitive to invisible UV wavelengths, which are recorded on the blue channel and produce “imaginary” colors. Once corrected by the input color profile, these colors will end up out of gamut (that is, it may no longer be possible to represent certain colors as a valid [R,G,B] triplet with positive values in the working color space) and produce visual artifacts in gradients. The chromatic adaptation may also push other valid colors out of gamut, at the same time pushing any already out-of-gamut colors even further out of gamut.
Gamut compression uses a perceptual, non-destructive, method to attempt to compress the chroma while preserving the luminance as-is and the hue as close as possible, in order to fit the whole image into the gamut of the pipeline working color space. One example where this feature is very useful is for scenes containing blue LED lights, which are often quite problematic and can result in ugly gamut clipping in the final image.
clip negative RGB from gamut
Remove any negative RGB values (set them to zero). This helps to deal with bad black level as well as the blue channel clipping issues that may occur with blue LED lights. This option is destructive for color (it may change the hue) but ensures a valid RGB output no matter what. It should never be disabled unless you want to take care of the gamut mapping manually and understand what you are doing. In that case, use the black level correction in the exposure module to get rid of any negative RGB (RGB means light, which is energy, and which should always be a positive quantity), then increase the gamut compression until no solid black patches remain in the image. Proper denoising may help getting rid of odd RGB values too. Note that this approach may still be insufficient to recover some deep and luminous shades of blue.

Note 1: It has been reported that some OpenCL drivers don’t play well when negative RGB values are present in the pixel pipeline, because many pixel operators use logarithms and power functions (filmic, color balance, all the CIE Lab <-> CIE XYZ color space conversions), which are not defined for negative numbers. Although the inputs are sanitized before sensitive operations, it is not enough for some OpenCL drivers, which will output isolated NaN (Not a Number) values. These NaN values may be subsequently spread by local filters (blurring and sharpening operations, like sharpness, local contrast, contrast equalizer, low pass, high pass, surface blur, and filmic highlights reconstruction), resulting in large black, gray or white squares.

We wszystkich tych przypadkach musisz włączyć opcję „odetnij ujemne wartości RGB z gamutu” w module kalibracji kolorów.

Uwaga (2): Częstym przypadkiem niepowodzenia algorytmów kolorów w kalibracji kolorów (zwłaszcza kompresji gamutu) są piksele, które mają wartość luminancji 0 (kanał Y przestrzeni XYZ CIE 1931), ale niezerowe wartości chromatyczności (kanały X i Z przestrzeni CIE 1931 XYZ). Ten przypadek jest liczbową osobliwością, która nie pasuje do fizycznej rzeczywistości (piksel bez luminancji nie powinien również mieć chromatyczności), spowoduje dzielenie przez zero w przestrzeniach kolorów xyY i Yuv, a w rezultacie stworzy wartości NaN RGB. Ten problem nie został rozwiązany w ramach kalibracji kolorów, ponieważ jest to objaw złego profilowania wejściowego i/lub złego poziomu punktu czerni i należy go rozwiązać ręcznie, dostosowując profil kolorów wejściowych za pomocą miksera kanałów lub w korekcji poziomu czerni modułu ekspozycji.


mieszanie kanałów

Pozostała część tego modułu to standardowy mikser kanałów, który pozwala dostosować wyjście R, G, B, kolorystykę, jasność i szarość modułu w oparciu o względną moc kanałów wejściowych R, G i B.

Miksowanie kanałów odbywa się w przestrzeni kolorów zdefiniowanej przez kontrolkę adaptacji na karcie CAT tab. Ze względów praktycznych te przestrzenie CAT są szczególnymi przestrzeniami RGB związanymi z fizjologią człowieka i proporcjonalnymi do emisji światła w scenie, ale nadal zachowują się w taki sam sposób, jak każda inna przestrzeń RGB. Użycie dowolnej z przestrzeni CAT może ułatwić proces strojenia miksera kanałów ze względu na ich powiązanie z fizjologią człowieka, ale możliwe jest również miksowanie kanałów w przestrzeni roboczej RGB kolejki przetwarzania poprzez ustawienie adaptacji na “brak (pomiń)”. Aby przeprowadzić miksowanie kanałów w jednej z adaptacji przestrzeni kolorów bez adaptacji chromatycznej, ustaw oświetlenie na “jak potok przetwarzania (D50)”.


Uwaga: Rzeczywiste kolory kolorów podstawowych CAT lub RGB używanych do miksowania kanałów, rzutowane na obszar wyświetlania sRGB, są tłem suwaków RGB, dzięki czemu możesz zobaczyć efekt przesunięcia kolorów, które się pojawi, dzięki zmienionym ustawieniom.


Miksowanie kanałów to proces, który definiuje współczynnik wzmocnienia/tłumienia dla każdego kanału jako proporcje wszystkich oryginalnych kanałów. Zamiast wprowadzać pojedynczą płaską korektę, która wiąże wartość wyjściową kanału z jego wartością wejściową (na przykład R_wy = R_we × korekcja), korekcja każdego kanału zależy od danych wejściowych wszystkich kanałów dla każdego piksela (na przykład R_wy = R_we × R_korekcja + G_we × G_korekcja + B_we × B_korekcja). W ten sposób kanały piksela współdziałają ze sobą (proces znany jako „przesłuch”), który jest odpowiednikiem obracania podstawowych kolorów przestrzeni kolorów w 3D. W efekcie jest to cyfrowa symulacja fizycznych filtrów kolorów.

Chociaż obracanie kolorów podstawowych w 3D jest ostatecznie równoznaczne z zastosowaniem ogólnej rotacji odcieni, związek między korekcjami RGB i wynikającą z nich percepcyjną rotacją odcieni nie jest bezpośrednio przewidywalny, co sprawia, że proces ten nie jest intuicyjny. „R”, „G” i „B” należy traktować jako mieszankę 3 świateł, które obracamy na kole w górę i w dół, a nie zestaw kolorów lub odcieni. Ponadto, ponieważ RGB nie rozdziela luminancji i chrominancji, ale jest konfiguracją oświetlenia addytywnego, kanał „G” jest silniej powiązany z percepcją luminancji przez człowieka niż kanały „R” i „B”. Wszystkie piksele mają niezerowy kanał G, co oznacza, że każda korekta kanału G prawdopodobnie wpłynie na wszystkie piksele.

Proces mieszania kanałów jest zatem powiązany z fizyczną interpretacją RGB (jako światła addytywnego), co sprawia, że doskonale nadaje się do gradacji kolorów podstawowych i korekcji oświetlenia, a także płynnie miesza zmiany kolorów. Jednak próba zrozumienia i przewidzenia tego z percepcyjnego punktu widzenia (jasności, odcienia i nasycenia) zakończy się niepowodzeniem i odradzamy ją.


Uwaga: Etykiety “R”, “G” i “B” na kanałach przestrzeni kolorów w tym module są jedynie konwencjami uformowanymi z przyzwyczajenia. Kanały te niekoniecznie wyglądają na “czerwone”, “zielone” i “niebieskie”, a użytkownikom odradza się próbowanie ich rozumienia na podstawie ich nazw. Jest to ogólna zasada, która dotyczy dowolnej przestrzeni RGB używanej w dowolnej aplikacji.


zakładki R, G i B

Na najbardziej podstawowym poziomie można myśleć o zakładkach R, G i B modułu kalibracji kolorów jako o rodzaju mnożenia macierzy między macierzą 3x3 a wartościami wejściowymi [R G B]. W rzeczywistości jest to bardzo podobne do tego, co robi profil kolorów ICC oparty na matrycy, z wyjątkiem tego, że użytkownik może wprowadzić współczynniki matrycy za pomocą interfejsu graficznego Ansel, zamiast odczytywać współczynniki z pliku profilu ICC.

1┌ R_wy ┐     ┌ Rr Rg Rb ┐     ┌ R_we ┐
2│ G_wy │  =  │ Gr Gg Gb │  X  │ G_we │
3└ B_wy ┘     └ Br Bg Bb ┘     └ B_we ┘

Jeśli na przykład, otrzymałeś macierz do przekształcenia jednej przestrzeni kolorów w inną, możesz wprowadzić współczynniki matrycy do miksera kanałów w następujący sposób:

  • select the R tab and then set the Rr, Rg & Rb values using the R, G and B input sliders
  • select the G tab and then set the Gr, Gg & Gb values using the R, G and B input sliders
  • select the B tab and then set the Br, Bg & Bb values using the R, G and B input sliders

Domyślnie funkcja miksowania w kalibracji kolorów po prostu kopiuje kanały wejściowe [RGB] bezpośrednio do pasujących kanałów wyjściowych. Jest to równoważne mnożeniu przez macierz jednostkową:

1┌ R_wy ┐     ┌ 1  0  0 ┐      ┌ R_we ┐
2│ G_wy │  =  │ 0  1  0 │   X  │ G_we │
3└ B_wy ┘     └ 0  0  1 ┘      └ B_we ┘

Jeśli chcesz bardziej intuicyjnie zrozumieć zachowanie suwaków miksujących na zakładkach R, G i B, rozważ następujące twierdzenia:

  • for the R destination channel, adjusting sliders to the right will make the R, G or B areas of the image more “red”. Moving the slider to the left will make those areas more “cyan”.
  • for the G destination channel, adjusting sliders to the right will make the R, G or B areas of the image more “green”. Moving the slider to the left will make those areas more “magenta”.
  • for the B destination channel, adjusting sliders to the right will make the R, G or B areas of the image more “blue”. Moving the slider to the left will make those areas more “yellow”.

kontrolki zakładek R, G i B

Dla każdej zakładki R, G i B dostępne są następujące kontrolki:

wejście R/G/B
Określa, jak bardzo wejściowe kanały R, G i B wpływają na kanał wyjściowy w zależności od rozważanej zakładki.
normalizuj kanały
Zaznacz to pole wyboru, aby znormalizować współczynniki i spróbować zachować ogólną jasność tego kanału w końcowym obrazie w porównaniu z obrazem wejściowym.

zakładki nasycenia i jasności

Jasność i nasycenie kolorów pikseli na obrazie można również regulować w oparciu o kanały wejściowe R, G i B. Wykorzystują one ten sam podstawowy algorytm, którego moduł _krzywej filmowej rgb używa do mapowania tonów (co zachowuje proporcje RGB) i do nasycenia śródtonów (poprzez ich podbicie).

algorytm nasycenia
Ta kontrolka pozwala na aktualizację algorytmu nasycenia do nowej wersji 2021, dla edycji wykonanych przed darktable 3.6 – nie pojawi się ona dla edycji, które używają już najnowszej wersji.

kontrolki zakładki nasycenia koloru

wejście R/G/B
Dostosowuje nasycenie kolorów pikseli w oparciu o kanały R, G i B tych pikseli. Na przykład dostosowanie suwaka wejście R wpłynie na nasycenie kolorów pikseli zawierających dużo „R” więcej niż pikseli zawierających tylko niewielką ilość „R”.
normalizuj kanały
Zaznacz to pole wyboru, aby spróbować utrzymać ogólne nasycenie na stałym poziomie między obrazami wejściowym i wyjściowym.

kontrolki zakładki jasności

wejście R/G/B
Dostosowuje jasność niektórych kolorów obrazu w oparciu o kanały R, G i B tych kolorów. Na przykład, dostosowanie suwaka wejście R wpłynie na jasność kolorów zawierających dużo kanału R znacznie więcej niż kolorów zawierających tylko niewielką ilość kanału R. Podczas przyciemniania/rozjaśniania piksela zachowany jest stosunek kanałów R, G i B dla tego piksela, aby zachować odcień.
normalizuj kanały
Zaznacz to pole wyboru, aby spróbować utrzymać stałą ogólną jasność między obrazami wejściowym i wyjściowym.

zakładka szarości

Innym bardzo użytecznym zastosowaniem kalibracji kolorów jest możliwość mieszania ze sobą kanałów w celu uzyskania wyjścia w skali szarości – obrazu monochromatycznego. Wybierz kartę szary i ustaw suwaki R, G i B aby kontrolować, w jakim stopniu każdy kanał ma wpływ na jasność wyjścia. Odpowiada to następującemu mnożeniu macierzy:

1SZARY_wy  =   [ r  g  b ]  X  ┌ R_we ┐
2                              │ G_we │
3                              └ B_we ┘

W przypadku odcieni skóry względne wagi trzech kanałów będą miały wpływ na poziom szczegółowości obrazu. Nałożenie większej wagi na R (np. [0,9, 0,3, -0,3]) spowoduje wygładzenie odcieni skóry, podczas gdy podkreślenie G (np. [0,4, 0,75, -0,15]) uwydatni więcej szczegółów. W obu przypadkach kanał B jest redukowany, aby uniknąć podkreślania niepożądanej tekstury skóry.

kontrolki zakładki szarości

wejście R/G/B
Określa, w jakim stopniu każdy z kanałów R, G i B ma wpływ na poziom szarości wyjścia. Obraz zostanie przekonwertowany na monochromatyczny tylko wtedy, gdy trzy suwaki sumują się do pewnej wartości niezerowej. Dodanie większej ilości B spowoduje uwydatnienie większej liczby szczegółów, a dodanie większej ilości R wygładzi odcienie skóry.
normalizuj kanały
Zaznacz tę opcję, aby spróbować zachować stałą jasność ogólną, niezależnie od aktualnej wartości suwaków.

spot color mapping

The spot mapping feature is designed to help with batch-editing a series of images in an efficient way. In this scenario, you typically develop a single reference image for the whole batch and then copy&paste the development stack to all of the other images in the batch.

Unfortunately, the light color temperature often changes slightly between shots, even within the same series captured in the same conditions. This can be the result of a cloud passing by the sun in natural light, or a different ratio between colored bounce light and main light. Each image will still need some individual fine-tuning if you want a perfectly even look over the whole series, and this can be both time-consuming and frustrating.

Spot color mapping allows you to define a target chromaticity (hue and chroma) for a particular region of the image (the control sample), which you then match against the same target chromaticity in other images. The control sample can either be a critical part of your subject that needs to have constant color, or a non-moving and consistently-lit surface over your series of images.

The mapping process consists of two steps.

step 1: set the target

There are two ways of setting the target chromaticity for your control sample:

  1. if you know or expect an arbitrary color for the control sample (for example, a gray card, a color chart, a product or a logo of a specified color), you can set its L, h and c values directly, in Lch derived from CIE Lab 1976 space,
  2. if you simply want to match the development of your reference image, set the spot mode to measure, then enable the color picker (to the right of the color patch) and draw a rectangle over your control sample. The input column will then be updated with the L, h, c values of the control sample before the color correction, and the target column will show the resulting L, h, c values of the control sample after the current calibration setting is applied.

If you reset the L, h, c values, the default value is a neutral color at 50% lightness (middle-gray) – this can be useful to quickly set the average white balance of any image. If you want to match the control sample against neutral gray, you only need to reset the chroma slider because the lightness and hue settings have no effect on chromaticity for neutral grays.

Note that the target value is not reset when you reset the module itself, but is stored indefinitely in Ansel’s configuration and will be available on next launch as well as for the next image you develop.

The take channel mixing into account option lets you choose where the target is sampled. If disabled, the target color is measured immediately after the CAT (Chromatic Adaptation Transform) step, which takes place before any channel mixing. This means that if you have a calibrated profile in effect within the channel mixer, this profile will be discarded. If enabled, the target color is measured after the CAT and the channel mixing steps, including any calibrated profile. This is the recommended option for most use cases.


Note: If you are defining your target from a gray patch, you should know that the gray patch on color checkers is never entirely neutral. For example, Datacolor Spyder has a slightly warm gray (hue = 20°, chroma = 1.2) while X-Rite pre-2014 has a colder but more neutral gray (hue = 240°, chroma = 0.3) and X-Rite post-2014 is almost perfectly neutral (hue = 133°, chroma = 0.2). In general, it is not desirable to match the control sample against a perfectly neutral gray target, and it is actually wrong to do so when using gray cards and color checkers as a control sample.


step 2 : match the target

When you open a new image, the spot mode is automatically reset to correction. Using the color picker attached to the color patch, you can then directly reselect your control sample in the new image. The proper illuminant settings required for the control sample to match the memorized target chromaticity will be automatically computed, and the setting will be updated in the same operation.

The take channel mixing into account option will need to be set the same as when the measurement of the target was performed to ensure consistent results. Note that the target matching only defines the illuminant settings used in the Chromatic Adaptation Transform – it does not alter the channel mixer settings, since the calibration is handled in the color checker calibration tool. However, the channel mixer settings can be used or discarded in the computation of the illuminant settings, depending on this option.

This operation can be repeated as many times as you have images in your series with no further work.


Note: Perfectly matching your control sample against the target chromaticity may still not yield a similar perceptual result, even if the numbers are exactly the same. The ratio of lightness between the control sample and its surrounding, as well as the color contrasts at play in the frame, will alter the perception of colors in ways that are very difficult to model. To build an intuition of this problem, see the gray strawberries illusion .


wydobywanie ustawień z pomocą próbnika koloru

Ponieważ mikser kanałów jest zasadniczo macierzą RGB (podobną do profilu koloru wejściowego, używanego dla obrazów RAW), można go użyć do poprawy dokładności kolorów wejściowego profilu kolorów poprzez obliczenie ustawienia kalibracji kolorów ad hoc.

These computed settings aim to minimize the color difference between the scene reference and the camera recording in a given lighting situation. This is equivalent to creating a generic ICC color profile but here, the profile is instead stored as module settings that can be saved as presets or styles, to be shared and reused between images. Such profiles are meant to complement and refine the generic input profile but do not replace it.

Ta funkcja może pomóc w:

  • handling difficult illuminants, such as low CRI  light bulbs, for which a mere white balancing will never suffice,
  • digitizing artworks or commercial products where an accurate rendition of the original colors is required,
  • neutralizing a number of different cameras to the same ground-truth, in multi-camera photo sessions, in order to obtain a consistent base look and share the color editing settings with a consistent final look,
  • obtaining a sane color pipeline from the start, nailing white balance and removing any bounced-light color cast at once, with minimal effort and time.

obsługiwane wzorniki kolorystyczne

Aktualnie nie udostępniamy obsługi własnych wzorników, ale wspieramy obsługę ograniczonej liczby zweryfikowanych (od sprawdzonych producentów):

  • X-Rite / Gretag MacBeth Color Checker 24 (pre- and post-2014),
  • Datacolor SpyderCheckr 24 (pre- and post-2018),
  • Datacolor SpyderCheckr 48 (pre- and post-2018).

Odradzamy korzystanie z tanich, niemarkowych wzorników koloru, ponieważ wierność kolorów pomiędzy partiami nie może być osiągnięta za niską cenę. Niedokładne wzorniki koloru zaprzeczają idei kalibracji koloru i mogą tylko pogorszyć sprawę.

Wzorniki IT7 i IT8 nie są obsługiwane, ponieważ trudno je przenosić i nie można ich używać na miejscu w przypadku profili ad-hoc. Te wykresy lepiej nadają się do tworzenia ogólnych profili kolorów, wykonywanych przy użyciu standardowego źródła światła, na przykład z Argyll CMS .


Note: X-Rite changed the formula of their pigments in 2014 and Datacolor in 2018, which slightly altered the color of the patches. Both formulas are supported in Ansel, but you should be careful to choose the correct reference for your target. If in doubt, try both and choose the one that yields the lowest average delta E after calibration.


wymagania wstępne

W celu skorzystania z tej funkcji musisz zrobić zdjęcie testowe wspieranych wzorników, na miejscu, we właściwych warunkach oświetleniowych:

  • frame the chart in the center 50% of the camera’s field, to ensure that the image is free of vignetting,
  • ensure that the main light source is far enough from the chart to give an even lighting field over the surface of the chart,
  • adjust the angle between the light, chart and lens to prevent reflections and gloss on the color patches,
  • for the best quality profile you should capture an image with the appropriate brightness. To achieve this, take a few bracketed images (between -1 and +1 EV) of your color checker and load them into Ansel, ensuring that all modules between color calibration and output color profile are disabled. Choose the image where the white patch has a brightness L of 94-96% in CIE Lab space or a luminance Y of 83-88% in CIE XYZ space (use the global color picker). This step is not strictly necessary – alternatively you can take a single image and apply the exposure compensation as recommended in the profile report.

Jeśli warunki oświetleniowe są zbliżone do standardowego źródła światła od D50 do D65 (bezpośrednie światło naturalne, bez kolorowego światła odbitego), próbka kolorów może być użyta do stworzenia ogólnego profilu, który będzie odpowiedni dla każdego źródła światła dziennego po jedynie niewielkiej regulacji balansu bieli.

Jeśli warunki oświetleniowe są nietypowe i dalekie od standardowych źródeł światła, zdjęcie testera kolorów będzie można wykorzystać tylko jako profil ad hoc dla zdjęć zrobionych w tych samych warunkach oświetleniowych.

użycie

Ustawienia używane w kalibracji kolorów zależą od wybranej przestrzeni CAT i dowolnych ustawień kolorów zdefiniowanych wcześniej w rurze w ramach modułów balansu bieli i wejściowego profilu koloru. Jako takie, wyniki profilowania (np. współczynniki mieszania kanałów RGB) są ważne tylko dla sztywnego zestawu ustawień przestrzeni CAT, balansu bieli i wejściowego profilu koloru. Jeśli chcesz stworzyć ogólny styl ze swoim profilem, nie zapomnij, że będziesz musiał uwzględnić również ustawienia z tych modułów.

Aby stworzyć własny preset/styl profilu, wykonaj następujące kroki:

  1. Enable the lens correction module to correct any vignetting that might mislead the calibration,
  2. On the bottom of the color calibration module, click on the arrow near the calibrate with a color checker label, to show the controls,
  3. Pick the correct model and manufacturer of your color checker from the chart drop-down,
  4. In the image preview, an overlay of the chart’s patches will appear. Drag the corners of the chart so that they match the visual references (dots or crosses) around the target, to compensate for any perspective distortion,
  5. Click the refresh button to compute the profile,
  6. Check the Profile quality report. If it is “good”, you can click on the validation button. If not, try changing the optimization strategy and refresh the profile again.
  7. Save the profile in a preset or style, or simply copy & paste the module settings to all of the pictures taken under the same lighting conditions, from within the lighttable view or filmstrip.

Uwaga: Nie musisz używać standardowej matrycy w module wejściowego profilu koloru podczas wykonywania kalibracji, ale pamiętaj, że domyślny balans bieli „jak z aparatu” nie będzie działał poprawnie z żadnym innym profilem, i że będziesz musiał zawsze używać tego samego profilu wejściowego za każdym razem, gdy ponownie użyjesz takich ustawień kalibracji.


czytanie raportu profilu

Raport profilu pomaga ocenić jakość kalibracji. Ustawienia kalibracji kolorów są jedynie optymalizacją „najlepszego dopasowania” i nigdy nie będą w 100% dokładne dla całego spektrum kolorów. Dlatego musimy śledzić „jak niedokładny” jest, aby wiedzieć, czy możemy ufać temu profilowi, czy nie.

Jeśli użyjesz złych profili, może to przynieść więcej szkody, niż pożytku.

delta E i raport jakości

CIE delta E 2000  (ΔE) jest używana jako percepcyjna miara błędu między referencyjnym kolorem próbek a kolorem uzyskanym po każdym kroku kalibracji:

  • ΔE = 0 means that there is no error – the obtained color is exactly the reference color. Unfortunately, this will never happen in practice.
  • ΔE = 2.3 is defined as the Just Noticeable Difference (JND).
  • ΔE < 2.3 means that the average observer will not be able to tell the difference between the expected reference color and the obtained color. This is a satisfactory result.
  • ΔE > 2.3 means that the color difference between the expected reference and the obtained color is noticeable for the average observer. This is unsatisfactory but sometimes unavoidable.

Raport jakości śledzi średnią i maksymalną ΔE na wejściu modułu (zanim cokolwiek zostanie zrobione), po etapie adaptacji chromatycznej (tylko balans bieli) i na wyjściu modułu (balans bieli i mikser kanałów). Na każdym kroku ΔE powinno być niższe niż na poprzednim kroku, jeśli wszystko pójdzie zgodnie z planem.

dane profilu

The data generated by the profiling process comprises the RGB 3×3 matrix and the detected illuminant. These are expressed in the CAT adaptation space defined in the CAT tab and are provided in case you want to export these coefficients to other software. If the detected illuminant is daylight or black body, the matrix should be fairly generic and reusable for other daylight and black body illuminants with the addition of a small white balance adjustment.

wartości normalizacji

Są to ustawienia, które należy zdefiniować bez zmian dla parametrów ekspozycji i korekty poziomu czerni w module ekspozycji, aby uzyskać możliwie najmniejszy błąd w swoim profilu. Ten krok jest opcjonalny i jest przydatny tylko wtedy, gdy wymagana jest najwyższa precyzja, ale uważaj na fakt, że może generować to ujemne wartości RGB, które zostaną przycięte w różnych punktach kolejki przetwarzania.

nakładka

image

Nakładka wykresu wyświetla w środku każdej wstawki koloru koło, reprezentujące oczekiwaną wartość odniesienia tej wstawki, rzutowaną na przestrzeń RGB wyświetlacza. Pomaga to wizualnie ocenić różnicę między kolorem odniesienia a rzeczywistym bez konieczności przejmowania się wartościami ΔE. Ta wizualna wskazówka będzie wiarygodna tylko wtedy, gdy ustawisz moduł ekspozycji zgodnie z instrukcjami zawartymi w wartości normalizacji raportu profilu.

Po skalibrowaniu profilu niektóre kwadratowe próbki zostaną przecięte w tle jedną lub dwiema przekątnymi:

  • patches that are not crossed have ΔE < 2.3 (JND), meaning they are accurate enough that the average observer will be unable to notice the deviation,
  • patches crossed with one diagonal have 2.3 < ΔE < 4.6, meaning that they are mildly inaccurate,
  • patches crossed with two diagonals have ΔE > 4.6 (2 × JND), meaning that they are highly inaccurate.

Ta wizualna informacja zwrotna pomoże ci ustalić kompromis optymalizacji, aby sprawdzić, które kolory są mniej lub bardziej dokładne.

wzmocnienie profilu

Ponieważ każda kalibracja jest jedynie optymalizacją „najlepszego dopasowania” (przy użyciu metody ważonych najmniejszych kwadratów), niemożliwe jest, aby wszystkie łatki mieściły się w naszej tolerancji ΔE < 2,3. W związku z tym wymagany będzie pewien kompromis.

Parametr optymalizuj dla umożliwia zdefiniowanie strategii optymalizacji, która próbuje zwiększyć dokładność profilu w niektórych kolorach kosztem innych. Dostępne są następujące opcje:

  • none: Don’t use an explicit strategy but rely on the implicit stategy defined by the color checker manufacturer. For example, if the color checker has mostly low-saturation patches, the profile will be more accurate for less-saturated colors.
  • neutral colors: Give priority to grays and less-saturated colors. This is useful for desperate cases involving cheap fluorescent and LED lightings, having low CRI. However, it may increase the error in highly-saturated colors more than not having any profile.
  • saturated colors: Give priority to primary colors and highly-saturated colors. This is useful in product and commercial photography, to get brand colors right.
  • skin and soil colors, foliage colors, sky and water colors: Give priority to the chosen hue range. This is useful if the subject of your pictures is clearly defined and has a typical color.
  • average delta E: Attempt to make the color error uniform across the color range and minimize the average perceptual error. This is useful for generic profiles.
  • maximum delta E: Attempt to minimize outliers and large errors, at the expense of the average error. This can be useful to get highly saturated blues back into line.

Bez względu na to, co robisz, strategie, które faworyzują niskie średnie ΔE, będą zwykle miały wyższe maksymalne ΔE i na odwrót. Ponadto błękity są zawsze trudniejszym zakresem kolorów, aby uzyskać poprawność, więc kalibracja zwykle ogranicza się do ochrony błękitu kosztem wszystkiego innego lub wszystkiego innego kosztem błękitu.

Łatwość uzyskania prawidłowej kalibracji zależy od jakości oświetlenia sceny (należy zawsze preferować oświetlenia dzienne i wysokie CRI), jakości podstawowego wejściowego profilu koloru, kompensacji punktu czerni ustawionej w module ekspozycji, ale przede wszystkim na matematycznych właściwościach matrycy filtrów sensora kamery.

kontrola profilu

Możliwe jest użycie przycisku sprawdź wyjściową ΔE (pierwszy po lewej stronie, na dole modułu) w celu wykonania pojedynczego obliczenia ΔE wzornika kolorów w odniesieniu do danych wyjściowych modułu kalibracji kolorów. Można to wykorzystać na następujące sposoby:

  1. To check the accuracy of a profile calculated in particular conditions against a color checker shot in different conditions.
  2. To evaluate the performance of any color correction performed earlier in the pipe, by setting the color calibration parameters to values that effectively disable it (CAT adaptation to none, everything else set to default), and just use the average ΔE as a performance metric.

uwagi

Możliwość użycia standardowych oświetlaczy CIE i interfejsów opartych na CCT w celu zdefiniowania koloru oświetlacza zależy od dobrych wartości domyślnych dla standardowej matrycy w module wejściowego profilu koloru, jak również rozsądnych współczynników RGB w module balansu bieli.

Niektóre aparaty, zwłaszcza te firmy Olympus i Sony, mają nieoczekiwane współczynniki balansu bieli, które zawsze powodują, że wykryty CCT jest nieważny, nawet w przypadku prawdziwych źródeł światła dziennego. Ten błąd najprawdopodobniej pochodzi z problemów ze standardową matrycą wejściową, która jest pobierana z Adobe DNG Converter.

Możliwe jest złagodzenie tego problemu, jeśli masz ekran komputera skalibrowany do oświetlacza D65. Możesz to zrobić w następujący sposób:

  1. Display a white surface on your screen, for example by opening a blank canvas in any photo editing software you like
  2. Take a blurry (out of focus) picture of that surface with your camera, ensuring that you don’t have any “parasite” light in the frame, you have no clipping, and are using an aperture between f/5.6 and f/8,
  3. Open the picture in Ansel and extract the white balance by using the spot tool in the white balance module on the center area of the image (non-central regions might be subject to chromatic aberrations). This will generate a set of 3 RGB coefficients.
  4. Save a preset for the white balance module with these coefficients and auto-apply it to any color RAW image created by the same camera.