Ist Gamma noch wichtig zu berücksichtigen?


17

Verwenden verschiedene Monitore (einschließlich mobiler Bildschirme) bei der Anzeige von Farbbildern immer noch erheblich unterschiedliche Gammafunktionen? Gibt es eine standardisierte Möglichkeit, Farben darzustellen, die dann entsprechend dem Gamma des Monitors übersetzt werden können, oder sind sie alle ähnlich genug, um dies heutzutage auszuschließen?


5
Ich würde sagen, dieser Beitrag ist zum Thema. Es scheint sich stark auf GPU Gems 3 zu beziehen: Kapitel 24. Die Wichtigkeit, linear zu sein http.developer.nvidia.com/GPUGems3/gpugems3_ch24.html
Alan Wolfe

5
Ob an anderer Stelle etwas zum Thema gehört, ist für diese Entscheidung nicht relevant. Wir müssen nur wissen, ob es hier um Themen geht .
Trichoplax

1
Ich poste absichtlich Grenzfragen, um zu messen, wo sich die Grenze befindet. Bitte stellen Sie so viele Unsicherheiten wie möglich in Bezug auf Meta.
Trichoplax

3
Willkommen an anderer Stelle zu sein , ist nie ein richtiger Grund allein etwas off-topic zu erklären hier .
Chris sagt Reinstate Monica

2
@robobenklein Nirgendwo im Bereich dieses Stapels wird angegeben, dass dieser Stapel speziell für 3D-Grafiken vorgesehen ist.
Qix

Antworten:


15

Ja, während viele Bildschirme und Betriebssysteme einen Gammawert von 2,2 verwenden, müssen Ihre Hardware- und Berechnungsergebnisse noch korrigiert werden. Es gibt auch spezielle Medien wie Fernsehprogramme, die ein anderes Gamma haben. Sensorausrüstungen wie Kameras sind meist linear und müssen entsprechend angepasst werden. Außerdem kann der Benutzer sein System auf ein beliebiges Gamma einstellen.

In der Computergrafik liegt der Hauptgrund für die Berücksichtigung von Gamma darin, dass Ihre Berechnung höchstwahrscheinlich im linearen Raum * erfolgt oder die Summierung der Lichtbeiträge unnötig kompliziert wird. In jedem Fall ist Gamma wirklich eine Vereinfachung der Dinge. Wenn es möglich ist, die Rechenzeit dafür zu investieren, ist es viel besser, Profil-zu-Profil-Konvertierungen durchzuführen.

Mathematische Erklärung

Dies ist möglicherweise einfacher zu verstehen. Ihr Monitor hat einen Anzeigefehler von Dies ist kein Problem, wenn Ihre Daten mit übereinstimmen. Wenn Sie jedoch Folgendes berechnen möchten:g(x)g(x)

a+b+c+d

und , , , haben den Fehler von Sie tatsächlich berechnen müssten.abcdg(x)

g(g1(a)+g1(b)+g1(c)+g1(d))

Sie müssten dies für jedes Unterelement immer und immer wieder tun. Daher müssen Sie die Transformation nicht jedes Mal ausführen, wenn Sie alle einmal in linear und dann wieder zurück transformieren.

Und schließlich ein künstlerischer Grund

Mit einem anderen Gamma sieht es vielleicht einfach besser aus. Viele Spiele haben aus diesem Grund eine Gamma-Anpassung.

* Der schlimmste Fall ist, dass Sie Ihre Berechnungen als linear betrachten, die nichtlinearen Ausgabeeigenschaften der Monitore jedoch nicht ausgleichen.


Haben wir schon Latex?
Joojaa

2
Nein, aber wir hoffen, dass wir es in Zukunft tun . Sie können jedoch auch eine Antwort als Beispiel für die Notwendigkeit hinzufügen.
Chris sagt Reinstate Monica

