Dlaczego warto używać Colormap viridis w trybie Jet?

28

Jak ogłoszono w https://www.youtube.com/watch?v=xAoljeRJ3lU , Matplotlib zmienia domyślną mapę kolorów z jet na viridis.

Jednak nie rozumiem tego całkiem dobrze. Może dlatego, że jestem ślepy na kolory?

Oryginalny jet colormap wygląda bardzo mocno, wyczuwam kontrast:

wprowadź opis zdjęcia tutaj

Podczas gdy w nowym colormap viridis brakuje tego kontrastu:

wprowadź opis zdjęcia tutaj

Czy ktoś może mi wyjaśnić to prościej? Potrzebuję fabuły na mój papier. Potrzebuję dobrego powodu, aby przekonać mojego przełożonego (i siebie), że viridis jest lepszy.

cqcn1991
źródło
2
Zauważ, że Matlab niedawno przeszedł z odrzutowca na parula (jak omówiono w dołączonym wideo).
ameba mówi Przywróć Monikę
+1 do komentarza @amoeba. Ponieważ R2014b MATLAB używa mapy kolorów parula . Jednym z głównych powodów było to, że odrzutowiec był raczej mało pouczający dla niewidomych użytkowników płci męskiej, a przejście na parula było przez to motywowane. Ślepota na kolory u mężczyzn wynosi zwykle około 7-8% w wielu populacjach Europy Północnej.
usεr11852 mówi: Przywróć Monic
1
Użyj magmy, plazmy lub piekła, a następnie ... nie będziesz zmuszony użyć domyślnej, a IMHO pozostałe trzy są „silniejsze”. Viridis wybrano jako domyślną, ponieważ „domyślnie musi mieć zielony”. Jeśli chcesz, to w MATLAB możesz je tutaj znaleźć . Uwaga: przesłanie FEX jest moje.
Ander Biguri,
3
Zbudowaliśmy również narzędzie, które pomaga analizować różne jednorodności percepcyjne kolorów, liniowość mapowania w skali szarości oraz przydatność dla osób niedowidzących kolorów. Zobacz: bids.github.io/colormap i github.com/matplotlib/viscm Mamy dział rozwoju w projektowaniu dwukierunkowych mapowania kolorów.
Stefan van der Walt

Odpowiedzi:

34

Zobacz ten film . Możesz także google, ponieważ wszędzie jest wiele (rozsądnych) odrzutów.

Jet jest bardzo przyjemny, ponieważ jest krzykliwy, kolorowy i nie wymaga myślenia o skali kolorów: nawet jeśli masz tylko kilka wartości odstających, nadal masz „wszystkie funkcje” na swojej fabule. Sam to powiedziałeś: odrzutowiec prawie nigdy nie ma kontrastu.

Ma to jednak bardzo wysoką cenę: jet dosłownie pokazuje rzeczy, które nie istnieją . To tworzy kontrast znikąd: po prostu zmień kolor skali trochę w strumieniu i powinieneś zobaczyć, że obraz jest zmiana dramatycznie. Zrób to samo w viridis, a będziesz miał wrażenie, że rzucasz mniej więcej światło na dokładnie to samo.

Jeśli nie lubisz viridis, skorzystaj z innych map kolorów omówionych w powyższym filmie: mają te same miłe właściwości i nie spowodują, że twoje dane będą kłamać. Zmień także skalę kolorów: począwszy od 0, nawet jeśli jest to logiczne z naukowego punktu widzenia, może nie być dobrym pomysłem przedstawienie tych konkretnych danych (ale zmień pasek kolorów, aby to odzwierciedlić, np. „<25”).

Ale znowu, zobacz wideo, jest tam wiele przykładów, a także pełne wyjaśnienia.

JohnW
źródło
1
Rozumiesz, faktycznie link do filmu, który opublikowałem. Oglądam to jeszcze raz. A na początku podaje przykład Mony Lisy. Nagle to rozumiem. jetwysokie światło kontrast, który nie istnieje, np. czoło Mona Lisy.
cqcn1991
6
Tak, dokładnie: zwykle jet nadmiernie podkreśla kolor żółty i cyjan. W zależności od skali kolorów „zobaczysz” różne rzeczy. W verormis colormaps, jeśli nie widzisz czegoś, co widziałeś w odrzutowcu, oznacza to, że to, czego szukasz, jest nieistotne w porównaniu z resztą: to jest cały cel colormap, aby dać naszemu mózgowi oszacowanie względnego znaczenia każdego piksela. :) (i tak, zacytowałeś film, ale naprawdę zawiera dobre przykłady i zastanawiałem się, czy już go widziałeś lub po prostu zacytowałem, żeby przedstawić veridis)
JohnW
Były przykłady artykułów goniących wyjaśnienia dziwnych efektów, które były tylko artefaktami odrzutowca. Spróbuję trochę wykopać.
Davidmh,
Muszę również dodać, że wydajność virdis różni się w zależności od różnych ekranów. Mam stary laptop i nowy komputer stacjonarny. Wirtualne hackintoskie na pulpicie wyglądają znacznie lepiej i wyraźniej niż laptop.
cqcn1991
2
Oto przykład . Niestety oryginalne odniesienie znajduje się w blogu abandonmatlab, który jest teraz prywatny. Wszystkie blogi, które mogłem znaleźć, cytują blog, ale nie papier. Jeśli ktoś to znajdzie, będę bardzo zadowolony.
Davidmh
12

