Avatar billede kfolmer Nybegynder
20. december 2003 - 01:23 Der er 6 kommentarer

Omregning fra RGB farve til lysbølgelængde (nm)

Hejsa

En 8 bit RGB farve består af tre farver i 8 bit farvedybde (vel korteste beskrivelse). Med de 3 byte/pxl kan man generere ca. 1,6 mio farver.

Er der nogen der ved hvordan man kan omregne RGB farve oplysningerne til lysbøgelængder. Der må ligge noget teori bag genereringen af farverne, der gør at man kan finde en standard algoritme et sted, så man kan lave et farve analyse program?
Avatar billede jakoba Nybegynder
20. december 2003 - 01:44 #1
du kan se lidt af bølgelængde værdierne her.
    http://aries.ento.vt.edu/ITAgric/color.html

mange af de farver du kan lave med RGB er ikke 'rene' farver. Gul med lidt sort i giver okker og den farve findes ikke som sig selv i det synlige spectrum #CCCC00

På den måde er klarhed/snavethed er en anden faktor i farver som ikke lige kan udtrykkes som en simpel bølgelængde.

mvh JakobA
Avatar billede Slettet bruger
20. december 2003 - 01:52 #2
Her er nogle citater fra et par sider jeg fandt:

http://www.geo.fmi.fi/~tmakinen/kw_rgb.shtml

I am looking for a RGB to wavelength converter. Do you have it?
No, I don't, and it's not even possible to make one, because most RGB values do not correspond to any single wavelength.

http://webmineral.com/help/Reflectivity.shtml

Since RGB color is based on human perception, there is no "correct" value of RGB to wavelength.

Because the color response of computer monitors is also a variable, the colors represented from these examples is only approximate.

http://www.repairfaq.org/sam/laserioi.htm#ioimatc

If you're happy matching only the *hue* of the colours, while allowing the saturation to be less, then you can "match" most pure spectral colours in this sense. Even then, nobody can give you a table of the results, since the answer depends on exactly *what* red, green, and blue primary colours you are mixing.

Konklusionen må være, at der findes ikke nogen standardløsning. Det midterste af linksene har dog et skema, som du måske kan bruge, hvis du vil forsøge at lave en tilnærmet skala.
Avatar billede kfolmer Nybegynder
20. december 2003 - 01:58 #3
#CCCC00 er jo farvedybde CC i rød og grøn, mens ingen dybde i blå. Det må jo beskrive et overlap mellem rød (700nm) og grøn (546nm). Var der blå i (eks #CCCC11) ville farven være lysere, men stadig gul.

Jeg kender godt lidt farve teori, og det er ikke en let opgave. Der må dog ligge en algoritme et sted derude.

60 point til den dygtige.
Avatar billede kfolmer Nybegynder
20. december 2003 - 02:14 #4
Ja vi fik nået det meste af vejen. Der ligger ikke en algoritme endnu, men jeg kan begynde at lave en simpel omregnings algoritme.

Jeg holder den åben et par dage endnu før jeg accepterer sandbox. Vi må se hvad der kommer af indlæg.
Avatar billede jakoba Nybegynder
20. december 2003 - 02:22 #5
her er nogle farvekonverteeringsalgoritmer:
http://www.cs.rit.edu/~ncs/color/t_convert.html
'Hue' i HSV svarer næsten til bølgelængden

mvh JakobA
Avatar billede jakoba Nybegynder
20. december 2003 - 04:08 #6
der ligger en lille applet her: http://www.cs.rit.edu/~ncs/color/a_spectr.html
hvir du kan lege med forskellige kombinationer af frekvenser og aflæse den tilsvarende XYZ værdi. (som så igen nogen gang kan oversættes til RGB
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester