Strona główna Percepcja Stałość barwy i adaptacja chromatyczna

🎨 Stałość barwy i adaptacja chromatyczna

Adaptacja chromatyczna von Kriesa: skalowanie sygnałów czopków LMS według oszacowanego iluminantu. Teoria retinex: barwa powierzchni = stosunek współczynników odbicia sceny. Zobacz złudzenie sukienki i kontrast jednoczesny.

Percepcja2DŁatwy60 FPS
color-constancy ↗ Otwórz osobno
Interfejs samej symulacji jest w języku angielskim.

Jak to działa

Ta symulacja demonstruje adaptację chromatyczną von Kriesa. Zestaw kolorowych pól jest oświetlany kolorowym źródłem światła. Bez adaptacji kolory pól są zniekształcone przez iluminant. Dzięki adaptacji von Kriesa układ wzrokowy skaluje każdy kanał czopków (L, M, S) przez odwrotność oszacowanego koloru iluminantu, przywracając postrzegane kolory bliżej ich prawdziwych współczynników odbicia.

Tryb Retinex implementuje normalizację Landa i McCanna: każdy kanał jest dzielony przez maksimum tego kanału w całej scenie. Ponieważ zmiana iluminantu mnoży każdy kanał przez stałą, ta stała się znosi — surowy stosunek R/G danego pola przesuwa się 1,25× pod wpływem pokazanego ciepłego światła, jednak wartości znormalizowane metodą Retinex są identyczne pod obiema rodzajami światła, co pokazuje, że kolor jest właściwością stosunków odbicia, a nie bezwzględnych natężeń. Tryb złudzenia sukienki pokazuje te same niejednoznaczne piksele odjęte przy dwóch różnych założeniach dotyczących iluminantu: odjęcie ciepłego światła daje percepcję niebiesko-czarną, a odjęcie chłodnego (niebieskawego) światła daje percepcję biało-złotą.