Potrzebujesz wykresu, ponieważ musisz pokazać dane i potrzebujesz mapy kolorów, ponieważ wiesz, że kolor, który pokazujesz, nie będzie jednakowo widoczny dla wszystkich osób: każdy kolor jest interpretacją dzięki naszej percepcji wizualnej.

Rzeczywiście, kolory są subiektywne w tym sensie, że są interpretowane przez mózg (w tym sensie, że widmo jest przekształcane w aktywność neuronową) w różne poziomy wartościowości (lub wartości) jako funkcję podanego obok paska koloru. Twoje oczy wykonają stały zestaw sakkad, aby dopasować fabułę do paska.

JET ma zostać zbanowany, ponieważ jest percepcyjnie niejednoznaczny. Pierwszą cechą kolorów w postrzeganiu wizualnym jest ich wartość, czyli całkowita jasność, która działa jak najbardziej bezpośrednia cecha. Jednak ta wartość nie jest monotoniczna w JET, tak że JEDNA wartość jasności może wywoływać różne wartości w postrzeganiu. Jest to szczególnie prawdziwe w przypadku blueiash - żółtawy ton (i przez większość czasu te, które odpowiadają zerowym wartościom), które sztucznie „wyskakują” z obrazu. Sprawdź takie krzywe na: jasność różnych map kolorów

Viridis (między innymi) ma na celu uniknięcie tego problemu. Możesz przeczytać pełny opis tego wyboru i dowiedzieć się, jak dostosować mapę kolorów do kategorii danych do wykreślenia.

To powinno przekonać przełożonego.

meduz
źródło
7

Problem z użyciem dowolnego rodzaju skali kolorów do wizualnego przedstawiania danych porządkowych polega na monotoniczności luminancji : to znaczy, jeśli masz dane, które spełniają pewien rodzaj uporządkowania, związek ten powinien być odzwierciedlony nie tylko przez zmiany odcienia, ale przez luminancję. Problem z mapowaniem kolorów „jet” polega na tym, że najwyższy punkt na mapowaniu (odpowiadający większym wartościom) otrzymuje kolor czerwony, środkowy zakres ma kolor żółto-zielony, a najniższy kolor niebieski - ale jeśli Spójrz na postrzeganą „jasność” (tj. luminancję) tych kolorów, jasne jest, że to odwzorowanie nie jest monotoniczne. Inne odwzorowanie kolorów w pytaniu naprawia tę wadę.

Powód tej właściwości powinien być oczywisty, a przynajmniej faktem, że jeśli takie liczby zostaną odtworzone w skali szarości, interpretacja nie zostanie utracona.

heropup
źródło
7

Jest już kilka fajnych odpowiedzi, ale myślę, że nadal warto dodać kolejny punkt widzenia, z doskonałej pracy

Dobre mapy kolorów: jak je projektować. Peter Kovesi. arXiv: 1509.03700 (2015). Oprogramowanie dostępne tutaj .

który w bardzo jasny sposób określa zasady projektowania map kolorów i zapewnia naprawdę miłe narzędzie do ich analizy pod kątem jednolitości percepcyjnej:

wprowadź opis zdjęcia tutaj

Ten wykres „zmywarki” ma stałą rampę od zera do jednej idącą od lewej do prawej wzdłuż dna, a góra wykresu ma sinusoidalną modulację o jednolitej amplitudzie. Aby prawidłowo zaprojektować mapę kolorów, wszystkie frędzle u góry powinny mieć identyczny lub co najmniej podobny kontrast. Jednak po przejściu jettestu natychmiast widać, że tak nie jest:

wprowadź opis zdjęcia tutaj

Innymi słowy, jest mnóstwo frędzli, na czerwonych, a szczególnie zielonych odcinkach jet, które są całkowicie nijakie i stają się całkowicie niewidoczne, ponieważ mapa kolorów po prostu nie ma żadnego kontrastu. Gdy zastosujesz to do swoich danych, kontrast w tych regionach będzie taki sam, jak na obrzeżach. Podobnie ostre kontrasty wzdłuż dna, na gładkiej skali liniowej, reprezentują miejsca, w których mapa wprowadza funkcje, które tak naprawdę nie są obecne w danych.

Emilio Pisanty
źródło