Seite 1 von 1

Farbtemperatur aus RGB?

Verfasst: Do Mär 08, 2012 22:15
von Elwood
Mal was zum Mitdenken:

Ich suche eine moeglichst einfache Berechnungsvorschrift wie
ich aus den RGB Daten (z.B. CIE RGB Farbraum) einer bestimmten
Farbe die Farbtemperatur ermitteln kann.

Meine Vorueberlegung:

Prinzipiell mueste sich das ja aus dem Verhaeltnis von Rot- zu Blau-
Wert (Amplitude) ergeben, womit dann auch die Luminanzinformation
nicht benoetigt wird. D.h. der Wert waere unabhaengig von der
Lichtstaerke, was ja gewuenscht ist.

Nun gibt es 'leider' unterschiedliche Blaus und Rots (Wellenlaenge).
Wenn Rot und Blau in den Daten anders definiert als die
fuer die Farbtemperatur spezifizierten Wellenlaengen. braucht man
zusaetzlich die Gruen-Information; was die Sache verkompliziert.

Es ist gar nicht so einfach, das korrekt auszudruecken. Diejenigen, die
sich damit auskennen werden sicher verstehen was ich meine.

Im Grunde suche ich eine Berechnungsvorschrift fuer folgende Tabelle:
www.vendian.org/mncharity/dir3/blackbody

Im Web habe ich nichts gefunden, was ich "schnell" mal eben
implementieren koennte. Ich moechte/kann keine umfangreichen
Matrixoperationen ueber Zwischenfarbraeume (u,v; X,Y,Z) durchfuehren.
Kommt mir dafuer dann auch nicht auf aufs letzte Kelvin Genauigkeit an.

Oder denke ich zu einfach? Frueher wurde das doch auch analog
gemacht.

Vielen Dank schonmal fuer's Mitdenken!

- Juergen -

Verfasst: Fr Mär 09, 2012 0:41
von Daniel_S
Hier habe ich ein Skript gefunden, das vermutlich genau das tut, was du auch tun willst. Da ist eine zip-Datei zum Herunterladen; die enthaltene Datei kwrgb.py enthält einen entsprechenden Algorithmus. Ich weiß allerdings nicht, wie genau oder schnell der ist...

Hier gibt es auch noch einen Konverter und ein paar Hintergrundinfos:
http://www.brucelindbloom.com/ColorCalcHelp.html

Vielleicht hilfts ja. ;)

Viele Grüße,
Daniel

Verfasst: Fr Mär 09, 2012 15:17
von Elwood
Vielen Dank fuer Deine Hilfe, Daniel.

Da sind schonmal eine Menge Infos und Code Snippets beim Bruce
Lindbloom. Der/Ein Weg fuehrt dann wohl tatsaechlich von RGB ueber
XYZ zur Farbtemperatur.

Das kommt mir so aufwaendig und akademisch vor.

Mein Gossen Sixticolor arbeitet einfach mit je einem Cyan und Gelbfilter
und zwei Selen Zellen die an ein Drehspulinstrument angeschlossen .
sind. Ich bin daher von einem linearen, quadratischen, hoechstens
logarithmischen Zusammenhang. ausgegangen.

Darum geht es mir uebrigens auch. Ich moechte ein elektronisches
und kostenguenstiges Pendant des Sixticolor bauen. Es sind kaum
noch funktionsfaehige Sixticolors zu bekommen wegen der Degeneration
der Selen Zellen und kommerzielle Farbtemperaturmesser sind nicht
zu bezahlen.

Ich hatte eine Weile ueberlegt die Sixticolor mit Fotodioden o.ae.
umzubauen, bin aber in der letzten Woche ueber eine Reihe von
interessanten Baugruppen gestolpert.

Ich werde also erstmal testen ob die Hardware ueberhaupt so
funktioniert, wie ich mir das vorstelle.