Jaki jest cel korekcji gamma na dzisiejszych ekranach i jaki ma to związek z grafiką i fotografią?


15

Często mylę się z celem korekcji gamma i związkiem między obrazami z korekcją gamma a nieskorygowanymi obrazami w zakresie grafiki i fotografii, a także ogólnie zarządzaniem kolorami (konwersja z liniowego RGB na przestrzenie RGB z korekcją gamma, a następnie wyświetlenie go na ekran).

Z wielu źródeł, głównie http://www.guillermoluijk.com/article/gamma/index.htm i pytanie nr 23026151 w StackOverflow (Czy muszę korygować gamma końcowy kolor na nowoczesnym komputerze / monitorze?) : doszliśmy do wniosku, że:

Korekcja gamma została pierwotnie zaprojektowana w celu kompensacji nieliniowej odpowiedzi monitorów CRT na sygnał wejściowy. CRT nie były w stanie samodzielnie wzmocnić sygnału wejściowego, dlatego sygnał wyjściowy z komputera PC musiał zostać dostosowany, co dało początek (na dzień dzisiejszy) standardowej korekcji gamma 2.2 i przestrzeni barw sRGB.

Jednak nowoczesne ekrany nie cierpią z powodu utraty sygnału, tak jak CRT. One również mogą wykazywać pewne nieliniowości, ale biorąc pod uwagę, że sygnał wejściowy jest najczęściej przenoszony tylko przez 8 bitów na kanał (256 odcieni), powinni być w stanie samodzielnie skompensować niektóre nieliniowości w reprodukcji kolorów, ponieważ prawdopodobnie są w stanie odtwarzania ponad 256 odcieni w jednym kanale. Oznaczałoby to, że korekcja gamma wraz z sRGB i wszystkimi przestrzeniami kolorów z korekcją gamma to tylko dziedzictwo epoki CRT, a jej jedynym celem było liniowe wyświetlanie sygnału wejściowego.

Istnieją również artykuły, w których twierdzi się, że korekcja gamma ma tutaj zrekompensować nieliniowość ludzkiego widzenia(CambridgeInColour.com - Zrozumienie korekcji gamma), która powinna z grubsza odpowiadać krzywej gamma, ponieważ jesteśmy w stanie dostrzec niewielkie różnice w ciemniejszych odcieniach, ale nie radzą sobie tak dobrze z jaśniejszymi (jasność punktu musi rosnąć wykładniczo, aby mogła wydają się jaśniejsze). Nie w ten sposób czujniki aparatu rejestrują scenę. Nieprzetworzone dane z czujnika są uzyskiwane w liniowym RGB i przekształcane w przestrzeń kolorów RGB z korekcją gamma (podniesione cienie i przyciemnione światła). Korekcja gamma miała jednak zrekompensować utratę sygnału wyjściowego, więc moim zdaniem współczesne ekrany symulują zachowanie CRT, aby anulować korekcję gamma i wyświetlić scenę tak, jak została zarejestrowana przez kamerę - z grubsza mówiąc, kamera mapująca odcienie 1: 1 do ekranowych. Dobrze,

