This is the command pfsview that can be run in the OnWorks free hosting provider using one of our multiple free online workstations such as Ubuntu Online, Fedora Online, Windows online emulator or MAC OS online emulator
PROGRAM:
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.
REPRODUCING MAPPING WITH PFSGAMMA
To reproduce the displayed image and save it to LDR image using pfs commands, you can use
the following commands:
pfsin image.hdr | pfsgamma -g 2.2 -m 0.01 | pfsout image.png
where "2.2" is the gamma value from the "Mapping" combo box, and 0.01 is the exposure
value. The exposure is shown as the right-most number in the window status bar of pfsview.
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'.
Use pfsview online using onworks.net services