von Kries: [L', M', S'] = [L/L₀, M/M₀, S/S₀]
Adapted RGB = T⁻¹ · diag(1/L₀, 1/M₀, 1/S₀) · T · RGB
Retinex (Land–McCann): L_c(x) = I_c(x) / max_scene I_c → illuminant scale k_c cancels
Grey World: [L₀, M₀, S₀] = mean([L, M, S]) over scene

Najczęściej zadawane pytania

Czym jest stałość barwy?

Stałość barwy to zdolność do postrzegania koloru obiektów jako względnie stabilnego pomimo zmian koloru oświetlającego światła. Na przykład czerwone jabłko wygląda na czerwone zarówno w żółtym świetle wnętrza, jak i w niebieskim świetle dziennym na zewnątrz, mimo że długości fal docierające do oka różnią się drastycznie.

Czym jest transformacja adaptacji chromatycznej von Kriesa?

Transformacja von Kriesa dostosowuje układ wzrokowy do koloru iluminantu, skalując niezależnie sygnały wyjściowe czopków LMS: L' = L/L₀, M' = M/M₀, S' = S/S₀, gdzie L₀, M₀, S₀ to odpowiedzi LMS na oszacowany iluminant. Normalizuje to scenę tak, jakby była oglądana w świetle białym o równej energii.

Czym jest teoria Retinex?

Teoria Retinex Landa zakłada, że percepcja koloru jest determinowana przez stosunki światła odbitego od powierzchni w scenie, a nie przez wartości bezwzględne. Układ wzrokowy oblicza jasność osobno w różnych pasmach długości fal, porównując każdy punkt z jego otoczeniem, a następnie łączy je w percepcję koloru.

Co spowodowało złudzenie „The Dress”?

Złudzenie sukienki (2015) pokazało sukienkę, którą część osób widziała jako niebiesko-czarną, a inni jako biało-złotą. Powstało ono, ponieważ układy wzrokowe różnych osób przyjmowały różne założenia dotyczące koloru iluminantu. Ci, którzy zakładali ciepły iluminant, odejmowali go i widzieli niebiesko-czarną, a ci, którzy zakładali chłodne światło, widzieli biało-złotą.

Czym jest jednoczesny kontrast barw?

Jednoczesny kontrast barw to zjawisko, w którym kolor wygląda inaczej w zależności od otaczających go kolorów. Szare pole wygląda lekko różowawo otoczone zielenią i lekko zielonkawo otoczone czerwienią. Hamowanie lateralne w układzie wzrokowym wzmacnia krawędzie i różnice między sąsiadującymi obszarami koloru.

Czym są czopki LMS?

Czopki L (długie), M (średnie) i S (krótkie) długości fali to trzy typy fotoreceptorów wrażliwych na kolor w ludzkiej siatkówce. Czopki L osiągają szczyt czułości przy około 560 nm (czerwień), czopki M przy około 530 nm (zieleń), a czopki S przy około 420 nm (niebieski). Cała percepcja koloru wynika z porównywania odpowiedzi tych trzech typów czopków.

Czym jest adaptacja chromatyczna?

Adaptacja chromatyczna to dostosowanie układu wzrokowego do koloru otaczającego iluminantu. Gdy wchodzisz do pomieszczenia oświetlonego ciepłym żółtym światłem, układ wzrokowy stopniowo zmniejsza czułość na żółte długości fal, dzięki czemu kolory wyglądają bliżej tego, jak wyglądają w neutralnym świetle dziennym. Dzieje się to w ciągu sekund do minut.

Jak mózg szacuje iluminant?

Mózg wykorzystuje kilka wskazówek: średni kolor sceny (założenie szarego świata), najjaśniejszy punkt (założenie białego świata), analizę opartą na krawędziach, pamięć sceny (wiedzę, że trawa jest zielona) oraz przestrzenny wzorzec kolorów w scenie (mapowanie gamutu).

Czym jest założenie szarego świata?

Założenie szarego świata to obliczeniowy algorytm stałości barwy, który zakłada, że średni współczynnik odbicia sceny jest neutralnie szary. Obliczając średnie wartości RGB obrazu i dzieląc każdy kanał przez tę średnią, szacujemy iluminant i korygujemy jego wpływ, sprawiając, że cała scena wygląda neutralnie.

Dlaczego stałość barwy czasami zawodzi?

Stałość barwy zawodzi, gdy układ wzrokowy otrzymuje niejednoznaczne lub mylące wskazówki dotyczące iluminantu. Silnie zabarwione cienie, jednolite iluminanty, nietypowe składy widmowe, bardzo jasne lub nasycone kolory lub sprzeczny kontekst mogą sprawić, że układ wzrokowy przyjmie błędne założenia dotyczące iluminantu, prowadząc do złudzeń kolorystycznych.

O tej symulacji

Ten symulator renderuje dziewięć referencyjnych pól kolorystycznych pod zabarwionym iluminantem, a następnie miesza korekcję von Kriesa, która dzieli każdy kanał przez kolor samego iluminantu przed przeskalowaniem — dokładnie tę samą normalizację kanał po kanale, jaką wykonuje Twój układ wzrokowy, aby jabłko wyglądało na czerwone zarówno w świetle świecy, jak i w świetle dziennym. Cztery tryby pozwalają porównać obok siebie surowe zniekształcenie przez iluminant, jednoczesny kontrast, słynne złudzenie sukienki oraz normalizację Retinex (każdy kanał podzielony przez maksimum w scenie).

🔬 Co pokazuje

Siatkę pól pod kontrolowanym kolorowym iluminantem, z siłą adaptacji von Kriesa sterowaną suwakiem, która przekształca surowe, zabarwione przez iluminant kolory z powrotem w stronę ich prawdziwych współczynników odbicia — a także dedykowane tryby dla kontrastu, złudzenia sukienki i normalizacji Retinex.

🎮 Jak korzystać

Ustaw Illuminant Hue i Saturation, aby zabarwić źródło światła, przeciągnij Adaptation Strength od 0 (surowe zniekształcone kolory) do 1 (w pełni skorygowane) i przełączaj Display Mode między Color Constancy, Simultaneous Contrast, Dress Illusion i Retinex Patches. P wstrzymuje, R resetuje.

💡 Czy wiesz, że...

Zdjęcie sukienki stało się globalnym sporem, ponieważ zawiera niemal żadnych jednoznacznych wskazówek dotyczących źródła światła, zmuszając różne mózgi do cichego zgadywania różnych iluminantów — część osób zakładała ciepłe światło wnętrza i odejmowała żółty, widząc niebiesko-czarną, inni zakładali chłodny cień i widzieli biało-złotą.

Najczęściej zadawane pytania

Dlaczego przeciągnięcie Adaptation Strength do 0 sprawia, że wszystko wygląda na zabarwione?

Przy sile 0 symulacja pokazuje surowy wynik funkcji applyIlluminant() — kolor RGB każdego pola jest po prostu mnożony przez RGB iluminantu — bez żadnej korekcji von Kriesa, więc cała scena wygląda, jakby była zanurzona w kolorze ustawionym suwakiem Illuminant Hue.

Jak korekcja von Kriesa faktycznie znosi zabarwienie iluminantu?

Funkcja vonKries() dzieli każdy kanał koloru przez ten sam kanał iluminantu (r/illumR, g/illumG, b/illumB), co jest matematycznie operacją odwrotną do kroku zabarwiania — przy sile 1 w pełni znosi to multiplikatywny efekt iluminantu, odzyskując kolory bliskie prawdziwym współczynnikom odbicia pól.

Dlaczego wśród dziewięciu kolorowych pól znajduje się osobne szare pole?

Pole szare o zerowym nasyceniu nie ma odcienia, który mógłby zostać zniekształcony, więc jego kolor pod zabarwionym iluminantem bezpośrednio ujawnia kolor samego iluminantu — to dokładnie ta sama wskazówka szarego świata, której mózg (i matematyka tej symulacji) używa do oszacowania, jakie światło pada na scenę.

Co pokazuje tryb Simultaneous Contrast, czego nie pokazuje tryb Color Constancy?

Color Constancy zmienia iluminant w całej scenie naraz; Simultaneous Contrast zamiast tego utrzymuje jednolite oświetlenie, ale zmienia otaczające kolory, pokazując, że identyczne pola mogą wyglądać różnie wyłącznie z powodu lokalnego kontekstu — to osobny, choć powiązany mechanizm w stosunku do szacowania iluminantu.

Dlaczego tryb Dress Illusion daje dwie wiarygodne interpretacje tego samego obrazu?

Ponieważ obraz jest celowo skonstruowany tak, że ani interpretacja zakładająca ciepły iluminant, ani chłodny nie jest wyraźnie błędna — w zależności od tego, które założenie po cichu przyjmuje układ wzrokowy, stosowana wewnętrznie korekcja w stylu von Kriesa przesuwa postrzeganą barwę w przeciwnych kierunkach, dzieląc widzów na dwa obozy.

Podobne symulacje