Czy to oznacza, że ​​każdy odcień w dowolnej przestrzeni kolorów RGB powinien mieć dokładnie takie same wartości RGB w każdej innej przestrzeni RGB, w tym liniowy RGB (np. # 010A1F w sRGB przekłada się dokładnie na # 010A1F w liniowym RGB pod względem przechowywania w pliku bitmapy z 8bpc) i tylko od ekranu i adaptera graficznego zależy, w jaki sposób zorganizują transfer kolorów i czy każda ze stron musi wykonać dodatkowe obliczenia w celu konwersji obrazu do docelowej przestrzeni kolorów? Innymi słowy, zmiana przestrzeni kolorów w edytorze graficznym nie ma w rzeczywistości nic wspólnego z samymi wartościami RGB, bierze pod uwagę tylko nową przestrzeń kolorów w metadanych obrazu? Uważam, że tak nie jest, ponieważ zarządzanie kolorami jako takie stałoby się bezużyteczne w przypadku zastosowania cyfrowego adaptera graficznego / interfejsu ekranowego - karta graficzna mogłaby po prostu wysyłać zwykłe dane RGB bez względu na zastosowaną przestrzeń kolorów, ponieważ brak wzmocnienia analogowego (gamma) byłby zastosowane do wartości, które przechodzą w skali liniowej od 0 do 255. Także gama różnych profili kolorów byłaby taka sama, gdyby nie wprowadzono błędów zaokrąglania, lub?

Moje ostatnie zamieszanie wynika prawdopodobnie z niezrozumienia konwersji profilu kolorów i tabeli poziomów ekspozycji (pierwsza) w artykule http://www.guillermoluijk.com/article/superhdr/index.htm (można to przetłumaczyć za pomocą Tłumacz Google). Czy dobrze rozumiem, że wartości liniowe są przekształcane za pomocą funkcji wykładniczej (lub odwrotnej gamma), zmniejszając zakres tonalny w kierunku cieni, a tym samym zaciemniając obraz? Czy tak się stanie, jeśli zachowamy liniowy RGB i zaprezentujemy go na ekranie komputera jako obraz z korekcją gamma?

Przepraszam, że zadałem tak złożone pytanie, ale bardzo trudno jest znaleźć naprawdę dobre źródło informacji wyjaśniające wszystkie pojawiające się wątpliwości. Z góry dziękuję za każdą odpowiedź, która może pomóc poprawić moje nieporozumienie.


4
Możesz spróbować zagęścić to pytanie. Chociaż nadal można odpowiedzieć na sam tytuł, myślę, że edytowanie go byłoby dobrym sposobem na samodzielne zrozumienie tematu.
JenSCDC

1
Zaczynam pracę nad odpowiedzią, w niemałej części, ponieważ zdałem sobie sprawę, że wiele zapomniałem, a udzielenie odpowiedzi na pytanie jest dobrym sposobem na ponowne nauczenie się.
JenSCDC

Głównym powodem jest po prostu zgodność wsteczna. Chcesz mieć możliwość korzystania z tego samego komputera i tego samego oprogramowania ze starymi monitorami CRT i nowoczesnymi monitorami LCD. Oprogramowanie robi to samo, co dawniej: tworzy obrazy w przestrzeni kolorów sRGB. Obejmuje to oczywiście zwykłą korekcję gamma. Wtedy stare monitory CRT będą używać obrazów w obecnej postaci, podczas gdy nowoczesne wyświetlacze w zasadzie „cofną” konwersję z liniowej przestrzeni kolorów na przestrzeń kolorów sRGB.
Jukka Suomela

I jak odnosi się do fotografii: przy odpowiednich narzędziach tak nie jest. Korekcja gamma (i bardziej ogólnie konwersje między różnymi przestrzeniami kolorów) odbywa się automatycznie; zwykli użytkownicy w ogóle nie powinni go widzieć. Jest to po prostu kwestia techniczna, o której programiści komputerowi będą musieli wiedzieć, ale użytkownicy końcowi wcale nie muszą o tym wiedzieć. (Chyba że oczywiście chcesz wyraźnie wprowadzić szesnastkowe wartości kolorów w przestrzeni kolorów sRGB, w takim przypadku najprawdopodobniej wiesz, co robisz.)
Jukka Suomela

Odpowiedzi:


10

od Karola Poynton „rehabilitacji Gamma” :

Błędne przekonanie: Nieliniowość monitora CRT jest defektem, który należy naprawić.

Fakt: Nieliniowość CRT jest prawie odwrotnością wrażliwości na światło ludzkiego widzenia. Nieliniowość powoduje, że odpowiedź CRT jest z grubsza jednorodnie percepcyjnie. Ta funkcja nie jest wadą, ale jest wysoce pożądana.

Błędne przekonanie: Głównym celem korekcji gamma jest kompensacja nieliniowości CRT.

Fakt: Głównym celem korekcji gamma w wideo, grafice komputerowej, przygotowaniu do druku, JPEG i MPEG jest zakodowanie wartości luminancji lub tristimulusa (proporcjonalnie do intensywności) w percepcyjnie jednolitej dziedzinie, aby zoptymalizować percepcyjną wydajność ograniczonej liczby bitów w każdym składniku RGB (lub CMYK).

reszta artykułu też jest bardzo pouczająca :)


Scena w Naturze ma liniową gamma i powinna być prezentowana na ekranie lub na papierze w ten sam sposób, z niewielkim wzrostem gamma, aby zrekompensować odblask - zwykle gamma 1.1 lub 1.2.
Iliah Borg

