Skip to content

Commit 2e32e06

Browse files
committed
Correct some variable names and minor refactor
Correct incorrect usage of p1 vs p2 in CAM16 Cosmetic: And structure J code to match Schlömer paper
1 parent 45836dd commit 2e32e06

File tree

1 file changed

+6
-6
lines changed

1 file changed

+6
-6
lines changed

coloraide/spaces/cam16_jmh.py

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -283,7 +283,7 @@ def xyz_d65_to_cam16(xyzd65: Vector, env: Environment, calc_hue_quadrature: bool
283283
env.fl
284284
)
285285

286-
p1 = 2 * rgb_a[0] + rgb_a[1] + 0.05 * rgb_a[2]
286+
p2 = 2 * rgb_a[0] + rgb_a[1] + 0.05 * rgb_a[2]
287287
a = rgb_a[0] + (-12 * rgb_a[1] + rgb_a[2]) / 11
288288
b = (rgb_a[0] + rgb_a[1] - 2 * rgb_a[2]) / 9
289289
u = rgb_a[0] + rgb_a[1] + 1.05 * rgb_a[2]
@@ -294,16 +294,16 @@ def xyz_d65_to_cam16(xyzd65: Vector, env: Environment, calc_hue_quadrature: bool
294294
# Eccentricity
295295
et = 0.25 * (math.cos(h_rad + 2) + 3.8)
296296

297-
t = 5e4 / 13 * env.nc * env.ncb * alg.zdiv(et * math.sqrt(a ** 2 + b ** 2), u + 0.305)
297+
p1 = 5e4 / 13 * env.nc * env.ncb * et
298+
t = alg.zdiv(p1 * math.sqrt(a ** 2 + b ** 2), u + 0.305)
298299
alpha = alg.spow(t, 0.9) * math.pow(1.64 - math.pow(0.29, env.n), 0.73)
299300

300301
# Achromatic response
301-
A = env.nbb * p1
302-
303-
J_root = alg.spow(A / env.a_w, 0.5 * env.c * env.z)
302+
A = env.nbb * p2
304303

305304
# Lightness
306-
J = 100 * alg.spow(J_root, 2)
305+
J = 100 * alg.spow(A / env.a_w, env.c * env.z)
306+
J_root = alg.nth_root(J / 100, 2)
307307

308308
# Brightness
309309
Q = (4 / env.c * J_root * (env.a_w + 4) * env.fl_root)

0 commit comments

Comments
 (0)