āĻāĻāĻŋ āĻšāĻ˛ pfscolortransform āĻāĻŽāĻžāĻ¨ā§āĻĄ āĻ¯āĻž āĻāĻŽāĻžāĻĻā§āĻ° āĻāĻāĻžāĻ§āĻŋāĻ āĻŦāĻŋāĻ¨āĻžāĻŽā§āĻ˛ā§āĻ¯ā§āĻ° āĻ āĻ¨āĻ˛āĻžāĻāĻ¨ āĻāĻ¯āĻŧāĻžāĻ°ā§āĻāĻ¸ā§āĻā§āĻļāĻ¨ āĻ¯ā§āĻŽāĻ¨ āĻāĻŦā§āĻ¨ā§āĻā§ āĻ āĻ¨āĻ˛āĻžāĻāĻ¨, āĻĢā§āĻĄā§āĻ°āĻž āĻ āĻ¨āĻ˛āĻžāĻāĻ¨, āĻāĻāĻ¨ā§āĻĄā§āĻ āĻ āĻ¨āĻ˛āĻžāĻāĻ¨ āĻāĻŽā§āĻ˛ā§āĻāĻ° āĻŦāĻž MAC OS āĻ āĻ¨āĻ˛āĻžāĻāĻ¨ āĻāĻŽā§āĻ˛ā§āĻāĻ° āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°ā§ OnWorks āĻĢā§āĻ°āĻŋ āĻšā§āĻ¸ā§āĻāĻŋāĻ āĻĒā§āĻ°āĻĻāĻžāĻ¨āĻāĻžāĻ°ā§āĻ¤ā§ āĻāĻžāĻ˛āĻžāĻ¨ā§ āĻ¯ā§āĻ¤ā§ āĻĒāĻžāĻ°ā§āĨ¤
āĻāĻžāĻ°ā§āĻ¯āĻā§āĻ°āĻŽ:
NAME āĻāĻ°
pfscolortransform - āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ°āĻāĻžāĻ°ā§āĻ° āĻĻā§āĻāĻ¯āĻŧāĻž āĻŽā§āĻ¯āĻžāĻā§āĻ°āĻŋāĻā§āĻ¸ āĻĢāĻžāĻāĻ˛ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°ā§ āĻ°āĻ āĻā§āĻ°āĻŽāĻžāĻā§āĻāĻ¨ āĻĒā§āĻ°āĻ¯āĻŧā§āĻ āĻāĻ°ā§āĻ¨āĨ¤
āĻ¸āĻžāĻāĻ¨ā§āĻĒāĻŋāĻ¸āĻŋāĻ¸
pfscolortransform (--xyzrgb āĻŽā§āĻ¯āĻžāĻā§āĻ°āĻŋāĻā§āĻ¸-āĻĢāĻžāĻāĻ˛ | --rgbxyz āĻŽā§āĻ¯āĻžāĻā§āĻ°āĻŋāĻā§āĻ¸-āĻĢāĻžāĻāĻ˛) [---āĻ¸ā§āĻĨāĻžāĻ¨āĻžāĻ¨ā§āĻ¤āĻ°]
āĻŦāĻ°ā§āĻŖāĻ¨āĻžāĻ
āĻāĻāĻāĻŋ āĻĒāĻžāĻ ā§āĻ¯ āĻĢāĻžāĻāĻ˛ā§ āĻ¸āĻ°āĻŦāĻ°āĻžāĻš āĻāĻ°āĻž āĻāĻāĻāĻŋ āĻā§āĻ°āĻŽāĻžāĻā§āĻāĻ¨ āĻŽā§āĻ¯āĻžāĻā§āĻ°āĻŋāĻā§āĻ¸ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°ā§ āĻ°āĻāĻā§āĻ˛āĻŋāĻā§ āĻā§āĻ°āĻŽāĻžāĻā§āĻāĻ¨ āĻāĻ°āĻ¤ā§ āĻāĻ āĻāĻŽāĻžāĻ¨ā§āĻĄāĻāĻŋ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°ā§āĻ¨āĨ¤
āĻāĻŽāĻžāĻ¨ā§āĻĄāĻāĻŋ āĻ˛āĻŋāĻ¨āĻŋāĻ¯āĻŧāĻžāĻ°āĻžāĻāĻāĻĄ (āĻāĻžāĻŽāĻž āĻ¸āĻāĻļā§āĻ§āĻ¨ āĻ¨āĻ¯āĻŧ) āĻ°āĻā§āĻ° āĻ¸ā§āĻĨāĻžāĻ¨āĻā§āĻ˛āĻŋāĻ° āĻāĻ¨ā§āĻ¯ āĻāĻĻā§āĻĻāĻŋāĻˇā§āĻāĨ¤ āĻāĻ°āĻžāĻ¯āĻŧā§
3x3 āĻšāĻāĻ¯āĻŧāĻž āĻāĻāĻŋāĻ¤ āĻāĻŦāĻ āĻāĻāĻŋ CIE XYZ āĻĨā§āĻā§ ITU rec-āĻ āĻ°ā§āĻĒāĻžāĻ¨ā§āĻ¤āĻ°āĻŋāĻ¤ āĻšāĻāĻ¯āĻŧāĻž āĻāĻāĻŋāĻ¤āĨ¤ 709 RGB (sRGB āĻĒā§āĻ°āĻžāĻĨāĻŽāĻŋāĻ āĻāĻŋāĻ¨ā§āĻ¤ā§
āĻ°ā§āĻāĻŋāĻ, āĻāĻžāĻŽāĻž āĻ¨ā§āĻ) āĻŦāĻž āĻāĻāĻ RGB āĻĨā§āĻā§ CIE XYZ āĻĒāĻ°ā§āĻ¯āĻ¨ā§āĻ¤ (āĻ¨ā§āĻā§āĻ° āĻŦāĻŋāĻāĻ˛ā§āĻĒāĻā§āĻ˛āĻŋ āĻĻā§āĻā§āĻ¨)āĨ¤ āĻā§āĻā§āĻ¸āĻ āĻĢāĻžāĻāĻ˛
āĻāĻāĻāĻŋ āĻāĻŽāĻž āĻĻā§āĻŦāĻžāĻ°āĻž āĻĒā§āĻĨāĻ āĻāĻ°āĻž āĻ¸āĻāĻā§āĻ¯āĻž āĻ¸āĻš āĻ¤āĻŋāĻ¨āĻāĻŋ āĻ¸āĻžāĻ°āĻŋ āĻĨāĻžāĻāĻž āĻāĻāĻŋāĻ¤, āĻāĻĻāĻžāĻšāĻ°āĻŖāĻ¸ā§āĻŦāĻ°ā§āĻĒ:
0.0292,0.0126,0.0009
0.0052,0.0340, -0.0049
0.0055, -0.0059,0.0409
āĻ¯āĻĻāĻŋ --xyzrgb āĻ¸āĻ°āĻŦāĻ°āĻžāĻš āĻāĻ°āĻž āĻšāĻ¯āĻŧ, āĻĒāĻŋāĻā§āĻ¸ā§āĻ˛ āĻŽāĻžāĻ¨āĻā§āĻ˛āĻŋ āĻ¨āĻŋāĻŽā§āĻ¨āĻ°ā§āĻĒ āĻ°āĻ-āĻ°ā§āĻĒāĻžāĻ¨ā§āĻ¤āĻ°āĻŋāĻ¤ āĻšāĻ¯āĻŧ:
[RGB]' = M * [XYZ]
āĻ¯ā§āĻāĻžāĻ¨ā§ ' āĻŽā§āĻ¯āĻžāĻā§āĻ°āĻŋāĻā§āĻ¸ āĻā§āĻ°āĻžāĻ¨ā§āĻ¸āĻĒā§āĻāĻŋāĻļāĻ¨, * āĻšāĻ˛ āĻŽā§āĻ¯āĻžāĻā§āĻ°āĻŋāĻā§āĻ¸ āĻā§āĻ¨, RGB āĻšāĻ˛ RGB āĻŽāĻžāĻ¨ā§āĻ° āĻāĻāĻāĻŋ āĻā§āĻā§āĻāĻ°
āĻāĻŦāĻ XYZ āĻšāĻ˛ CIE XYZ trichromatic āĻŽāĻžāĻ¨ā§āĻ° āĻā§āĻā§āĻāĻ°āĨ¤ āĻ¯āĻĻāĻŋ --rgbxyz āĻ¸āĻ°āĻŦāĻ°āĻžāĻš āĻāĻ°āĻž āĻšāĻ¯āĻŧ,
āĻĒāĻŋāĻā§āĻ¸ā§āĻ˛ āĻŽāĻžāĻ¨āĻā§āĻ˛āĻŋ āĻ¨āĻŋāĻŽā§āĻ¨āĻ°ā§āĻĒ āĻ°āĻ-āĻ°ā§āĻĒāĻžāĻ¨ā§āĻ¤āĻ°āĻŋāĻ¤ āĻšāĻ¯āĻŧ:
[XYZ]' = M * [RGB]
āĻŦāĻŋāĻāĻ˛ā§āĻĒ
--xyzrgb āĻŽā§āĻ¯āĻžāĻā§āĻ°āĻŋāĻā§āĻ¸-āĻĢāĻžāĻāĻ˛, -x āĻŽā§āĻ¯āĻžāĻā§āĻ°āĻŋāĻā§āĻ¸-āĻĢāĻžāĻāĻ˛
āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ°āĻāĻžāĻ°ā§āĻ° āĻĒā§āĻ°āĻĻāĻ¤ā§āĻ¤ āĻŽā§āĻ¯āĻžāĻā§āĻ°āĻŋāĻā§āĻ¸ āĻšāĻ˛ āĻāĻāĻāĻŋ āĻ°ā§āĻĒāĻžāĻ¨ā§āĻ¤āĻ° āĻŽā§āĻ¯āĻžāĻā§āĻ°āĻŋāĻā§āĻ¸ āĻ¯āĻž XYZ āĻĨā§āĻā§ RGB āĻāĻžāĻ˛āĻžāĻ° āĻ¸ā§āĻĒā§āĻ¸ā§ āĻ°ā§āĻĒāĻžāĻ¨ā§āĻ¤āĻ° āĻāĻ°āĻ¤ā§ āĻĒāĻžāĻ°ā§āĨ¤
--rgbxyz āĻŽā§āĻ¯āĻžāĻā§āĻ°āĻŋāĻā§āĻ¸-āĻĢāĻžāĻāĻ˛, -r āĻŽā§āĻ¯āĻžāĻā§āĻ°āĻŋāĻā§āĻ¸-āĻĢāĻžāĻāĻ˛
āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ°āĻāĻžāĻ°ā§āĻ° āĻĻā§āĻāĻ¯āĻŧāĻž āĻŽā§āĻ¯āĻžāĻā§āĻ°āĻŋāĻā§āĻ¸ āĻšāĻ˛ āĻāĻāĻāĻŋ āĻ°ā§āĻĒāĻžāĻ¨ā§āĻ¤āĻ° āĻŽā§āĻ¯āĻžāĻā§āĻ°āĻŋāĻā§āĻ¸ āĻ¯āĻž RGB āĻĨā§āĻā§ XYZ āĻāĻžāĻ˛āĻžāĻ° āĻ¸ā§āĻĒā§āĻ¸ā§ āĻ°ā§āĻĒāĻžāĻ¨ā§āĻ¤āĻ° āĻāĻ°āĻ¤ā§ āĻĒāĻžāĻ°ā§āĨ¤
--āĻ¸ā§āĻĨāĻžāĻ¨āĻžāĻ¨ā§āĻ¤āĻ°, -t
āĻĒā§āĻ°āĻĻāĻ¤ā§āĻ¤ āĻŽā§āĻ¯āĻžāĻā§āĻ°āĻŋāĻā§āĻ¸ āĻĢāĻžāĻāĻ˛ā§āĻ° āĻ¸ā§āĻĨāĻžāĻ¨āĻžāĻ¨ā§āĻ¤āĻ° āĻ¨āĻŋāĻ¨āĨ¤
āĻāĻĻāĻžāĻšāĻ°āĻŖ
pfsin memorial.hdr | pfscolortransform -x matrix.txt | pfsout memorial_gc.ppm
matrix.txt āĻĢāĻžāĻāĻ˛ā§ āĻŽā§āĻ¯āĻžāĻā§āĻ°āĻŋāĻā§āĻ¸ā§āĻ° āĻ¸āĻžāĻĨā§ āĻŽā§āĻŽā§āĻ°āĻŋāĻ¯āĻŧāĻžāĻ˛ āĻāĻŽā§āĻāĻā§ āĻāĻžāĻ˛āĻžāĻ° āĻā§āĻ¯āĻžāĻ˛āĻŋāĻŦā§āĻ°ā§āĻ āĻāĻ°ā§āĻ¨ āĻāĻŦāĻ āĻāĻ¤ā§ āĻ¸ā§āĻ āĻāĻ°ā§āĻ¨
memorial_gc.ppm
onworks.net āĻĒāĻ°āĻŋāĻˇā§āĻŦāĻž āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°ā§ āĻ āĻ¨āĻ˛āĻžāĻāĻ¨ā§ pfscolortransform āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°ā§āĻ¨