1
Rozprawa doktorska dr Poyntona jest już dostępna online: poynton.ca/PDFs/Poynton-2018-PhD.pdf . Rozdziały 3 i 4 dotyczą klasycznych krzywych, rozdział 8 wprowadza OETF „Barten Lightness”, który ma ten sam kształt co krzywa Dolby PQ (SMPTE-2084). Na górnym końcu skali płynnie zmienia się z gamma w krzywą logarytmiczną, czego się właściwie spodziewaliśmy. Cała książka jest bardzo pouczająca!
Jeroen van Duyn

7

Rozważ ten przykład z Cambridge w kolorze :

wprowadź opis zdjęcia tutaj

Stosując kodowanie gamma, jesteśmy w stanie dokładniej przedstawić oryginalny obraz z tą samą głębią bitową (5, w tym przykładzie).

Osiąga się to poprzez użycie 32 poziomów w sposób, który bardziej odpowiada ludzkiemu oku. Innymi słowy, jest to forma kompresji. Na przykład w plikach JPEG można zapisać około 11 stopni zakresu dynamicznego, pomimo użycia tylko 8 bitów na kanał.

I jak każda inna forma kompresji, nie ma znaczenia, czy nie zależy Ci na rozmiarze pliku (i niższej prędkości, z jaką możesz czytać lub pisać większe pliki). Teoretycznie możesz użyć formatu podobnego do JPEG, w którym zastosowano liniową gamma, jeśli chcesz przydzielić 11 bitów do każdego kanału zamiast 8.

Podsumowując, gamma jest tylko formą kompresji: zmniejsza rozmiar pliku niezbędny do przechowywania pewnej ilości informacji tak, jak postrzega to oko. Alternatywnie pozwala przechowywać bardziej subtelne gradacje na tej samej głębokości bitów.


7

Jestem byłym inżynierem programów telewizyjnych, a obecnie pracuję w filmach fabularnych i telewizji jako redaktor i kierownik VFX.

Wiele stwierdzeń tutaj jest niepoprawnych. Gamma na ścieżce sygnału jest pożądaną korzyścią i stanowi projekt przez pierwszych inżynierów wideo w celu zmniejszenia odbieranego szumu w transmisji.

Wszystkie lampy próżniowe, w tym CRT, wykazują różne nieliniowości (patrz prawo Langmuira-Childa). CRT mogą różnić się od „gamma” od 1,5 do ponad 3,5 (gdy są napędzane sygnałem napięciowym) w zależności od różnych różnic konstrukcyjnych. Nieliniowości były mniej problematyczne w przypadku monochromatycznych, ale stały się bardziej krytyczne w przypadku kolorów, dlatego NTSC określił gamma sygnału na poziomie 1 / 2,2. CRT konstrukcja i układy wspierające dostosować rzeczywistą gamma z prawem Langmuira-podrzędny (powszechnie rozumiane jako 1,5, ale na ogół większa w kineskopów ze względu na szereg czynników) do poziomu, zgodnie z ludzkiej percepcji „gamma” o ~ 2.5. W przypadku NTSC założono, że odbiornik telewizyjny ma docelową wartość gamma wynoszącą ~ 2,4, ** natomiast PAL wskazuje ~ 2,8

Wyższe współczynniki gamma w starych standardach analogowych sygnałów rozgłoszeniowych mają na celu redukcję odbieranego szumu w oparciu o nieliniową percepcję człowieka. W tym przypadku wykorzystania nieliniowości w celu ukrycia szumu przez „współdziałający” efekt gamma kodującego sygnał. To jest dość akademickie.

Istnieje kilka sposobów na zmianę konstrukcji telewizora i monitora CRT w celu uzyskania liniowości w przeciwieństwie do krzywej gamma, ale krzywa gamma w transmisji analogowej zmniejszała pozorny szum o 30 dB. Gamma była wtedy pożądana, JAK TO JEST TERAZ .

Gamma jest potrzebna, nawet jeśli monitor LCD może być używany w sposób liniowy (gamma 1.0). Twierdzenia, że ​​gamma nie jest już potrzebna, są całkowitą koją i nie rozumieją obecnego celu zastosowania krzywej wstępnego nacisku.

Gamma pozwala sRGB (lub Rec709) wyglądać „dobrze”, mimo że głębia bitowa wynosi tylko 8 bitów na kanał. Oto przykład:

Jest to obraz w sRGB, 8 bitów, ze wstępnym podkreśleniem gamma (tj. Normalny obraz internetowy). normalna

