NAME
pfsview - Viewer for high-dynamic range images in pfs format
SYNOPSIS
pfsview [--window_min <log_lum>] [--window_max <log_lum>]
DESCRIPTION
pfsview is a QT application for viewing high-dynamic range images. It
expects pfs stream on the standard input and displays the frames in
that stream one by one.
pfsv script can be more convienent to use if hdr images are to be
displayed without any prior processing.
DYNAMIC RANGE WINDOW
To show high-dynamic range data on a low-dynamic range monitor, pfsview
uses concept of a dynamic range window. The dynamic range window is the
highest and lowest value that should be mapped to black and white
pixel. Values above or below the window are clipped (see clipping
methods below). The dynamic range window is displayed in pfsview as a
blue area on the dynamic range scale (second toolbox from the top). The
window can be moved, shrunk and expended using a mouse or a keyboard.
CLIPPING METHODS
Currently, two clipping methods are available (see View menu):
Simple clipping
The values above and below the dynamic range window are
displayed as black or white.
Color-coded clipping
The values above the dynamic range window are displayed as
yellow and below the window as green. This is helpful to see
which parts of the image do not fit into the selected dynamic
range.
Keep brightness and hue
This method tries to preserve brightness and hue while
sacrificing color saturation when the colors exceed the RGB
color gamut. Colors are desaturated in the RGB color space
towards the neutral color (D65) of the corresponding luminance.
MAPPING METHODS
High-dynamic range data are usually better visualized using non-linear
scale, for example a logarithmic or a power function. pfsview offers
several such scales, shown in View menu. Gray-scale values for each
mapping method are computed by the formulas:
LINEAR: y = (x-min)/(max-min)
GAMMA: y = [ (x-min)/(max-min) ]^gamma
LOGARITHMIC: y = (log10(x)-log10(min))/(log10(max)-log10(min))
where y is the gray-scale value after mapping, x is an input HDR value,
min and max are lower and upper bounds of the dynamic range window.
OPTIONS
--window_min <log_lum>
Lower bound of the values that should be displayed or minimum
value of the dynamic range window. The value should be given in
log_10 units, for example -1 if the lower bound should be 0.1
(10^-1).
--window_max <log_lum>
Upper bound of the values that should be displayed or minimum
value of the dynamic range window. The value should be given in
log_10 units, for example -1 if the upper bound should be 0.1
(10^-1).
EXAMPLES
pfsin memorial.hdr | pfsview
See the memorial image.
pfsv memorial.hdr
The same as above, but using the utility script ’pv’.
SEE ALSO
pfsv(1) pfsin(1)
BUGS
Zomming in may sometimes show artifacts.
Please report bugs and comments to Rafal Mantiuk <mantiuk@mpi-
sb.mpg.de>.
pfsview(1)