tryby mieszania

Tryby mieszania decydują, jak wejście i wyjście modułu zostaną połączone (zmieszane), zanim ostateczne wyjście modułu zostanie przekazane do kolejnego modułu w kolejce przetwarzania.

Klasyczne tryby mieszania, zaprojektowane dla ekranocentrycznego RGB (i ograniczone pomiędzy 0 i 100%), definiują w swoich algorytmach punkt podparcia jako 50% (szarość) i 100% (biel), w zależności od trybów mieszania. Ponieważ scenocentryczne RGB nie jest przedmiotem tych ograniczeń, punkty te muszą być wyraźnie określone przez użytkownika podczas jego operacji mieszania w scenocentrycznej przestrzeni barwnej RGB. Dodatkowy parametr punkt podparcia mieszania pojawia się, kiedy używasz jednego z tych trybów w tej przestrzeni barwnej. Efekt zależy od użytego operatora. Przykładowo wartości powyżej progu podparcia mogą zostać rozjaśnione, a wartości poniżej – zaciemnione (i na odwrót).

Ostateczne wyjście modułu obliczane jest na każdy piksel indywidualnie, w następujący sposób:

ostateczne_wyjście = (1.0 - krycie) * wejście_modułu + krycie * wyjście_zmieszane

gdzie wyjście_zmieszane oznacza kombinację zdjęć wejściowego i wyjściowego, w zależności od trybu mieszania (p. poniżej), a krycie oznacza przeliczoną dla każdego piksela kombinację parametrów maski i globalnego krycia. Krycie 0% przekazuje obraz identyczny do wejściowego obrazu modułu.

Przycisk “odwrócenia” blend-reverse zamienia role obrazów wejściowego i wyjściowego w obliczeniach poszczególnych pikseli.

ostateczne_wyjście = (1.0 - krycie) * wyjście_modułu + krycie * wejście_zmieszane

gdzie wejście_zmieszane oznacza kombinację zdjęć wejściowego i wyjściowego, w zależności od trybu mieszania, gdzie odwołania do wyjścia i wejścia są zamienione miejscami. W odwróconychtrybach mieszania, krycie 0% przekazuje obraz identyczny do wyjściowego obrazu modułu.

🔗tryby zwykłe

