NAME¶
pfsglview - Viewer for high-dynamic range images in pfs format
SYNOPSIS¶
pfsglview [--h] [--v]
DESCRIPTION¶
pfsview is a OpenGL/GLUT 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.
DYNAMIC RANGE WINDOW¶
To show high-dynamic range data on a low-dynamic range monitor, pfsglview 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 pfsglview 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.
ZOOMING AND PANNING¶
To zoom image, the mouse can be dragged in vertical direction with the left
button pressed. Pressing [space] button or pressing left mouse button above
the statistic window (left-bottom corner) changes from zooming to panning
modes and vice versa. To pan image, the mouse can be dragged in vertical and
horizontal directions with the left button pressed.
- Zoom reset
- Set default zoom parameters.
- Zoom in
- Increase image (mouse dragging with left button pressed).
- Zoom out
- Decrease image (mouse dragging with left button pressed).
- Increase exposure
- Move dynamic range window into higher luminance values.
- Decrease exposure
- Move dynamic range window into lover luminance values.
- Extend dynamic range
- Extend dynamic range window.
- Shrink dynamic range
- Shrink dynamic range window
- Low dynamic range
- Set dynamic range window to <-1,1> range (log scale).
- Fit to dynamic range
- Set dynamic range windo to minimum and maximum luminance of a given
image.
- Choose channel
- Change image data channel.
- Mapping method
- Change mapping method (see below for details).
- Next frame
- Display next image from the pipe.
- Previous frame
- Display previous image from the pipe.
- Histogram
- Switch on/off histogram window.
- Info
- Switch on/off info window.
- Save&Quit
- Send the visible LDR image (8-bits) to stdout and quit pfsglview.
MAPPING METHODS¶
High-dynamic range data are usually better visualized using non-linear scale,
for example a logarithmic or a power function. pfsglview offers several such
scales, shown in
popup 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.
EXAMPLES¶
- pfsin memorial.hdr | pfsglview
- See the memorial image.
- pfsin memorial.hdr | pfsglview | pfsout memorial.jpg
- See the memorial image and save the clipped (8-bits) version to
memorial.jpg ( Save&Quit option from popup menu should be
activated).
SEE ALSO¶
pfsin(1)
Please report bugs and comments to Radoslaw Mantiuk
<radoslaw.mantiuk@gmail.com>.