Oto jak wyglądałby ten obraz bez korzyści gamma (tj. Gdyby były to wartości liniowe i liniowy wyświetlacz, bez wstępnego podkreślania gamma). zły

Gamma zapewnia WIĘCEJ BITÓW w ciemniejszych obszarach, zapewniając bardziej płynne gradienty i niższy hałas.

Jeśli chcesz przejść całkowicie liniowo, cała ścieżka sygnału potrzebuje co najmniej 12 bitów na kanał. 8 bpc nie jest wystarczające. Kodowanie za pomocą krzywej i dekodowanie na wyświetlaczu pozwala na użycie mniejszej porcji danych o wielkości jednego bajtu na kanał koloru.

W filmie używamy liniowego jako obszaru roboczego , ale podczas pracy z liniowym mamy 32 bity na zmiennoprzecinkowy kanał . Podczas wymiany plików obrazu liniowego używamy EXR Half, czyli 16 bitów na kanał zmiennoprzecinkowy. (A jeśli użyjemy 10-bitowych plików DPX, dane obrazu są kodowane za pomocą krzywej LOG).

ALE

Monitory komputerowe, których używamy, nadal mają 8 lub 10 bitów DO WYŚWIETLENIA, więc wszystkie obrazy liniowe muszą zostać dostosowane do gamma przed wysłaniem na monitor. Dlaczego?

Większość „dobrych” monitorów ma tylko 8 bitów na kanał, a wiele z nich to po prostu „6 bitów wewnętrznych”, co oznacza, że ​​pobierają 8 bitów na obraz kanału i wyświetlają się jako 6 bitów na kanał. Jak mogą stworzyć akceptowalny obraz?

GAMMA!

Monitory 10-bitowe na kanał są rzadkie i drogie (jak mój NEX PA271W). Mój NEC może przyjmować 10-bitowy sygnał i wykorzystuje 14-bitową wewnętrzną LUT do profilowania. Ale 10 bitów to wciąż za mało na liniowy!

Gamma lub inna forma krzywej preemph / deemph jest wymagana nawet dla 10 bitów. 12 bitów jest absolutnym minimum dla rozsądnego wyświetlania liniowego i nawet wtedy jest nie do przyjęcia dla branży filmów fabularnych.

Używamy 12-bitowych projektorów do DCDM (kino cyfrowe) i zgadnij co? DCDM nie tylko korzysta z CIE X´Y´Z´, ale również używamy gamma projektora 2,6 !!!

DCI został stworzony dla teatrów i jest własnym zamkniętym ekosystemem, bez polegania na starych technologiach, takich jak CRT. Gdyby istniała jakaś „zaleta” korzystania z przestrzeni liniowej (gamma 1.0), byłaby ona użyta, ale tak nie jest.

Linear NIE jest używany w kinie cyfrowym, ponieważ ADVANTAGE wykorzystuje krzywą gamma .

Dlatego przestańcie mówić, że używamy promieniowania gamma tylko z wcześniejszych powodów, ponieważ jest to nieprawda.

Przeczytaj Poynton na ten temat , ponieważ wyjaśnia te kwestie w łatwy do zrozumienia sposób.

Dziękuję za przeczytanie.

Przypis: ** Podczas gdy NTSC określił gamma sygnału 1 / 2,2, oczekiwano , że telewizory będą miały gamma 2,4 dla systemowego wzmocnienia gamma. Warto zauważyć, że Rec709 (HDTV) i sRGB są identyczne, z wyjątkiem krzywej transferu. Co ciekawe, Rec709 (przez BT1886) określa „fizyczny gamma wyświetlania” na 2,4 (tj. Gamma samego monitora), a monitory sRGB są zwykle ustawione na 2,4 lub więcej (ankiety pokazują, że większość użytkowników ustawiła je na 2.5 i więcej). Ale gamma SIGNAL jest inna, ok. 1 / 2,2 dla sRGB i około 1 / 2,0 dla Rec709. w obu przypadkach występuje systemowe wzmocnienie gamma, które jest celowe w oparciu o oczekiwane środowisko oglądania.


Zawsze zastanawiałem się, dlaczego przemysł audio nie stosuje tego samego podejścia, ale zamiast tego rzuca 16+ bitami na próbkę ...
Zeus

