Scroll to navigation

pfstmo_mantiuk06(1) General Commands Manual pfstmo_mantiuk06(1)


pfstmo_mantiuk06 - Tone mapping in the contrast domain


pfstmo_mantiuk06 [--factor <val>] [--equalize-contrast <val>] [--saturation <val>] [--verbose] [--quiet] [--help]


This command implements two tone mapping operators: contrast mapping and contrast equalization. Both operators can produce very sharp images (sometimes non-photorealistic) while minimizing contrast reversal (halo artifacts). More information on these operators can be found in:

Rafal Mantiuk, Karol Myszkowski, Hans-Peter Seidel.
A Perceptual Framework for Contrast Processing of High Dynamic Range Images
In: ACM Transactions on Applied Perception 3 (3), pp. 286-308, 2006.

This version contains several performance improvements made by Ed Brambley.

If you find this TMO useful in your research project, please cite the paper above.

The result of this TMO requires gamma correction.


Use the contrast equalization algorithm. If this option is not specified, the contrast mapping algorithm will be used. The contrast equalization algorithm requires scaling parameter that controls the amount sharpenning, which can range from 0.1 (very sharp) to 1 (less sharp).
contrast equalization results in very sharp, but also less natural images. contrast equalization may also enhance noise in low-quality images.
Contrast scaling factor (values 0-1) determines how much contrast magnitudes should be reduced. This option cannot be used with equalize-contrast. The lower value results in a sharper image. Default value: 0.3
Saturation correction (values 0-2). The lower value results in stronger desaturation. Default value: 0.8
Print additional information during program execution.
Do not display progress report.
Print list of commandline options.


Tone map an image using contrast mapping and save it in the PNG format.
The same as above, but use the contrast equalization algorithm.
For optimal results you can output the result to pfsview and manually adjust the dynamic range window. Then save the image in pfsview by selecting 'Save image...' from the 'Frame' menu or pressing 's'.
Enhance the low-dynamic range image 'bridge' and view the result. pfsclamp command reduces noise for low code values.


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


Please report bugs and comments to the pfstools discussion group (