Czy istnieją wspólne materiały, które nie są dobrze reprezentowane przez RGB?

34

W grafice wykorzystujemy RGB i inne przestrzenie kolorów jako przybliżenie pełnego spektrum długości fal światła. Widocznie działa to całkiem dobrze, ale czy istnieją jakieś dość powszechne obiekty / materiały / zjawiska, rzeczy, które można spotkać w życiu codziennym, których wygląd nie jest dobrze reprezentowany przez rendering RGB z powodu złożonego spektrum emisji / odbicia / absorpcji ?

Podczas gdy obecne odpowiedzi koncentrują się głównie na kolorach poza daną gamą RGB, jestem również zainteresowany słyszeniem, czy istnieją przykłady, w których na przykład kolor obiektu wydaje się „nieprawidłowy” podczas renderowania w RGB z powodu interakcji między widmo źródła światła i widmo odbicia obiektu. Innymi słowy, przypadek, w którym renderer spektralny dałby bardziej poprawne wyniki.


Źródło: Podobało mi się to pytanie w poprzedniej prywatnej wersji beta, więc powielam je tutaj. Pierwotnie zapytał go Nathan Reed

trichopaks
źródło
2
Pamiętałem ten artykuł, który czytałem jakiś czas temu. Autorzy porównują wyniki spektralne i renderowane w RGB z różnymi źródłami światła. Niestety porównania dokonuje się na karcie kolorów, więc nie jestem pewien, jak bardzo różnice wpływają na sceny z prawdziwego życia. cg.cs.uni-bonn.de/en/publications/paper-details/…
yuriks
Prawo Beera (absorpcja koloru przez przezroczysty obiekt na odległość) jest trudne do modelowania za pomocą rgb.
Alan Wolfe,
@trichoplax Przepraszamy za hałas!
luser droog
@luserdroog dzięki za zainteresowanie :) Mimo że to pytanie dotyczy tylko materiałów, moglibyśmy odpowiedzieć na nowe pytania dotyczące przestrzeni kolorów ...
trichoplax

Odpowiedzi:

25

Należy wziąć pod uwagę różne rodzaje ograniczeń.

Efekty, dla których ścieżka promienia zależy od jego długości fali

Jest to klasa efektów, dla których wymagane jest renderowanie widmowe, a wiele interesujących przykładów podano już w odpowiedzi Benedikta Bitterliego . Prostym przykładem jest pryzmat dzielący białe światło na spektrum, nadające tęczowe kolory. Promienie o różnej długości fali załamują się pod różnymi kątami, gdy przechodzą przez pryzmat, w wyniku czego światło pada na ścianę za pryzmatem i zostaje podzielone na kolory składowe.

Oznacza to, że w prawdziwym życiu świecenie monochromatycznego żółtego światła przez pryzmat spowoduje wychodzenie żółtego światła, ale świecenie mieszaniny światła czerwonego i zielonego zbliżonego do żółtego spowoduje pojawienie się oddzielnego światła czerwonego i zielonego. Podczas renderowania przy użyciu tylko 3 kolorów podstawowych białe światło podzieli się tylko na te trzy kolory, dając efekty tęczy, które wyglądają na nieciągłe, a światło monochromatyczne, które w ogóle nie powinno się dzielić, podzieli się na zbliżone do siebie składniki kolorów podstawowych. Rozdzielenie białego światła można poprawić, stosując większą liczbę kolorów podstawowych, ale nadal spowoduje to zbliżenie nieciągłości, a wyniki dla światła monochromatycznego będą nadal podzielone, choć węższy. Aby uzyskać dokładne wyniki, należy próbkować ciągłe widmo,

Efekty powierzchniowe, których nie można zarejestrować na jednym zdjęciu

Iridescence , na przykład, pokazuje inny kolor do każdego oka tak, że obraz nadal nie będzie wyglądać tak samo jak oryginalny obiekt. Istnieje wiele codziennych przykładów, których możesz początkowo nie zauważyć. Wiele pospolitych ptaków ma opalizujące pióra, choć z daleka wydają się czarne lub szare. Z bliska są zaskakująco kolorowe.