Cześć @Zeus, istnieje kilka powodów (jeśli zadacie to pytanie, mogę podać bardziej szczegółową odpowiedź). Zasadniczo, nawet w 16 lub 24 bitach, strumienie audio mają znacznie niższą przepustowość niż wideo (ogólnie) i są obliczeniowo łatwiejsze w obsłudze. Niemniej jednak audio w wielu przypadkach korzysta z tego rodzaju wstępnego podkreślania i usuwania wyróżnienia (szczególnie niskiej przepływności). I w rzeczywistości słuch jest również nieliniowy (jak wszystkie postrzeganie), ale 8-bitowy dźwięk jest „jakby” 4-bitowy na kanał wideo. Pamiętaj, że 8 bitów na kanał wideo wykorzystuje w sumie 24 bity na piksel, więc porównanie z 16 bitowym dźwiękiem to jabłka / pomarańcze.
Myndex

Dzięki @Myndex, niestety byłoby to nie na temat tutaj jako pytania. Jestem po prostu ciekawy, dlaczego takiego wstępnego / pozbawionego nacisku nie używano od samego początku w audio, biorąc pod uwagę, że jest on tak naturalny dla słuchu, jak dla wzroku. Nawiasem mówiąc, miałem oczywiście na myśli 16 bitów na kanał (jak na CD); liniowy 8-bitowy dźwięk (który formalnie istnieje) jest prawdopodobnie okropniejszy niż liniowy 8-bitowy wideo z twojego przykładu (który nie istnieje nawet jako standard). Rozumiem, że kompromisy są niższe, ale korzyści są wysokie: utrata połowy rozdzielczości co 3 dB wydaje się szalona ...
Zeus

Myślę, że istnieje strona związana z wymianą stosów, która chętnie przyjmowałaby pytania audio. Niezależnie od tego: każdy bit w 16 bitowym dźwięku wynosi 6 dB (napięcie), więc całkowity zakres dynamiki wynosi 96 dB. 6dB (napięcie) jest „dwa razy” (lub o połowę) tak głośne, ALE ludzie mają tendencję do postrzegania 10 dB jako dosłownie „pół głośniej”. Pre / De emph był używany w audio od samego początku. Rekordy miały krzywą RIAA, taśma magnetyczna wykorzystywała krzywą NAB itp. Co to znaczy tracić połowę rozdzielczości co 3 dB ???
Myndex

W liniowym kodowaniu cyfrowym połowa napięcia stanowi połowę zakresu cyfrowego (z definicji), tj. Utratę 1 bitu rozdzielczości. To dużo w przypadku czegoś, co jest postrzegane jako „nieco bardziej miękkie” (-6 dB, to liczba, o której mówiłem, a nie 3). Jeśli chcemy uchwycić wymagane ~ 35dB przynajmniej (dla mowy lub orkiestry), to już 6 bitowa strata dla najcichszych dźwięków (a nawet wtedy, jeśli odpowiednio znormalizowana). Zdaję sobie sprawę z nacisku „analogowego” (który był nieco inny i zależny od częstotliwości), ale nigdy nie słyszałem o cyfrach, stąd moje pytania ...
Zeus

3

Istnieje wiele mylących artykułów na temat korekcji gamma z wieloma niejasnymi odniesieniami do gamma i ludzkiego widzenia. Przyczyna gamma jest historyczna i wynika z krzywej reakcji starych monitorów typu CRT (nie ma nic wspólnego z ludzkim widzeniem). Współczesne płaskie ekrany nie mają logicznego powodu do kodowania gamma i późniejszej korekty, ale stały się standardem branżowym.

Przypadkowo podobne relacje pomiędzy krzywą gamma krzywej odpowiedzi ludzkiego widzenia nie uzyskując pewne korzyści, pomagając zmniejszyć rozmiar pliku jako głębokość bitów obrazu może być zmniejszone bez wpływu na postrzeganą jakość obrazu.


1

OP jest właściwie poprawny, z wyjątkiem tego, że gamma sprawia, że ​​ciemne tony są jaśniejsze, a nie ciemniejsze. To istnieje tylko w pliku, nie w oku. Dane są zawsze dekodowane z powrotem do oryginalnej liniowej, ZANIM jakiekolwiek oko je zobaczy. Każda różnica w oku widząc oryginalną scenę i widząc odtworzone zdekodowane dane, jest po prostu niepożądanym błędem reprodukcji.