zwykły
Najczęściej używany tryb mieszania, tryb “zwykły” po prostu miesza wejście i wyjście w stopniu określonym przez parametr krycia. Ten tryb używany jest najczęściej do osłabienia siły działania modułu poprzez krycie. Korzystamy ze niego również często podczas selektywnego stosowania efektów modułu w maskach. Tryb znany jest również jako operator “ponad” (ang. over) w mieszaniu alpha Portera-Duffa (zob. [https://en.wikipedia.org/wiki/Alpha_compositing] (ang.))
zwykły ograniczony
tryb niedostępny w przestrzeni barwnej “RGB scena”
Ten tryb mieszania jest podobny do zwykłego poza faktem, że dane wejściowe i wyjściowe są przycięte do określonego zakresu wartości min/maks. Wartości spoza zakresu są blokowane i nie przekazywane do kolejnych modułów. Pomaga to niekiedy w uniknięciu artefaktów. W większości przypadków (np. wysoko nasyconych, ekstremalnych światłach) lepiej jest pozwolić takim wartościom przejść dalej w ciągu obróbki, żeby obrobić je prawidłowo później. W takim przypadku lepiej jest skorzystać z trbu “zwykłego”.

🔗tryby arytmetyczne

suma
Dodaje wartości pikseli dla obrazu wejściowego i wyjściowego, rozjaśniając wyjście. Piksele mieszane w przestrzeni “RGB: scena” będą mieć wartość wyjściową przemnożoną proporcjonalnie do wartości punktu podparcia mieszania.
różnica
Odejmuje wyjściową wartość piksela od wartości wejściowej. Mieszane w przestrzeni “RGB (scena)” wartości pikseli dla obrazu wyjściowego mnożone są przez wartość proporcjonalną do punktu podparcia mieszania. Wartości pikseli mniejsze od zera ustawiane są na zero.
mnożenie
Mnoży wejściową i wyjściową wartość piksela. Piksele mieszane w przestrzeniach barw dla wyświetlaczy mają wartość pomiędzy 0 a 1.0, wynikowe wyjście będzie więc obcięte i zawsze ciemniejsze. Mieszana w przestrzeni “RGB (scena)” wartość ta mnożona jest następnie przez wartość proporcjonalną do punktu podparcia mieszania. W takim przypadku wartości mogą być większe od 1.0, a przez to rozjaśniać bazowy obraz. Może to rodzić skutki uboczne, takie jak aktualizacja punktu bieli w module krzywej filmowej.

Tryb mieszania “mnożenie” symuluje działanie optycznego filtru połówkowego, którego intensywność definiowana jest wyjściem modułu. Ma wiele zastosowań, od poświaty i wzmocnień lokalnego kontrastu (kiedy używany z rozmyciem bądź filtrem dolnoprzepustowym) do rozjaśniania/wypalania i wzmocnień globalnego kontrastu (kiedy użyty jest z korektą ekspozycji). Punkt podparcia określa wyjściowy próg intensywności pomiędzy zaciemnianiem a rozjaśnianiem (każda wartość RGB poniżej punktu podparcia zaciemni piksel).

dzielenie
Dzieli wejściową wartość pikseli przez wartości wyjściowe. Wartości pikseli obrazu wyjściowego, mieszanych w przestrzeni “RGB (scena)”, są następnie mnożone przez wartość, proporcjonalną do punktu podparcia mieszania.

Ponieważ jest to tryb odwrotny do mnożenia, zaciemni on te obszary, które mnożenie rozjaśnia, i odwrotnie. Wszystko inne działa dokładnie tak samo.

przesiewanie
tryb niedostępny w przestrzeni “RGB (scena)"
Zamienia wartości pikseli wejścia i wyjścia, mnoży je razem i odwraca wynik. Generuje to mniej więcej wynik odwrotny do trybu “mnożenia” – wynikowe zdjęcie jest na ogół jaśniejsze, a czasem “wyprane” z kolorów.
średnia
Zwraca średnią arytmetyczną wejściowych i wyjściowych wartości pikseli.
rożnica
Zwraca bezwzględną różnicę pomiędzy wejściową a wyjściową wartością piksela.
średnia geometryczna
Zwraca pierwiastek kwadratowy z iloczynu wartości pikseli wejścia i wyjścia.
średnia harmoniczna
Zwraca iloczyn wejściowych i wyjściowych wartości pikseli, pomnożony przez 2 i podzielony przez ich sumę.

🔗praca z kolorem

Poniższe tryby nie są dostępne w przestrzeni mieszania “RGB (scena)”, ponieważ zakładają one “50% środszarości”, które to założenie ma zastosowanie tylko dla przestrzeni nieliniowych bądź typu “ekran”.

pokrywanie
Ten tryb łączy tryby mieszania “mnożenie” i “przesiewanie”: te części wejścia, gdzie wyjście jest jaśniejsze, staną się jaśniejsze. Części zdjęcia, gdzie wyjście jest ciemniejsze, staną się ciemniejsze. Śródszarości pozostaną niezmienione. Tryb często łączony jest z modułami filtra dolno- i górnoprzepustowego.
miękkie światło
Tryb podobny do “pokrywania” poza tym, że wyniki są bardziej miękkie i mniej jasne. Podobnie jak pokrywanie, tryb często łączony jest z modułami filtra dolno- i górnoprzepustowego.
twarde światło
Ten tryb nie jest spokrewniony z “miękkim światłem” niczym poza nazwą. Podobnie jak tryb pokrywania, jest on kombinacją trybów “mnożenia” i “przesiewania”, mając inny wpływ powyżej i poniżej śródszarości. Efekty trybu twardego światła bywają dość intensywne, więc na ogół stosuje się go ze zredukowanym kryciem.
światło jaskrawe
Ten tryb to ekstremalna wersja pokrywania / miękkiego światła. Wartości ciemniejsze od śródszarości są przyciemniane; wartości jaśniejsze od śródszarości są rozjaśniane. Prawdopodobnie będziesz potrzebował zmniejszyć siłę efektu poprzez zmniejszenie krycia.
światło liniowe
Ten tryb jest podobny do efektu “światła jaskrawego”.
światło punktowe
Ten tryb wykonuje jednoczesne mieszanie przyciemnianiem i rozjaśnianiem, usuwając śródtony. Może to objawiać się artefaktami, takimi jak łatki czy kleksy.

🔗tryby pracy z kolorem

🔗kanały Lab

Poniższe tryby mieszania dostępne są tylko w przestrzeni Lab:

jasność Lab
Miesza jasność kanałów wejściowego i wyjściowego, biorąc kanały kolorów (a i b) niezmienione z obrazu wejściowego. Przeciwnie do “jasności”, ten tryb mieszania nie przeprowadza żadnej konwersji przestrzeni barwnej ani nie obcina danych. W niektórych przypadkach ten tryb mieszania jest mniej podatny na tworzenie artefaktów, niż “jasność”.
Lab: kanał a
Miesza kanał Lab “a” z wejściowego i wyjściowego kanału, pozostawiając pozostałe kolory niezmienione z obrazu wejściowego.
Lab: kanał b
Miesza kanał Lab “b” z wejściowego i wyjściowego kanału, pozostawiając pozostałe kolory niezmienione z obrazu wejściowego.
kolor Lab
Miesza kanały koloru Lab (a i b) z obrazów wejściowego i wyjściowego, pozostawiając jasność niezmienną z obrazu wejściowego. Przeciwnie do “koloru”, ten tryb mieszania nie przeprowadza żadnej konwersji przestrzeni barwnej ani nie obcina danych. W niektórych przypadkach ten tryb mieszania jest mniej podatny na tworzenie artefaktów, niż “kolor”.

🔗kanały RGB

Poniższe dostępne są tylko dla mieszania w przestrzeniach barwnych RGB.

RGB: kanał czerwony
Miesza czerwony kanał z obrazów wejściowego i wyjściowego, pozostawiając pozostałe kanały niezmienne z obrazu wejściowego. Mieszany w przestrzeni barwnej “RGB (scena)”, kanał czerwony z obrazu wyjściowego mnożony jest przez wartość, proporcjonalną do punktu podparcia.
RGB: kanał zielony
Miesza zielony kanał z obrazów wejściowego i wyjściowego, pozostawiając pozostałe kanały niezmienne z obrazu wejściowego. Mieszany w przestrzeni barwnej “RGB (scena)”, kanał zielony z obrazu wyjściowego mnożony jest przez wartość, proporcjonalną do punktu podparcia.
RGB: kanał niebieski
Miesza niebieski kanał z obrazów wejściowego i wyjściowego, pozostawiając pozostałe kanały niezmienne z obrazu wejściowego. Mieszany w przestrzeni barwnej “RGB (scena)”, kanał niebieski z obrazu wyjściowego mnożony jest przez wartość, proporcjonalną do punktu podparcia.

🔗kanały HSV

Poniższe dostępne są tylko dla mieszania w przestrzeniach barwnych RGB (wyświetlanie).

jasność HSV
Miesza jasność z obrazów wejściowego i wyjściowego, pozostawiając niezmieniony kolor z obrazu wejściowego. W przeciwieństwie do “jasności” ten tryb nie powoduje przycięcia.
kolor HSV
Miesza kolor z obrazów wejściowego i wyjściowego, pozostawiając niezmienioną jasność z obrazu wejściowego. W przeciwieństwie do “koloru” ten tryb nie powoduje przycięcia.

🔗inne

jasność
Miesza jasność z obrazów wejściowego i wyjściowego, pozostawiając niezmienionym kolor i odcień z obrazu wejściowego.
chrominancja
Miesza chrominancję z obrazów wejściowego i wyjściowego, pozostawiając jasność i odcień obrazu wejściowego. Tryb korzysta ze współczynników RGB, podzielonych przez normę euklidesową.
rozjaśnianie
niedostępny w przestrzeni barwnej “RGB (scena)"
Porównuje wartości pikseli wejścia i wyjścia, zwracając jaśniejszą wartość.
przyciemnianie
niedostępny w przestrzeni barwnej “RGB (scena)"
Porównuje wartości pikseli wejścia i wyjścia, zwracając ciemniejszą wartość.
odcień
niedostępny w przestrzeni barwnej “RGB (scena)"
Miesza odcień z obrazów wejściowego i wyjściowego, pozostawiając niezmienione z wejściowego obrazu jasność i chrominancję.
kolor
niedostępny w przestrzeni barwnej “RGB (scena)"
Miesza kolor i odcień z obrazów wejściowych i wyjściowych, pozostawiając bez zmian jasność z obrazu wejściowego.

Uwaga: Kiedy moduły mocno modyfikują kolor (np. generując kolory komplementarne), ten tryb może spowodować dziwny kolorowy szum.

wyrównanie koloru
niedostępny w przestrzeni barwnej “RGB (scena)"
Niektóre moduły działają głównie na wartościach tonalnych obrazu, dostosowując przy tym nasycenie koloru (np. moduły poziomów oraz krzywej tonalnej. Ten tryb mieszania pobiera jasność z wyjścia modułu, a następnie miesza kolory z wejścia i wyjścia, umożliwiając kontrolę nad wyrównaniem koloru, dokonanym przez moduł.