Renderowanie wykorzystujące tylko 3 kolory podstawowe nie będzie w stanie wytworzyć rozproszenia światła w oparciu o długość fali wymaganą dla tego efektu. Mechanizm renderujący spektrum może poprawnie symulować rozkład, ale pełnego efektu nadal nie można zarejestrować na jednym obrazie. Nawet zdjęcie 2D nie może tego poprawnie uchwycić, podczas gdy zdjęcie 3D opalizującego obiektu da ten efekt migotania, ponieważ zdjęcia odpowiadające lewemu i prawemu oku będą miały inny kolor. Jest to ograniczenie obrazów 2d zamiast samej przestrzeni kolorów RGB. Jednak nawet na obrazie 3D w opalizującym obiekcie pojawią się kolory, które nie są wyświetlane poprawnie, z powodu niemożności wyświetlania kolorów monochromatycznych przez RGB, jak opisano poniżej.

Kolory, które może wykryć ludzkie oko, których nie można wyświetlić w RGB

RGB była historycznie zależna od urządzenia i dlatego nie była wiarygodna między platformami. Istnieją niezależne od urządzenia percepcyjnie jednolite ulepszenia, takie jak Lab przestrzeni kolorów , ale są one nadal trójchromatyczne (mają 3 składniki). Nie jest od razu oczywiste, dlaczego trzy elementy są niewystarczające, aby wyświetlić wszystkie kolory, które mogą być postrzegane przez oko trójchromatyczne, ale ten dokument wyjaśnia to dobrze i łatwo. Od strony 7:

Na przykład, stosując nowoczesny system wyświetlania laserowego z monochromatycznymi pierwotnymi wartościami przy 635 nm (czerwony), 532 nm (zielony) i 447 nm (niebieski), pozwala sprawdzić, czy możemy symulować postrzeganie światła monochromatycznego przy 580 nm ( kolor pomarańczowy). Ponieważ monochromatyczny pomarańczowy bodziec pobudza zielonkawe i czerwonawe stożki, wkład jest wymagany zarówno przez zielony, jak i czerwony pierwotny, podczas gdy wkład niebieski nie jest wymagany. Problem polega na tym, że zielony pierwotny pobudza również niebieskawe stożki, uniemożliwiając dokładne odtworzenie pomarańczowego bodźca

Schemat wrażliwości stożków oka ludzkiego (także na stronie 7) pokazuje, jak szerokie jest nakładanie się i pomaga w wizualizacji tego wyjaśnienia. Podałem podobny wykres z Wikipedii tutaj: (kliknij wykres, aby zobaczyć lokalizację Wikipedii)

Wykres wrażliwości 3 różnych stożków w ludzkim oku

Krótko mówiąc, nakładanie się zakresu kolorów, które mogą być wychwytywane przez każdy z trzech różnych stożków (czujników kolorów) ludzkiego oka, oznacza, że ​​można odróżnić kolor monochromatyczny od przybliżonej mieszanki kolorów podstawowych, a zatem mieszać kolory podstawowe kolory nigdy nie mogą dokładnie wyświetlać wszystkich kolorów monochromatycznych.

Ta różnica zwykle nie jest zauważalna w życiu codziennym, ponieważ większość naszego otoczenia emituje lub odbija światło w szerokim zakresie częstotliwości, a nie w pojedynczych kolorach monochromatycznych. Godnym uwagi wyjątkiem są lampy sodowe. Jeśli mieszkasz w części świata, która korzysta z żółto-pomarańczowych lamp ulicznych, emitowane światło jest monochromatyczne i będzie wyglądać nieco inaczej niż drukowane zdjęcie lub obraz na ekranie. Długość fali światła sodowego wynosi 580 nm z powyższego przykładu. Jeśli nie mieszkasz w miejscu z lampami ulicznymi sodowymi, możesz zobaczyć to samo światło o pojedynczej długości fali, posypując drobno pokruszoną solą kuchenną (chlorek sodu) nad płomieniem. Migocących żółtych punktów światła nie można dokładnie uchwycić na filmie ani wyświetlić na ekranie. Niezależnie od tego, jakie trzy podstawowe kolory wybierzesz,

