Zitat:
Zitat von mrieglhofer
Was du schreibst, hat wieder mit HDR nur indirekt zu tun. Auch eine 16Bit Abbildung würde im Farbraum sRGB eine Farbe, die nur im AdobeRGB darstellbar ist, außerhalb des Zahlenraum kodieren und damit abschneiden.
Du meinst, wen ich dich richtig verstehe, das ein 8Bit sRGB im 16Bit Zahlenraum kein Problem ist. Das gibts aber nicht.
|
Das was ich geschrieben habe ist korrekt, es geht nicht um 8 Bit Integer im Vergleich zu 16 Bit Integer sondern um 8 Bit Integer gegen 16 oder 32 Bit Floating Point (aka HDR).
Bei 16 Bit Integer hast Du Recht, wenn bei JPEG 0 = 0% und 255 = 100% entspricht, dann ist das bei 16 Bit Integer 0 = 0% und 65536 = 100%. Bei HDR (und damit meine ich echtes HDR, sprich .EXR oder 32 FP Tiff oder meinetwegen auch das RGBE-Format der .HDR Dateien) ist das aber anders, das sind floating point Werte wo gilt 0.0 = 0%, 1.0 = 100%, 2.0 = 200% usw. Damit sind alle Farben abbildbar, egal welcher Farbraum. Der Farbraum beschreibt hier lediglich, welche Farbe denn genau mit 100% gemeint ist. Ist eine Farbe außerhalb des Farbraums, dann ist sie mit HDR immer noch abbildbar, die Werte liegen nur nicht mehr zwischen 0 und 1.
Zitat:
Zitat von mrieglhofer
RAW hat den 16Bit Zahlenraum und dann dadurch fast alle Farbräume korrekt abdecken. Der native Farbraum ist ja größer als sRGB und AdobeRGB.
|
Naja, RAW deckt das ab, was der Sensor aufnehmen kann, das heißt nicht, daß das zwangsläufig größer ist als sRGB oder AdobeRGB, auch wenn das in der Praxis sicherlich so sein wird. Ich glaube man kann sich das RAW-Format wie einen simplen Photonenzähler vorstellen, der bis 65535 zählen kann. Poor-Man´s HDR stimmt also schon, sonst würden Sachen wie Expose-to-the-right gar nicht funktionieren.
Zitat:
Zitat von mrieglhofer
1) Einstellung auf sRGB und du hast die Probleme nicht. Außer du brauchst diese speziellen Farben. Dann RAW und als 16Bit im AdobeRGB ausgeben.
|
Das war ja eigentlich die Frage: Spielt das bei RAW überhaupt eine Rolle? Meine Vermutung ist mittlerweile "nein", da RAW ja nur einfach ein Dump der Sensordaten sein sollte. Die werden dann von der Software am Rechner in das Farbsystem konvertiert, das man der Software sagt, kann also auch was anderes wie z.B. eciRGB sein.
Zitat:
Zitat von mrieglhofer
2) Wenn das AdobeRGB Bild an den Monitor geschickt wird, kann er nur eine Farbraumumrechnung machen. Vermutlich wäre perzeptiv sinnvoll, aber nicht in jedem Fall.
|
Das ist eigntlich gar nicht so schwer:
AdobeRGB Eingabedatei->inverses AdobeRGB Gamma->linear AdobeRGB nach XYZ->XYZ
nach linear sRGB->sRGB Gamma->Displaydarstellung
Dadurch werden alle Farben, die von sRGB dargestellt werden können korrekt dargestellt. Farben die außerhalb des darstellbaren Bereichs liegen können natürlich nicht dargestellt werden und müssen irgendwie behandelt werden, am einfachsten durch Clampen der Werte.