Gamma jest wykonywana tylko w celu skorygowania poważnych strat monitorów CRT. CRT jest nieliniowy, pokazuje jasne odcienie, ale traci ciemniejsze odcienie. Tak więc gamma sprawia, że ​​ciemne odcienie są zbyt jasne, aby potem, jak mam nadzieję, ponownie pojawić się normalnie (liniowo) po stratach CRT. Monitory LCD są jednak liniowe, więc nie potrzebują już promieniowania gamma, ale aby zachować zgodność ze wszystkimi starymi obrazami RGB na wszystkich światach, wszystkie standardy nadal obejmują tę samą gamma. Monitory LCD łatwo dekodują i odrzucają. A dane nadal działają na CRT.

Gamma NIE MA ŻADNEGO sposobu na ludzkie oko. Poza tym chcemy zobaczyć poprawione liniowe oryginalne dane. Oko ma podobną odwrotną odpowiedź, która jest czysto przypadkowa, ale ludzkie oko NIGDY nie widzi danych gamma. Zawsze jest najpierw dekodowany (przez straty CRT lub układ LCD), a ludzkie oko ponownie widzi dane liniowe (miejmy nadzieję). Podobnie jak w oryginalnej scenie, również w oryginalnej scenie nie była potrzebna gamma. Oko nie potrzebuje pomocy. Wyjdź na zewnątrz i spójrz na drzewo. Tam nie ma gamma. Czy naprawdę wyobrażamy sobie, że nasze oko nie widzi dobrze drzewa? :) Pomyśl o tym trochę więcej. Mózg dekoduje reakcję oczu, a CRT lub LCD dekoduje kodowanie danych. Ci, którzy twierdzą, że gamma dotyczy oka, po prostu nie wiedzą, po prostu powtarzają złe rzeczy, które usłyszeli. Nie jest trudno to usłyszeć, ale bardzo źle. Ci faceci powinni wyjaśnić, kiedy i jak ludzkie oko może w ogóle dostrzec gamma, które według nich jest konieczne. Nie może, nie ma szans.

Gamma nie ma około 8 bitów. Dane są kodowane, a następnie dekodowane, i miejmy nadzieję, że będą identyczne, dzięki czemu możemy zobaczyć dokładne odwzorowanie oryginalnej sceny liniowej. Gamma została wykonana na początku telewizji NTSC (1940), zanim pojawiły się jakieś bity, ale mieliśmy CRT. :) Gamma dotyczy tylko strat CRT. Czysty i prosty. W czasach CRT gamma była niezwykle konieczna.

Dane RGB są znormalizowane (do wartości procentowych 0..1) przed dodaniem gamma, zazwyczaj z wykładnikiem 1 / 2,2 (pierwiastek kwadratowy). 18% to (0,18 ^ 1 / 2,2) = 0,46, czyli 46% na histogramie, lub 117 w skali 0..255. (Ludzie obrazują, że 18% również powinno wynosić 50%. :) 18% to 18%, ale widzimy prawie 50%, tylko dlatego, że dane histogramu są zakodowane gamma.) Ale zauważ, że 0 do dowolnego wykładnika to wciąż 0, a 1 do każdy wykładnik nadal ma wartość 1, więc nie ma wzrostu zakresu dynamicznego. I bez przycinania również z powodu gamma, punkty końcowe nie mogą się poruszać. I oczywiście, ponieważ dane są dekodowane, zanim ktokolwiek je zobaczy. Cała rzecz (kodowanie, a następnie dekodowanie) to po prostu brak możliwości. Mam nadzieję, że bez zmian w oku. Ale w plikach znormalizowane dane (które są frakcją) do wykładnika stają się większą liczbą, jaśniejsze, z tym wyjątkiem, że żadne oko nigdy ich tam nie widzi.

Gamma jest wykonywana WYŁĄCZNIE w celu skorygowania odpowiedzi monitorów CRT.


1

Uważam, że nasze oczy mają tę krzywą odpowiedzi, ale ta reakcja na nagłą zmianę ilości światła, zwłaszcza jeśli się zwiększyła, ale w tym samym czasie mózg dekoduje tę odpowiedź poprzez zwężenie naszej tęczówki, aby zachować tę samą (postrzeganie liniowe) mieć stabilne warunki oglądania, aż przejście do nowego warunku oglądania nastąpi płynnie.

