1 |
greg |
1.2 |
{ RCSid $Id$ } |
2 |
greg |
1.1 |
{ |
3 |
|
|
Compute Luv color space and color differences from XYZ primaries. |
4 |
|
|
|
5 |
|
|
5/4/98 G.W.Larson |
6 |
|
|
} |
7 |
|
|
Xw = 1; Yw = 1; Zw = 1; { default white } |
8 |
|
|
sq(x) : x*x; |
9 |
|
|
up(Xi,Yi,Zi) : 4*Xi/(Xi + 15*Yi + 3*Zi); |
10 |
|
|
vp(Xi,Yi,Zi) : 9*Yi/(Xi + 15*Yi + 3*Zi); |
11 |
|
|
Ls(Yi) : if(Yi/Yw - .01, 116*(Yi/Yw)^(1/3) - 16, 903.3*Yi/Yw); |
12 |
|
|
us(Xi,Yi,Zi) : 13*Ls(Yi)*(up(Xi,Yi,Zi) - up(Xw,Yw,Zw)); |
13 |
|
|
vs(Xi,Yi,Zi) : 13*Ls(Yi)*(vp(Xi,Yi,Zi) - vp(Xw,Yw,Zw)); |
14 |
|
|
dE(X1,Y1,Z1,X2,Y2,Z2) : sqrt(sq(Ls(Y1)-Ls(Y2)) + sq(us(X1,Y1,Z1)-us(X2,Y2,Z2)) |
15 |
|
|
+ sq(vs(X1,Y1,Z1)-vs(X2,Y2,Z2))); |