Spektralfarben
Stefan
- grafik
0 Martin0 Magic Mike0 Martin
0 Ingo Turski0 MudGuard0 Martin0 Andreas-Lindig0 MudGuard
0 Thomas Meinike
Hi,
wie kann ich aus der Wellenlänge einer Farbe die zugehörigen RGB-Werte ausrechnen?
Stefan
Hallo Stefan,
das finde ich toll: Mal eine ganz andere Frage, die eigentlich nichts mit Webdesign direkt zu tun hat!
wie kann ich aus der Wellenlänge einer Farbe die zugehörigen RGB-Werte ausrechnen?
Das halte ich so für sehr schwierig, um nicht zu sagen unmöglich. Denn es ist ja schon für die sogenannten spektral reinen Farben nicht ganz einfach, die zugehörige Wellenlänge festzulegen: Hat reines Rot die Wellenlänge 630nm? Oder eher 624nm?
Ich würde eine Tabelle mit ein paar (subjektiv) zugeordneten Wertepaaren - also Wellenlänge zu RGB-Komponenten - anlegen, und die Zwischenwerte dann rechnerisch interpolieren. Das ist wahrscheinlich die einfachste und am ehesten praxistaugliche Lösung.
Aus rein akademischem Interesse würden mich aber andere Lösungsansätze auch interessieren.
Grüße aus dem Murrtal,
Martin
Moin Martin,
Das halte ich so für sehr schwierig, um nicht zu sagen unmöglich. Denn es ist ja schon für die sogenannten spektral reinen Farben nicht ganz einfach, die zugehörige Wellenlänge festzulegen: Hat reines Rot die Wellenlänge 630nm? Oder eher 624nm?
Ich würde eine Tabelle mit ein paar (subjektiv) zugeordneten Wertepaaren - also Wellenlänge zu RGB-Komponenten - anlegen, und die Zwischenwerte dann rechnerisch interpolieren. Das ist wahrscheinlich die einfachste und am ehesten praxistaugliche Lösung.
WOW. Respekt, das ist mir nicht nur am Wochende zu hoch :-)
regds
Mike
WOW. Respekt, das ist mir nicht nur am Wochende zu hoch :-)
Danke, aber mach dir nix draus. Physik war schon immer mein Steckenpferd. Da habe ich in der Schule gut aufgepasst, das meiste verstanden, und sogar manches bis heute behalten.
Dafür bin ich im Sport eine Niete... ;)
Schönen Sonntag noch
Martin
Hi,
gute Frage, aber ich habe leider keine Ahnng, ob es da eine Formel für gibt.
Außer zunächst mal zu googlen würde ich, wenn ich eine spektralreine Lichtquelle habe, wohl versuchen experimentell übereinstimmungen zu ermitteln (Lichtquelle auf den Ausdruck einer Farbtafel) und mal sehen, ob sich die ermittelten Werte in eine Formel packen lassen.
freundliche Grüße
Ingo
Hallo Stefan,
scheint nicht ganz so einfach:
http://www.marc-janott.de/marc/uni/bildkommunikation_ss00/cie.html
jedenfalls hast Du da schon mal eindeutige Anhaltswerte für die Grundfarben und kannst im Zweifel Interpolieren, wie schon beschrieben wurde. Wie man Spektralfarben in RGB darstellt habe ich mal hier beshrieben:
http://forum.de.selfhtml.org/archiv/2003/11/62886/#m356075
die letzte Bemerkung dort, daß es sich um den Netscape-Würfel handelt bitte ignorieren. Natürlich handelt es sich nur um einen kleinen Ausschnitt desselben.
Gruß, Andreas
Hi,
wie kann ich aus der Wellenlänge einer Farbe die zugehörigen RGB-Werte ausrechnen?
Das kann m.E. gar nicht eindeutig funktionieren. Denn im RGB-Wert ist ja nicht nur eine Wellenlänge, sondern auch Farbintensität und Helligkeit enthalten.
Sowohl #010000 als auch #ff0000 ist reines Rot.
cu,
Andreas
Das kann m.E. gar nicht eindeutig funktionieren. Denn im RGB-Wert ist ja nicht nur eine Wellenlänge, sondern auch Farbintensität und Helligkeit enthalten.
Sowohl #010000 als auch #ff0000 ist reines Rot.
Stimmt, daran hatte ich noch gar nicht gedacht...
Martin
Hallo,
Das kann m.E. gar nicht eindeutig funktionieren. Denn im RGB-Wert ist ja nicht nur eine Wellenlänge, sondern auch Farbintensität und Helligkeit enthalten.
neinein, das stimmt nicht. Du kannst die RGB-Werte sehrwohl auf reine, vollgesättigte Farben eingrenzen. Das sind alle Werte, in denen eine Farbe #ff ist, eine #00 und die dritte einen beliebigen Wert hat.
Sowohl #010000 als auch #ff0000 ist reines Rot.
Über die Begriffe "rein" und "gesättigt" will ich jetzt nicht streiten, weil die in den verschiedensten Farbenlehren very durcheinander gebraucht werden. Aber #010000 ist ein Dunkelrot und kommt im natürlichen Spektrum eben nicht vor, sondern nur #ff0000.
Gruß, Andreas
Hi,
Über die Begriffe "rein" und "gesättigt" will ich jetzt nicht streiten, weil die in den verschiedensten Farbenlehren very durcheinander gebraucht werden. Aber #010000 ist ein Dunkelrot und kommt im natürlichen Spektrum eben nicht vor, sondern nur #ff0000.
Hell und Dunkel ist aber nicht eine Frage der Wellenlänge, sondern eine der Strahlungsintensität.
cu,
Andreas
Hallo,
wie kann ich aus der Wellenlänge einer Farbe die zugehörigen RGB-Werte ausrechnen?
Hier gibt es einen Perl-Code zum Umrechnen ueber die so genannten "Color Matching Functions": http://www.geo.fmi.fi/~tmakinen/kw_rgb.shtml.
Man findet auch andere Naeherungen, z. B. diesen Ansatz: http://lists.runrev.com/pipermail/use-revolution/2003-August/021029.html. Ich habe das mal in eine PHP-Funktion portiert und damit ueber eine Schleife die RGB-Farben zu den Wellenlaengen 380 bis 780 nm ermittelt und als Farbspektrum ausgegeben: http://www.datenverdrahten.de/test/wavelength2rgb.php.
MfG, Thomas