: Retur til startside
: Retur til hovedsiden om farver
 
: Om afstanden mellem farver
: Farvecirklen
Dette appendix er tilføjelser til  CIE's farvesystem  og  computerskærmens farvesystem   

TILFØJELSE til FARVESYSTEMER
sæt talværdier på farver

Formelsamling     afstandsformler i CIELUV og CIELAB     Computerskærmens farver     HuntLAB-systemet (forkert?)     University of British Colombia's forkerte omregning     Matricer     Y  for de rene farver

NØJAGTIGHED : 
For at undgå afrundingsfejl er nogle af tallene skrevet med en anelse størrer nøjagtighed end jeg har belæg for. Enkelte tal står med påfaldende få decimaler, f.eks. nedenfor i ligningen
     X = 0,49· R + 0,31· G + 0,20· B
Koefficienterne  0,49  0,31 og  0,20  er her pr. CIE-definition helt nøjagtige, i stedet for f.eks. 0,49 kunne der have stået 0,49000000000 .
I de fleste tilfælde er dog tale om en beregnet værdi, der nødvendigvis må rundes af. Jeg har da, i en kommentar i kildeteksten til denne hjemmeside, skrevet tallene med urimeligt mange decimaler.

F O R M E L S A M L I N G     

Se osse
script der automatisk kan omregne mange af tallene, og osse indeholder en formelsamling .
   
Bølgelængde R,G,B fra Intensiteten Intensiteten fra R,G,B
 435,8 nm  R = IR  IR = R
 546,1 nm  G = IG· 0,2178317   IG = G· 4,5907
 700    nm B = IB· 16,648076  IB = B· 0,060067 
 I er de målte intensiteter ved de 3 bølgelængder.
 R, G, B er 3 (overflødige) størrelser som CIE indfører 
 For hvid er  R = G = B
 
   X = 0,49· R + 0,31· G + 0,20· B   
Y = 0,17697· R + 0,81240· G + 0,01063· B
Z = 0,00· R + 0,01· G + 0,99· B
Luminansen Y er et mål for den samlede intensitet:
Y = 0,17697· (IR+IG+IB)
    x = X/(X+Y+Z)  
y = Y/(X+Y+Z)
z = Z/(X+Y+Z)
  x + y + z = 1  (altid)
  For hvid er x = y = z = 1/3  
  og  X = Y = Z = R = G = B
 
 
   De omvendte ligninger: Find (R,G,B) ud fra (X,Y,Z) -  kan konstrueres som beskrevet  
og nedenfor tilsvarende med IR, IG, IB.
  
    R =   2,364614· X   -0,896541· Y   -0,468073 · Z   
G = -0,515166· X   +1,426408· Y -0,088758· Z
B = - 0,005204· X   -0,014408· Y +1,009204· Z
   X = 0,49 · IR +  0,0675278· IG +  3,329615 · IB   
Y = 0,17697· IR +  0,17697· IG +  0,17697· IB
Z = 0 · IR +  0,00217832· IG +  16,4816  · IB
    I= 2,364602· X  -  0,896519· Y  -  0,468072· Z   
I= - 2,364919· X  +  6,548060· Y  +  0,407452· Z
I= 0,0003126· X  -  0,0008654· Y  +  0,0606199· Z

Find  X,Z  ud fra  x,y,Y    
 Da x/X = y/Y = z/Z 
 og z = (1-x-y)
 bliver X = xY/y
 og      Z = (1-x-y)·Y/y 

 u = 4x/(-2x+12y+3) = 4X/(X+15Y+3Z) 
 v = 9y/(-2x+12y+3) = 9Y/(X+15Y+3Z) 
 u skulle egentlig hedde u'   og v skulle hedde v'   men jeg snyder. Efter en ældre definition var v mindre, og da v blev døbt om til v' blev også u døbt om til u', skønt den var uændret.
          v' = vny = 1.5·vgl = 1.5·v
          u' = uny = 1.0·ugl = 1.0·u
 x = 9u/(6u-16v+12)  
 y = 4v/(6u-16v+12)  
