mediengestalter.info
FAQ :: Mitgliederliste :: MGi Team

Willkommen auf dem Portal für Mediengestalter

Aktuelles Datum und Uhrzeit: Mi 24.04.2024 21:11 Benutzername: Passwort: Auto-Login

Thema: Farbraumtransformation von Unbekannt in XYZ? vom 08.12.2008


Neues Thema eröffnen   Neue Antwort erstellen MGi Foren-Übersicht -> Multimedia -> Farbraumtransformation von Unbekannt in XYZ?
Autor Nachricht
nissi01
Threadersteller

Dabei seit: 08.12.2008
Ort: -
Alter: -
Geschlecht: -
Verfasst Mo 08.12.2008 16:16
Titel

Farbraumtransformation von Unbekannt in XYZ?

Antworten mit Zitat Zum Seitenanfang

Hallo an Alle,

ich habe zur Zeit ein riesen Problem und komme deswegen einfach nicht weiter. Vielleicht kann mir hier jemand helfen...

Ich habe eine Filmsequenz in 10bit dpx LOG, die ich in den XYZ-Farbraum transformieren muss. Die Bilder wurden nach DCI Norm mit LUT für Kodak Vision Print gegradet. Leider steht mir die LUT nicht zur Verfügung. Das einzige was ich habe, sind die Primärvalenzen (R: x 0.680 y 0.320; G: x 0.265 y 0.690; B: x 0.150 y 0.060) und der Weißpunkt (W: x 0.335 y 0.350).
Gamma: 2.6

Weiß jemand, wie ich einen unbekannten Farbraum unter Berücksichtigung des Weißpunktes mit einer 3x3 Matrix in den XYZ-Fabraum transformieren kann? Die Standard-Konversionsmatrix ist mir natürlich bekannt, allerdings geht die ja immer von Wx,y,z = 1/3 aus...

Ich wäre jedem dankbar, der mir ein bisschen Licht ins dunkle bringt!

Viele Grüße,

nissi01

[edit by Nimroy]
Da sehr speziell nach Multimedia verschoben


Zuletzt bearbeitet von nissi01 am Mo 08.12.2008 17:27, insgesamt 2-mal bearbeitet
  View user's profile Private Nachricht senden
M_a_x

Dabei seit: 28.02.2005
Ort: -
Alter: -
Geschlecht: Männlich
Verfasst So 04.01.2009 16:04
Titel

Antworten mit Zitat Zum Seitenanfang

Ist zwar schon 'n bischen her, aber mir war grad' danach:


Ich war dann mal so frei die Matrix nach Deinen Angaben aufzustellen:


Gilt für lineare RGBs.
Musst also vorher die RGBs linearisieren, d.h. das Gamma 2,6 rausrechnen und RGBs auf 0....1 skalieren.
Soll ich oder weist Du wie's funktioniert?

Kochanleitung:
http://www.brucelindbloom.com/index.html?WorkingSpaceInfo.html#Specifications
Nach oben scrollen.
(EDIT:erst diesen link suchen: If you are interested in the RGB-to-XYZ and XYZ-to-RGB matrices for these working spaces, you will find them summarized here. und dann nach oben scrollen)
Sag' mal Bescheid. ob's noch geholfen hat.


Zuletzt bearbeitet von M_a_x am So 04.01.2009 16:09, insgesamt 1-mal bearbeitet
  View user's profile Private Nachricht senden
Anzeige
Anzeige
nissi01
Threadersteller

Dabei seit: 08.12.2008
Ort: -
Alter: -
Geschlecht: -
Verfasst Mi 14.01.2009 15:41
Titel

Antworten mit Zitat Zum Seitenanfang

Vielen Dank für Deine Antwort!!! *Thumbs up!*

Ich bin die Rechnung heute mehrmals durchgegangen, nur leider komme ich immer auf ein anderes Ergebnis. Meine Befürchtung: ich vermassel die Gammakorrektur... Menno!

Ich bin mir nicht sicher, ob meine Gleichung richtig ist:

x'=(255*x^(1/2,6))/(255^(1/2,6))

Kannst Du mir weiterhelfen?

Viele Grüße,

nissi01
  View user's profile Private Nachricht senden
M_a_x

Dabei seit: 28.02.2005
Ort: -
Alter: -
Geschlecht: Männlich
Verfasst Mi 14.01.2009 23:46
Titel

Antworten mit Zitat Zum Seitenanfang

nissi01 hat geschrieben:
Vielen Dank für Deine Antwort!!! *Thumbs up!*

Ich bin die Rechnung heute mehrmals durchgegangen, nur leider komme ich immer auf ein anderes Ergebnis. Meine Befürchtung: ich vermassel die Gammakorrektur... Menno!

Ich bin mir nicht sicher, ob meine Gleichung richtig ist:

x'=(255*x^(1/2,6))/(255^(1/2,6))

Kannst Du mir weiterhelfen?

Viele Grüße,

nissi01


Hi nissi,

Welche Rechnung/Ergebnis meinst Du?
Kommst Du nicht auf die obige Koeffizientenmatrix?

Bin sicher, dass die stimmt.
Mal die Probe für Rot, RGB=255/0/0:
Die Rgb's werden auf [0....1] skaliert, das heisst Rot 255/0/0 wird 1/0/0. (Skalierung: R=R'/255; G=G'/255; B=B'/255)
und in die Matrix eingesetzt:

X=0,531729*R+0,263008*G+0,162406*B
Y=0,250226*R+0,684812*G+0,064962*B
Z=0,000000*R+0,044662*G+0,855338*B

mit R=1 und G=B=0 ergibt sich:
X=0,5317
Y=0,2502
Z=0,0000

Klein x und klein y für Rot:
x=X/(X+Y+Z)=0,68
y=Y/(X+Y+Z)=0,32

Das sind genau die Werte aus Deinen Angaben.
Für den Rest habe ich es ebenfalls überprüft, war richtig. ich tipps aber nicht alles hier hin.


Für die Berechnung oben dargestellter Matrixkoeffizienten brauchst Du keine Gammakorrektur.

Wann also die Gammakorrektur?
Die Matrix wird mit linearisierten RGB's "gefüttert, das heisst vor dem Einsetzen der RGB in die Matrix wird an den RGB's die Gammakorrektur durchgeführt.

R_lin=(R_nichtlin)^Gamma

Beispiel: Rot unlinearisiert=128/0/0
Rot_lin=(128/255)^Gamma, im Beispiel also: R_lin=(128/255)^2,6

Diese linearisierten RGB werden dann zur Berechnung der XYZ in die Matrix eingesetzt.

(Ich wills nicht verkomplizieren, aber es gibt auch eine modifizierte Gammakorrektur, wie sie bei sRGB angewandt wird, aber da kenne ich den von Dir zitierten Standard nicht, wenn Du also einen link hättest.....).

Ich hoffe, das war jetzt nicht zu wirr.

Bitte, lass es mich wissen, wenn ich Dir irgendwie weiterhelfen kann. vielleicht kannst Du genauer beschreiben, wo's bei Dir "hakt".

Viele Grüsse
Max


Zuletzt bearbeitet von M_a_x am Mi 14.01.2009 23:53, insgesamt 1-mal bearbeitet
  View user's profile Private Nachricht senden
 
Neues Thema eröffnen   Neue Antwort erstellen
MGi Foren-Übersicht -> Multimedia


Du kannst keine Beiträge in dieses Forum schreiben.
Du kannst auf Beiträge in diesem Forum nicht antworten.
Du kannst an Umfragen in diesem Forum nicht mitmachen.