pfstmo_durand02(1)

πŸ’– pfstmo_durand02 πŸ’–

okay so bestie, welcome to pfstmo_durand02 from the General Commands Manual β€” it's the tone mapping operator that makes your HDR pics not look like a cursed screenshot, and honestly? she ate. πŸ¦‹


✨ NAME ✨

pfstmo_durand02 β€” Fast bilateral filtering for the display of HDR images πŸ’…


🌸 SYNOPSIS 🌸

pfstmo_durand02 [--sigma-s <val>] [--sigma-r <val>] [--base-contrast
<val>] [--quiet] [--verbose] [--help]

like yes, that's the whole vibe. run it, pipe stuff into it, live your truth. ✨


πŸŽ€ DESCRIPTION πŸŽ€

This command implements a tone mapping operator as described in:

F. Durand and J. Dorsey. Fast Bilateral Filtering for the Display of High-Dynamic-Range Images. In: In ACM Transactions on Graphics, 2002.

According to the paper, results of this TMO require gamma correction. so like, don't skip that step bestie, it's not optional, it's the whole point 😭

Unless -g option is specified, this operator also employs color correction mechanism from:

Radoslaw Mantiuk, Rafal Mantiuk, Anna Tomaszewska, Wolfgang Heidrich. Color Correction for Tone Mapping. In: Computer Graphics Forum (Proc. of EUROGRAPHICS'09), 28(2), 2009. http://zgk.wi.ps.pl/color_correction/

so by default you get the glow-up plus the color correction, and only if you pass -g does it go full original-recipe. iconic behavior tbh. πŸ‘‘


πŸ’… OPTIONS πŸ’…

  • --sigma-s <val>, -s <val> β€” Sigma value for spatial kernel. Default value: 40. this is the "how far apart do we care about pixels" knob, fr fr.
  • --sigma-r <val>, -r<val> β€” Sigma value for range kernel. Default value: 0.4. (yes, the short one is written as -r<val> with no space, no cap, that's just how she is 🫢)
  • --base-contrast <val>, -c <val> β€” Contrast of the base layer. Default value is 5.0f. Lower value causes higher contrast compression and results in darker picture β€” can help if after tone mapping too many pixels remain saturated. Increasing this value will results in brighter and more 'dynamic' picture. so like, dial it down when everything's blown out, dial it up when you want DRAMA. πŸ’€
  • --original, -g β€” Use original algorithm as described in the paper with no extensions. For this operator the switch will disable color correction. periodt β€” no extra sauce, just the paper.
  • --verbose β€” Print additional information during program execution. she's chatty. we love her for it. πŸ—£οΈ
  • --quiet, -q β€” Do not display progress report. for when the progress bar is giving main character energy and you need her to chill πŸ™ˆ
  • --help, -h β€” Print list of commandline options. the classic "help me bestie" move. ✨

🌈 EXAMPLES 🌈

pfsin memorial.hdr | pfstmo_durand02 | pfsgamma -g 2.2 | pfsout memorial.png

Tone map image and save it in png format.

look at that pipeline. in β†’ tone map β†’ gamma β†’ out. chef's kiss, no notes. πŸ˜ŒπŸ“


πŸ‘‘ SEE ALSO πŸ‘‘

pfsgamma(1) pfsin(1) pfsout(1) pfsview(1)

go read those too, they're the friend group. πŸ’œ


πŸ’€ BUGS πŸ’€

Please report bugs and comments on implementation to Grzegorz Krawczyk <krawczyk@mpi-sb.mpg.de>.

like actually report them, don't just suffer in silence bestie 😭


k bye, that's the whole page β€” pfstmo_durand02(1), straight out of the General Commands Manual, no date on this one so don't come for me 🌸 stay shiny, go tone map something pretty βœ¨πŸ’–