Korekcja gamma pochodziła zasadniczo z nieliniowości wyrzutni elektronowej CRT, która wymagała więcej kodowania (tj. Zastosowanej gamma 0,45), aby wysłać jednorodną moc wyjściową (wyjście liniowe), ponieważ charakterystyka wyrzutni elektronowej CRT sprawia, że ​​sygnał jest jakby dekodowany (tj. 2,2 gamma zastosowana krzywa). W dniach CRT kodowali wszystkie dane cyfrowe, aby zachować jednolitość przeglądania i wymiany danych w Internecie, więc formaty plików obrazów są głównie kodowane za pomocą krzywej gamma sRGB, która jest bardzo podobna do krzywej gamma .45455) i że anulowano problem z pistoletem CRT .

Teraz po zakodowaniu wszystkich danych w Internecie i ze względu na to liniowe zachowanie technologii LCD (tj. Sygnał wejściowy = wartości wyjściowe) okazało się, że jest już za późno na dekodowanie wszystkich danych cyfrowych po tym, jak stało się standardem, więc otrzymali logiczne rozwiązanie! i ma to na celu ponowne naśladowanie defektu CRT, a oni wyprodukowali LCD z układem, który dekoduje sygnał (tj. stosuje krzywą gamma 2.2) tak jak starszy system :) w przeciwnym razie powinni byli odkodować wszystkie dane w Internecie.

Więc nie utknij w tym zamieszaniu nieliniowości oka, będziesz miał nieskończony krąg beznadziejnego myślenia.

A oto relacja z Gamma i naszymi oczami

Dane ze zdjęć liniowych generowane przez czujniki aparatu RAW Pliki, które domyślnie mają współczynnik gamma = 1,00 (natura czujnika aparatu), tj. (Brak dekodowania lub kodowania = brak korekcji), gdy pliki RAW „wyświetlane” na monitorze zrobiły się ciemne „tylko ciemne”, a tam 10 12 bitów na kanał to duże pliki, ale niestety w ogóle nie korzystaliśmy z tej głębi, ponieważ nasze oczy nie są wrażliwe na jasne wartości, ponieważ są zbyt wrażliwe na ciemne wartości i mogą odróżnić każdą subtelną zmianę ciemności (i zrobię to wyjaśnij poniżej).

Ponieważ obraz jest „oglądany w ciemności” ze względu na naturę monitorów, poziomy jasności są marnowane na jasne wartości bardziej niż średnie i ciemne wartości (ponieważ monitor gamma obejrzał ściągnięte półcienie ”, więc moglibyśmy skorzystać znacznie więcej, gdyby ciemne wartości miały tę samą szansę.

Odkryli więc, że zastosowanie korekcji gamma (np. Przez kodowanie surowych danych do jakiegoś formatu, takiego jak JPEG z .45455 gamma sRGB), przez szczęście przy konwersji do 8 bitów na kanał, co oznacza mniejszy rozmiar pliku oprócz prawidłowego przeglądania lub wyświetlania wartości jasności jest (czyli poprzez wypalenie gamma .45455 do pikseli) i ponowne zwiększenie ciemności i półtonów) jest bardzo spójne z naturą oka.

Moje wyjaśnienie jest takie, że komórki Rod w oczach mamy zdolność widzenia w nocy, a zbyt wrażliwy charakter rozróżniania ciemnych wartości >> mamy około 120 milionów komórek Rod w porównaniu z 6 lub milionami komórek Cones wrażliwych na kolory monochromatyczne i długości fal

Myślę, że to nie Krzywa reakcji oka odpowiada za to i nie próbuj łączyć między gamą oka a monitorowaniem gamma w żaden inny sposób. Proszę, popraw mnie, jeśli się mylę :). Z trudem rozumiałem problemy z gamma, więc wszystko, co miałem na ten temat.

To jedna z najlepszych referencji dotyczących przyczyn i rozwiązań gamma

http://www.w3.org/TR/PNG-GammaAppendix.html


0

Oto mój pierwszy szkic odpowiedzi - przedstawię się bardziej szczegółowo, gdy pozwoli na to czas, ale chcę udzielić OP trochę odpowiedzi. Komentarze są mile widziane.

Rzeczy na temat kineskopów nie mają już zastosowania. Ale istnieje bardzo dobry praktyczny powód, aby nadal używać obrazów zakodowanych w gamma. Używając kodowania gamma, spraw, aby zmiany takie jak krzywe wyglądały „normalnie”, ponieważ oko nie reaguje liniowo na światło - spójrz na tworzenie przestrzeni LAB, aby uzyskać więcej informacji na ten temat.