Wenn Sie zeigen möchten, wie Ihre Antwort aussehen würde , wenn wir MathJax hätten, können Sie mathurl.com verwenden , um den Fall zu klären .
Trichoplax

11

Der De-facto-Standardfarbraum für digitale Bilder ist heutzutage sRGB . sRGB ist eine gute Standardannahme, wenn Sie mit einem Display arbeiten, dessen exakter Farbraum nicht bekannt ist (dh auf dem die meisten zufälligen Displays möglicherweise von jemandem ausgeführt werden), oder mit Bildern, deren Farbraumkodierung nicht bekannt ist (dh auf denen die meisten zufälligen Bilddateien möglicherweise auftreten). .

Der sRGB-Standard definiert die CIE-Chromatizität der reinen roten, grünen und blauen Primärfarben und des Weißpunkts. Mit anderen Worten, er definiert, wie diese Primärfarben und Weißfarben in Bezug auf reine Wellenlängen wahrnehmbar aussehen sollen.

sRGB definiert auch eine Gammakurve, die zur Codierung der RGB-Werte verwendet wird. Die Gammakurve ist der Teil, mit dem sich Grafikprogrammierer normalerweise befassen, da wir Farben zwischen sRGB und linear hin und her konvertieren müssen, um die Beleuchtung physikalisch korrekt zu berechnen. Alle modernen GPUs verfügen über eine integrierte sRGB-Unterstützung: Sie können die Gamma-Transformationen in der Hardware automatisch anwenden, wenn Sie eine Textur abtasten oder einen Pixelwert auf ein Render-Ziel schreiben.

In Bezug auf Monitore sollte es mit einem qualitativ hochwertigen Gerät möglich sein, seine Einstellungen zu kalibrieren (oder es wird möglicherweise vorkalibriert geliefert), damit sein Ausgang so genau wie möglich mit sRGB übereinstimmt. Falls der Monitor selbst dies nicht kann, kann beim Scannen auch eine begrenzte Menge an Farbkorrekturen an der GPU vorgenommen werden. Es gibt einige kleine Hardware-Nachschlagetabellen, durch die die RGB-Werte gemappt werden, bevor sie über die Leitung gesendet werden.

Möglicherweise stoßen Sie auch auf Rec. 709 , der Standardfarbraum für HDTVs; Es ist sehr ähnlich zu sRGB, verwendet die gleichen Primärfarben und Weißpunkte, aber eine etwas andere Gammakurve. Einige High-End-Monitore verwenden den Adobe RGB- Farbraum, der etwas breiter ist als sRGB. Fotografen neigen dazu, diese zu mögen, weil sie getreuer darstellen, wie Fotos aussehen, wenn sie gedruckt werden. Die nächste Generation von HDR-Fernsehern, die (hoffentlich) in den nächsten Jahren herauskommen wird, wird Rec verwenden. 2020 , das einen riesigen Umfang hat und 10 oder 12 Bits pro Komponente anstelle von 8 benötigt.

Um auf Ihre Frage zurückzukommen: Müssen Sie sich Sorgen machen, dass verschiedene Monitore ein unterschiedliches Gamma haben? Nicht viel. Für Spiele und allgemeine PC-Grafiken kann man so ziemlich von sRGB ausgehen, und wenn sich der Benutzer wirklich um die Farbgenauigkeit kümmert, wird er einen guten, kalibrierten Monitor haben. Wenn Sie Software für Fotografen oder Printmedien oder für HDR-Videostandards der nächsten Generation produzieren, müssen Sie sich möglicherweise Gedanken über Farbräume mit großem Farbumfang machen.


Breitere Gamut-Monitore werden in naher Zukunft ebenfalls an der Tagesordnung sein. Beispielsweise kalibriere ich auf meiner art worstation nicht auf sRGB, aber mit dem Profil-zu-Profil-Konverter sehen Bilder immer noch so aus wie auf meinem Entwicklungscomputer.
Joojaa
Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.