pfscolortransform(1)

πŸ’… pfscolortransform β€” the pfstools girlies' guide to color calibration

okay bestie, welcome to pfscolortransform(1) from the General Commands Manual β€” yes she's a real one, part of the pfstools family, and she is here to make your colors look correct. πŸŽ€


✨ NAME ✨

pfscolortransform β€” apply color calibration using a user provided matrix file. that's it, that's the whole gig. πŸ’–


πŸ¦‹ SYNOPSIS πŸ¦‹

pfscolortransform (--xyzrgb matrix-file | --rgbxyz matrix-file)
[--transpose]

so like, you gotta pick one of the two matrix flags (they're literally in parentheses with a |, so it's giving "choose your fighter" energy), and --transpose is optional, no pressure. ✨


🌸 DESCRIPTION 🌸

Use this command to calibrate colours using a calibration matrix supplied in a text file. main character behavior fr fr. 🫢

okay important detail, do not skip this: the command is intended for linearized (not gamma corrected) color spaces. so if you roll up with gamma-corrected values, that's not it, bestie. πŸ’€

The matrix should be 3x3 and it should transform from CIE XYZ to ITU rec. 709 RGB (sRGB primaries but linear, no gamma) or from the same RGB to CIE XYZ β€” see the options below for which one you're doing. iykyk. πŸ’…

The text file should contain three rows with numbers separated by a comma, for example:

0.0292,0.0126,0.0009
0.0052,0.0340,-0.0049
0.0055,-0.0059,0.0409

and like, if the --xyzrgb is supplied, the pixel values are color-transformed as follows:

[RGB]' = M * [XYZ]

where ' is matrix transposition, * is matrix multiplication, RGB is a vector of RGB values and XYZ is the vector of CIE XYZ trichromatic values. math ate, ngl. ✨

and if the --rgbxyz is supplied, the pixel values are color-transformed as follows:

[XYZ]' = M * [RGB]

notice how the vectors swapped?? yeah. that's the vibe check right there. πŸ‘‘


πŸ‘‘ OPTIONS πŸ‘‘

  • --xyzrgb matrix-file, -x matrix-file β€” User provided matrix is a conversion matrix to convert from XYZ to RGB color space. πŸ¦‹
  • --rgbxyz matrix-file, -r matrix-file β€” User provided matrix is a conversion matrix to convert from RGB to XYZ color space. 🌈
  • --transpose, -t β€” Take transpose of provided matrix file. iconic little flip, we love her. πŸ’…

πŸ’– EXAMPLES πŸ’–

pfsin memorial.hdr | pfscolortransform -x matrix.txt | pfsout
memorial_gc.ppm

Color calibrate memorial image with matrix in matrix.txt file and save to memorial_gc.ppm.

a whole pipeline, literally. pfsin in, pfscolortransform doing the glow-up in the middle, pfsout out. periodt. ✨


πŸ”₯ SEE ALSO πŸ”₯

pfsin(1) pfsout(1) pfsdisplayfunction(1)

go read those too, they're the friend group. 🫢


πŸ™ˆ BUGS πŸ™ˆ

Please report bugs and comments to the pfstools discussion group (http://groups.google.com/group/pfstools).

found a bug? don't be shy bestie, tell the group chat. they wanna hear it. πŸ’Œ

and that's the whole page, mwah πŸ’‹ β€” this was pfscolortransform(1) from the pfstools manual, General Commands Manual energy, so go forth and calibrate, you absolute icon. no cap, you got this. β­πŸ’œ