NAME
pfsinppm - Load images or frames in PBM formats
SYNOPSIS
pfsinppm (<file> [--linear] [--absolute <max_lum>] [--frames <range>]
[--skip-missing]) [<file>...]
DESCRIPTION
pfsinppm command loads images in PBM formats (PPM, PNM or PGM) and
writes pfs stream to the standard output. The pfs stream is usually
piped to another program for further processing. To detect the format
automatically based on the extension, use pfsin command. For more
information on PBM formats, refer to the NetPBM web page
(http://netpbm.sourceforge.net/).
Note that PPM or PNM images are low dynamic range. Therefore pixel
values (0-255) are scaled to 0-1 before storing them in pfs stream.
Similarly, before writing low dynamic range image from pfs stream,
pixel values are multiplied by 255. By default, the ’LUMINANCE’ tag is
set to ’DISPLAY’. The ’--linear’ switch can force the inverse sRGB
transformation and provide linear data. In this case the ’LUMINANCE’
tag is set to ’RELATIVE’. ’--absolute’ switch can be used to convert
pixels to absolute luminance values.
To read images from standard input use a single dash ’-’ instead of
filename. The images are read until EOF is reached.
Each file can contain a %d pattern, which is substituted with frame
numbers. The pattern has the same syntax as C printf command. For
example, you can use %04d to make the frame number four digit with
proceedings zeros. See the OPTIONS section below for details.
OPTIONS
--frames <range>
Range is given in mathlab / octave format:
startframe:step:endframe
Frame numbers start with startframe (default 0), are increased
by step (default 1) and stop at endframe You can skip one of
those values, for example 1:100 for frames 1,2,...,100 and 0:2:
for frame 0,2,4,... up to the last file that exists.
--skip-missing
Skip up to ten frames in a row if corresponding files are
missing. Otherwise the program stops reading sequence at the
first file that does not exists. This switch does not apply to
the first frame in a sequence. This switch can be useful if
there is a rendered animation where some of the frame has not
been generated.
--linear, -l
Converts pixel values to linear luminance (XYZ), assuming the
sRGB color space for the input image. The maximum pixel value
(255,255,255) is mapped to Y=1. LUMINANCE tag is set to
RELATIVE.
--absolute <max_lum>, -a <max_lum>
--absolute converts pixel values to an absolute linear luminance
(XYZ), that is the color space, in which channel Y contains
luminance given in cd/m^2. The sRGB color space is assumed for
the input image. The maximum pixel value (255,255,255) is mapped
to Y=<max_lum>. <max_lum> is typically set to 80 [cd/m^2] for a
CRT monitor. LUMINANCE tag is set to ABSOLUTE. --absolute
process images almost the same as --relative, but additionally
it scales all pixels by <max_lum>.
EXAMPLES
pfsinppm frame%04d.ppm --frames 0:10 | pfsview
Read frames from files frame0000.ppm, frame0001.ppm, ...,
frame0010.ppm and show them using pfsview.
BUGS
Please report bugs and comments on implementation to the discussion
group http://groups.google.com/group/pfstools
SEE ALSO
pfsin(1), pfsout(1)
pfsinppm(1)