LYSHED
Lysheden (lightness) skulle egentligt hedde L*, men jeg snyder og nøjs med at kalde den L.
        for Y/Yn > 0,008856    
L = 903,3·Y/Yn for Y/Yn < 0,008856
     Yn er Y for farven hvid.
LUMINANS  
Luminansen er farvens lyshed, defineret ved at dele det synlige lys fra en lyskilde op i bølgelængdeintervaller, og summe (intensitet · øjets følsomhed).
Denne størrelse får somme tider og til almindelig forvirring betegnelsen L, og det er derfor det andet L ( <– ) egentligt skulle hedde L*.
Der gælder :   Y = 0,17697 · luminansen


I formlerne nedenfor betyder   (X/Xn)1/3   kubikroden af forholdet mellem X-værdien for farven og X-værdien for hvid (Xn); hvis forholdet X/Xn er mindre end 0,008856 skal kubikroden erstattes med      7,787X/Xn+0,137931034
Og tilsvarende for (Y/Yn)1/3 og (Z/Zn)1/3.
un og vn er u og v for hvid, normalt er  un = 0,2105  og  vn = 0,4737
  u*   =   13L(u-un)
I 1976 anbefalede CIE at definere afstanden mellem farver DE som afstanden i
et u*-v*-L farvelegeme DEuv=eller et a*-b*-L farvelegeme DEab=
((DL)2 + (Du*)2 + (Dv*)2 )0,5  ((DL)2 + (Da*)2 + (Db*)2 )0,5 
forskellen i kulør (hue) DHuveller DHab
DHuv = (DEuv2 - DL2 - DCuv2)0,5 DHab = (DEab2 - DL2 - DCab2)0,5
  v*   =   13L(v-vn)
  hue angle  (ej at forveksle med DH)
  huv = arctan(v*/u*)
  Cuv =   ( (u*)2+(v*)2 )0,5
  C kaldes farvens chroma
  a*   =    500((X/Xn)1/3-(Y/Yn)1/3 I 1994 blev formlen for farveafstand ændret og betydeligt mere kompliceret, men skulle til gengæld bedre svare til øjets opfattelse af afstanden.
  idet   k=1, undtagen i tekstilindustrien hvor k=2
  bliver afstanden mellem 2 farver
 ((DL/k)2 + (DC/(1+0,045Cx))2 + (DHab/(1+0,015Cx))2
 Cx kan være Cab for den 1.ste farve, men da det er usymmetrisk og ulogisk bruges ofte den geometriske middelværdi (C1C2)0,5
Filosofisk bemærkning :  Cx-definitionerne gør at rummet bliver ikke-euklidisk. Det er teoretisk umuligt at lave et farvelegeme, hvor afstanden mellem farverne svarer til hvad øjet opfatter som afstanden
  b*   =    200((Y/Yn)1/3-(Z/Zn)1/3
  hab = arctan(b*/a*)
  Cab =   ( (a*)2+(b*)2 )0,5
  W*   =   25Y1/3-17
  U*   =   13W*(u-un)
  V*   =   8,6667W*(v-vn)




COMPUTERSKÆRMENS   FARVER     

Se osse
script der automatisk kan omregne computerskærmens tal til CIE's system.
 
farveuv xyz XYZ RGB IRIG IB
Rød0,4510,523 0,6400,3300,030  130,9  67,4 6,0  246,1 29,3 5,8  246,1 134,6 0,35 
Grøn0,1210,561 0,2900,5980,111 83,0 171,1 31,8  28,1 204,0 30,0  28,1 936,7 1,80 
Blå0,1750,158 0,14970,06010,7902 41,1 16,5 217,2  -19,2 21,6 219,2 -19,2 99,3 13,16 
Hvid0,21050,4737 1/3 1/3 1/3 255255255 255255255 255,0 1170,6 15,32 


For farven #rrggbb gælder:
  x = X/(X+Y+Z) = (0,6404· rr2 + 0,4063· gg2 + 0,2013· bb2) / ( rr2 + 1,3990· gg2 + 1,3451· bb2)  
  y = Y/(X+Y+Z) = (0,3301· rr2 + 0,8372· gg2 + 0,0808· bb2) / ( rr2 + 1,3990· gg2 + 1,3451· bb2)  
u = 4x/(-2x+12y+3)          v = 9y/(-2x+12y+3)
 X =  0,002012· rr2   + 0,001277· gg2   + 0,000633· bb2
 Y =  0,001037· rr2   + 0,002631· gg2   + 0,000254· bb2
 Z =  0,000093· rr2   + 0,000489· gg2    + 0,003340· bb2  
 rr2 =    655,965· X  - 299,476· Y  - 101,488· Z  
 gg2 =  - 260,549· X  + 504,545· Y  +   11,003· Z  
 bb2 =       19,925· X   -   65,531· Y   + 300,605· Z  
 R =  0,003785· rr2   + 0,000431· gg2   - 0,000295· bb2
 G =  0,000451· rr2   + 0,003138· gg2   + 0,000333· bb2
 B =  0,000089· rr2   + 0,000462· gg2    + 0,003370· bb2  
 rr2 =  268,424· R  -   40,960· G  +  27,536· B  
 gg2 =  - 38,379· R  + 329,233· G  -   35,853· B  
 bb2 =  -   1,834· R   -   44,054· G   + 300,888· B  
Tallene ovenfor er rundet en smule af ;  men de uafrundede tal står i kildeteksten til denne hjemmeside.

HUNTER Lab
 :  Extern reference til omregning, når talværdien indtastes, men uden forklaring på hvordan omregningen sker.
Ud fra den sidstnævnte reference har jeg fundet en række farvers (X, Y, Z)-værdier og undersøgt om jeg kunne finde en sammenhæng mellem dem og (rr, gg, bb)-værdierne. Det viste sig - overraskende - at der var en liniær sammenhæng, ikke med ( R ,  G ,  B ) men med ( R2 ,  G2 ,  B2 ) :
  X  = 0,000637· rr2 -0,0000600· gg2 + 0,0000278· bb2 
  Y   = 0,000332· rr2 -0,00000677· gg2 + 0,00000358· bb2    
  Z = 0,0000364· rr2 -0,0000271· gg2 + 0,0000121· bb2 
  x   = X / (X+Y+Z)
  y    = Y  / (X+Y+Z)
  z  = Z / (X+Y+Z)
Af mangel på beviser har jeg endnu ikke mærket disse formler med FORKERT, men der er nogle mærkelige ting ved dem.
Jeg har tidligere skrevet at  X, Y og Z  aldrig blev negative, og det bliver de altså her for nogle farvers vedkommende.


University of British Colombia's (forkerte) omregning
 :  Extern reference til University of British Colombia hjemmeside om omregninger til CIE-systemet.
Ved at regne på tallene i den reference er jeg kommet til følgende FORKERTE omregninger fra computerskærmens farver (her kaldet rr, gg, bb) til CIE's (x, y, z) kromaticiteter, for en almindelig computerskærm:
X= ( 18,4· rr + 15,6· gg + 10.0· bb ) x= X / ( X + Y + Z )     
Y= ( 10,3· rr + 30,5· gg +  4,9· bb ) y= Y / ( X + Y + Z )     
Z= (  1,7· rr +  7,4· gg + 52,0· bb ) z= Z / ( X + Y + Z )     
Ovennævnte ref. bruger ordet "luminacens" om Y ( et dumt navn - forveksles alt for let med "luminance" ) og sætter L=Y


Matematik med matricer

Ovenfor
er et eksempel på 3 ligninger til at bestemme (X,Y,Z) når man kender (R,G,B). Hvis omvendt vi kender (X,Y,Z) og vil finde (R,G,B), har vi 3 ligninger med 3 ubekendte:
    X = 0,49· R + 0,31· G + 0,20· B   
Y = 0,17697· R + 0,81240· G + 0,01063· B
Z = 0,00· R + 0,01· G + 0,99· B
Det kan
skrives
som
    X =   xa  xb  xc · A = M · A
Y   ya  yb  yc B B
Z   za  zb  zc C C
Jeg har skrevet de 3 ligninger på matrix-form; selve matrixen er de klamme paranteser med 9 tal i, her er tallene xa=0,49  xb=0,31 osv, og jeg har desuden erstattet  R G B  med  A B C  for at det skulle se mere generelt ud. Selve matricen har jeg kaldt M .
Jeg gør det så omstændigt fordi ligningerne ellers ville blive fuldstændigt uoverskuelige når jeg nu vil lave et sæt ligninger, så man kan regne baglæns - dvs finde  A B C  når man kender  X Y Z .
Jeg har automatiseret udregningen og lavet et script, så du kan indtaste tallene og få udregnet den inverse matrix, scriptet kommer du til ved at klikke
.
Desuden er der her de tilhørende formler:
Jeg har her brugt nogle determinanter - det er de to lodrette streger med tal imellem. Hver determinant udregnes til ét tal, determinanter med 2·2 tal udregnes således:
=    ad - bc
N er en determinant med 3·3 tal, de udregnes groft sagt ved at summe alle produkter af tallene langs diagonaler den ene vej, fratrukket det tilsvarende langs diagonaler den anden vej - det lød kryptisk men facit bliver: 
     N =  xaybzc  +  xbycza  +  xcyazb  -  xayczb  -  xbyazc  -  xcybza

Har man kun 2 ligninger med 2 ubekendte bliver ligningerne:

  

Y  for de rene farver          

Jeg har tidligere
  skrevet, at når vi kendte x,y,z for de rene farver, og vedtog at for hvid skulle Y=255, så var vi i stand til at finde Y for rød (R= #FF0000), grøn (G= #00FF00) og blå (B= #0000FF).
Hvis rød har Y=YR, grøn Y=YG og blå Y=YB, så bliver for hvid Y = YR + YG + YB = 255, og tilsvarende for X og Z (for hvid er X = Y = Z) .  Jeg benytter nu at jeg kender x, y, z  for R, G og B:
  xr = 0,64042    yr = 0,33007    zr = 0,02950    XR = x/yr· YR = 1,94024· YR     ZR = z/yr· YR = 0,08939· YR
  xg = 0,2904    yg = 0,5984    zg = 0,1112    XG = xg/yg· YG = 0,48529· YG     ZG = zg/yg· YG = 0,18583· YG
  xb = 0,14969   yb = 0,06006    zb = 0,79025    XB = xb/yb· YB = 2,49209· YB     ZB = zb/yb· YB =13,15665· YB
Xhvid = 255 = XR+XG+XB = 1,94024· YR + 0,48529· YG + 2,49209· YB 
Yhvid = 255 = YR+YG+YB = 1· YR + 1· YG + 1· YB 
Zhvid = 255 = ZR+ZG+ZB = 0,08939· YR + 0,18583· YG + 13,1566· YB 
På matrixform kan ligningerne skrives som:
255 =   1,94024  0,48529    2,49209   · YR
255 111 YG
255   0,08939  0,18583  13,1566   YB
Jeg benytter nu matematikken ovenfor til at finde M-1, så er
YR =   0,68033   -0,31060  -0,10526   · 255 =    67,440 
YG  -0,68539    1,32724   0,02894   255  171,052 
YB   0,005058 -0,016636  0,076314 255    16,508 
Altså: For ren rød er Y=67,440 ,  for grøn er Y=171,052 ,  og for blå er Y=16,508