Pamiętaj, że to ograniczenie dotyczy w równym stopniu mieszania 3 podstawowych kolorów farby, stosowania 3 fotoreaktywnych chemikaliów na kamerze lub robienia zdjęć aparatem cyfrowym z 3 różnymi czujnikami kolorów lub jednym czujnikiem z 3 różnymi filtrami kolorów podstawowych. To nie jest tylko problem cyfrowy i nie ogranicza się tylko do przestrzeni kolorów RGB. Nawet ulepszenia wprowadzone przez przestrzeń kolorów Lab i jej warianty nie mogą przywrócić brakujących kolorów.

Różne efekty

Wiele rozproszonych odbić (krwawienie kolorów)

Jeśli jaskrawo zabarwiona powierzchnia matowa znajduje się w pobliżu białej matowej powierzchni, biała powierzchnia będzie pokazywała trochę koloru drugiej powierzchni. Można to dość dobrze wymodelować, stosując wyłącznie czerwone, zielone i niebieskie elementy. Ta sama kombinacja czerwieni, zieleni i niebieskiego, która nadała kolor kolorowej powierzchni, może odbijać się od białej powierzchni i ponownie pokazywać część tego koloru. Działa to jednak tylko wtedy, gdy druga powierzchnia jest biała. Jeśli druga powierzchnia jest również zabarwiona, wówczas krwawienie kolorów będzie niedokładne, w niektórych przypadkach drastycznie.

Wyobraź sobie dwie powierzchnie o podobnym kolorze. Jeden odzwierciedla wąski zakres długości fal wokół żółtego. Drugi odzwierciedla szeroki zakres długości fal od czerwonego do zielonego, w wyniku czego wygląda również na żółty. W prawdziwym życiu światło widoczne na jednej powierzchni z powodu drugiej nie będzie symetryczne. Większość światła docierającego do drugiej powierzchni o szerokim zakresie długości fal odbije się ponownie, ponieważ wąski zakres długości fal przychodzących znajduje się w szerszym zakresie. Jednak większość światła docierającego do drugiej powierzchni o wąskim zakresie długości fal będzie znajdować się poza wąskim zakresem i nie będzie odbijana. W rendererze RGB obie powierzchnie zostaną zamodelowane jako mieszanina monochromatycznej czerwieni i monochromatycznej zieleni, nie dając żadnej różnicy w świetle odbitym.

Jest to ekstremalny przykład, w którym różnica będzie natychmiast zauważalna dla oka, ale będzie przynajmniej subtelna różnica w większości obrazów, które zawierają krwawienie kolorów.

Materiały, które pochłaniają jedną długość fali i emitują inną

Odpowiedź joojaa opisuje pochłanianie światła ultrafioletowego przez śnieg, który jest ponownie emitowany jako światło widzialne. Nie słyszałem o tym wcześniej ze śniegiem (i frustrujące nie byłem w stanie znaleźć żadnych dowodów na poparcie - chociaż to by wyjaśniało, dlaczego śnieg jest „bielszy niż biały”). Istnieje jednak wiele dowodów na to, że dzieje się tak z szeroką gamą innych materiałów, z których niektóre są dodawane do detergentów i papieru do prania ubrań, aby uzyskać wyjątkowo jasne białka. Dzięki temu całkowite światło widzialne wychodzące z powierzchni jest większe niż całkowite światło widzialne odbierane przez tę powierzchnię, która również nie jest dobrze modelowana przy użyciu tylko RGB. Jeśli chcesz dowiedzieć się więcej na ten temat, terminem do wyszukania jest fluorescencja .

Oczy o więcej niż 3 podstawowych kolorach

Istnieją zwierzęta, które mają więcej niż 3 rodzaje stożków w oczach, co pozwala im dostrzec więcej niż 3 kolory podstawowe. Na przykład wiele ptaków, owadów i ryb to tetrachromaty , postrzegające cztery podstawowe kolory. Niektóre są nawet pentachromatami , postrzegającymi pięć. Zakres kolorów, które takie stworzenia mogą zobaczyć, przyćmiewa zakres wyświetlany tylko przy użyciu RGB. Daleko za nimi jest krewetka modliszki , która jest dodekochromatem, widząc kolory oparte na 12 różnych szyszkach. Żadne z tych zwierząt nie zadowoli ekran RGB.