Na przykład spójrz na ten zrzut ekranu:wprowadź opis zdjęcia tutaj

Lewy obraz to oryginał, środkowy obraz to kopia w gamma 2.2, a prawy obraz to kopia w gamma 1.0. Można zobaczyć krzywą zastosowaną do każdej kopii. Biorąc pod uwagę kształt krzywej, czy wersja 2.2 lub 1.0 wygląda tak, jak można się spodziewać?


0

W rzeczywistości gamma nie jest w dzisiejszych czasach konieczna, szczególnie przy pracy z wysokimi bitowymi reprezentacjami obrazu. Oznacza to jednak kompletne przepisywanie oprogramowania w zdecydowanie zbyt wielu przypadkach - lub przejście jest dalekie od płynnego (powiedzmy, że znane krzywe całkowicie zmieniają kształt, jak właśnie wspomniał pan Blankertz).


-1

Monitory LCD są „liniowe” i dzisiaj nie potrzebują promieniowania gamma, ale monitory CRT są nieliniowe i nadal tak są. Wszystkie archiwa istniejących obrazów na świecie mają współczynnik gamma dla CRT, więc znacznie łatwiej jest kontynuować dodawanie gamma niż zmieniać całe oprogramowanie i nieaktualne wszystkie istniejące obrazy.

Ludzkie oko absolutnie nie ma zastosowania do gamma. Oko widzi oryginalną scenę bez gamma. Gamma służy TYLKO do skorygowania oczekiwanych strat monitorów CRT (więc widzimy reprodukcję oryginalnej sceny). Monitory LED wiedzą, że po prostu dekodują gamma i odrzucają ją, nic wielkiego (ponieważ ludzkie oko oczekuje wiernej reprodukcji oryginalnych danych sceny bez gamma, reprodukcja powinna wyglądać tak samo). Źle byłoby postrzegać to jako dane gamma. Na szczęście ludzkie oko nie ma szansy zobaczyć żadnych danych gamma. Witryny, które mówią nam, że oko potrzebuje gamma, po prostu nie wiedzą nic o gamma.

Nasze histogramy są jednak zakodowane w promieniowaniu gamma, ponieważ dane są kodowane (z powyższych powodów), aż do momentu, zanim zostaną pokazane ludzkiemu oku. Punktem środkowym naszych zakodowanych danych nie jest 50%, ale około 73% danych gamma (korekty kamery, takie jak balans bieli i kontrast, przesuwają ją nieco bardziej). Jeśli obraz jest niedoświetlony dokładnie o jeden punkt, 255 punkt przesuwa się do skali około 3/4, a NIE do skali 50%. 18% szara karta ma 18% w danych liniowych, ale około 46% w danych gamma. Ludzie niepoprawnie zakładający, że musi to być 50%, mogą nawet pomyśleć o skalibrowaniu do nich swojego światłomierza. :) Ale oko nigdy nie widzi danych gamma, zawsze jest najpierw dekodowane, w ten czy inny sposób. Miejmy nadzieję, że oko zawsze widzi wierne odtworzenie oryginalnej sceny.

Ale FWIW, drukarki również potrzebują większości zmian gamma. Nie wartość 2,2, ale niezbyt daleko od niej (z powodu przyrostu punktów itp.). Apple obserwuje teraz światowe standardy 2.2, ale wszyscy wiemy, że wczesne komputery Mac używały gamma 1.8. To NIE było dla monitora, używali tych samych monitorów, z których korzystał system Windows (monitory są wymienne). Ale Apple sprzedawało wtedy drukarki laserowe, a gamma 1.8 była dla ich drukarki. Następnie sprzęt wideo dla komputerów Mac dodał nieco więcej, aby dostosować go do wersji 2.2 wymaganej przez CRT. Obecnie drukarki muszą nieco obniżyć ten poziom w stosunku do otrzymywanych danych 2.2, ale nadal potrzebują ich dużo.

Obecnie standardem jest gamma 2.2, dzięki czemu wszystkie istniejące dane RGB na wszystkich światach są nadal kompatybilne.


1
LED jest rodzajem podświetlenia. Głównym powodem korekcji gamma NIE jest optymalizacja dla CRT, nawet jeśli kiedykolwiek była.
Euri Pinhollow,
Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.