pfsabsolute(1)
β¨ pfsabsolute β¨
okay bestie, gather round, because this lil cutie from the General Commands Manual is literally the glow-up your images have been waiting for π
πΈ NAME πΈ
pfsabsolute β convert luminance in images to absolute measure. that's it, that's the whole job, and she does it flawlessly π
π SYNOPSIS π
pfsabsolute <dest Y> [<src Y>] [--verbose] [--help]
π¦ DESCRIPTION π¦
so here's the tea β β pfsabsolute applies all necessary operations to convert an image from relative luminance (tag LUMINANCE is RELATIVE) or display-dependent luma (tag LUMINANCE is DISPLAY) into absolute luminance values. and when the luminance in an image is already absolute (tag LUMINANCE set to ABSOLUTE), the Y channel represents physical luminance in cd/m^2. absolute luminance levels are genuinely so useful for some tone mapping algorithms, and also for image or video compression. like, iconic behavior tbh π
the argument <dest Y> denotes the level of luminance that relative luminance <src Y> should be rescaled to. the luminance is in fact multiplied by the ratio <dst Y>/<src Y>. and <src Y> is normally relative luminance checked with pfsview in the spot where the absolute luminance <dest Y> is measured, known or guessed. if <src Y> is omitted, the value 1 is assumed, so <dest Y> is just a scaling factor. easy peasy π
and in case of display-depended luma (tag LUMINANCE is DISPLAY), the inverse gamma correction is applied (assuming sRGB color space). in that case <dest Y> is usually the maximum luminance of a display (e.g. 80 cd/m^2). yes bestie, write that down π
π heads up: this command always sets theLUMINANCEtag toABSOLUTE. no exceptions, no take-backs, periodt.
π EXAMPLES π
okay now the fun part, let's see her in action β¨
pfsin memorial.hdr | pfsabsolute 20 0.04 | pfsview
- multiply luminance in memorial image, so that relative luminance
0.04becomes20 cd/m^2. normally, the value0.04is check usingpfsviewin the spot, where the absolute luminance (which equals in this case20 cd/m^2) is known. π
pfsin lena.png | pfsabsolute 80 | pfsview
- convert lena image from sRGB color space to absolute XYZ, assuming maximum luminance of the monitor
80 cd/m^2. she ate that fr fr π«Ά
π SEE ALSO π
go read those too, iykyk π§
π BUGS π
please report bugs and comments to Rafal Mantiuk <mantiuk@mpi-sb.mpg.de>. be nice, be specific, and slay π
and that's the whole page bestie!! this one lives in the General Commands Manual as pfsabsolute(1) β no cap, go convert some luminance πβ¨π
π¦ where this page comes from
- debian bookworm: pfstools 2.2.0-5+b1 Β· GPL-2.0-or-later
- debian trixie: pfstools 2.2.0-9 Β· GPL-2.0-or-later
- fedora 43: pfstools 2.2.0-23.fc43 Β· GPL-2.0-or-later
- fedora 44: pfstools 2.2.0-25.fc44 Β· GPL-2.0-or-later
- opensuse-leap 16.0: pfstools 2.2.0-bp160.1.20 Β· GPL-2.0-or-later AND LGPL-2.1-or-later
- opensuse-leap 16.0: pfstools 2.2.0-bp160.1.20 Β· GPL-2.0-or-later AND LGPL-2.1-or-later
- opensuse-leap 16.0: pfstools 2.2.0-bp160.1.20 Β· GPL-2.0-or-later AND LGPL-2.1-or-later
- opensuse-leap 16.0: pfstools 2.2.0-bp160.1.20 Β· GPL-2.0-or-later AND LGPL-2.1-or-later
- ubuntu jammy: pfstools 2.2.0-2 Β· GPL-2.0-or-later
- ubuntu noble: pfstools 2.2.0-7build3 Β· GPL-2.0-or-later
- ubuntu questing: pfstools 2.2.0-9
- ubuntu resolute: pfstools 2.2.0-10 Β· GPL-2.0-or-later
- ubuntu stonking: pfstools 2.2.0-12 Β· GPL-2.0-or-later
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash on : a language model's rewrite of the original, under its terms