Ale poważniej, nawet w przypadku obrazów przeznaczonych dla ludzkich oczu, uważa się, że istnieją ludzkie tetrachromatyczne, które widzą w 4 podstawowych kolorach, a być może niektóre, które widzą aż 5 lub 6. Obecnie tacy ludzie nie wydają się być obecni w wystarczającej liczbie, aby ekrany z więcej niż 3 kolorami podstawowymi były komercyjnie opłacalne, ale jeśli w przyszłości łatwiej będzie określić, ile kolorów podstawowych można zobaczyć, może to stać się atrakcyjną cechą prowadzącą do rozprzestrzeniania się w całej populacji w przyszłych pokoleniach. Więc jeśli chcesz, aby twoje prawnuki doceniały twoją pracę, być może będziesz musiał dostosować ją do monitora heksachromatycznego ...


Niezbyt istotne w odniesieniu do tego pytania, ale powiązane: jeśli chcesz zobaczyć kolory, które nie są dostępne ani w świecie rzeczywistym, ani w obrazach RGB, spójrz na kolory chimeryczne ...

trichopaks
źródło
15

Uważam, że najbardziej widocznym efektem spektralnym, którego nie można wiernie odtworzyć za pomocą RGB, jest dyspersja spowodowana dielektrykami o spektralnie zmieniającym się współczynniku załamania światła (zwykle modelowanym za pomocą równania Sellmeiera ).

Inne zjawiska spektralne są zwykle spowodowane efektami falowymi. Jednym z przykładów, który pojawia się co jakiś czas w prawdziwym życiu, jest interferencja cienkowarstwowa , która jest spowodowana przez jedną lub więcej powierzchni odblaskowych ułożonych blisko siebie (np. Wycieki oleju, bańki mydlane). Innym efektem fali, który czasem można zaobserwować, jest dyfrakcja , spowodowana np. Siatkami dyfrakcyjnymi , co powoduje funky wygląd płyt CD.

Benedikt Bitterli
źródło
7

RGB działa, ponieważ tak działa nasz aparat sensoryczny. Oprócz dyspersji niektóre materiały sztuczne i ciała owadów mają czasami powierzchnie o bardzo ciasnych pasmach kolorów. Mogą one skorzystać z renderowania szerokiego spektrum.

Ponieważ jednak wiele z tych efektów jest dość zlokalizowanych, często można uniknąć dziwnego działania shadera. Nie działa to poprawnie w odbiciach i załamaniach światła, ale nikt tego nie zauważy. Chyba że wykonujesz jakąś symulację fizyki, to naprawdę nie jest wielka sprawa. Ale jeśli projektujesz optykę, może to być wielka sprawa.

Niektóre materiały, takie jak śnieg, przekształcają również ultrafiolet wchodzący w światło widzialne. Znowu tego rodzaju efektem zwykle mogą zajmować się shadery / specjalne grupy świateł.

Ciekawostką są również skrzydła motyla, które manipulują fazami fal i formami przychodzącego światła. Więc jeśli chcesz przeprowadzić na nich symulację fizyki, to jest to wielka sprawa.

Polaryzacja światła ma również duży wpływ na owady i efekty wodne.

joojaa
źródło
3

Aby dodać do powyższych doskonałych sugestii, przyszło mi do głowy, że bez kanału ultrafioletowego materiały fluorescencyjne byłyby trudne do modelowania.

Simon F.
źródło
1
To wydaje się bardziej komentarzem niż odpowiedzią. Może mógłbyś wyjaśnić, dlaczego materiały fluorescencyjne zależą od kanału ultrafioletowego i podać kilka referencji?
Martin Ender,
1
Wspomniałem o tym w moim poście, po prostu nie używając słowa fluorescencyjnego. W każdym razie można to osiągnąć na poziomie modułu cieniującego.
joojaa,
@joojaa: Przepraszam .. przegapiłem to. Usunąłbym swój post, gdyby istniał oczywisty przycisk. Mimo to powiedziałbym, że nadal potrzebujesz dodatkowych kanałów w innym miejscu (a nie tylko shaderów), aby sobie z tym poradzić, np. Generowanie map środowiska w locie.
Simon F
2
Usuń lub nie usuwaj go, to samo dla mnie. Wolałbym, żebyś to poszerzył. Nie ma nic złego w poparciu dowodów i rzeczy mówią inaczej, o ile przyczyniasz się do lepszej przejrzystości lub nowych informacji.
joojaa