258 lines
5.6 KiB
HTML
258 lines
5.6 KiB
HTML
|
|
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
|
|
<HTML><HEAD><TITLE>Man page of rawtopgm</TITLE>
|
|
</HEAD><BODY>
|
|
<H1>rawtopgm</H1>
|
|
Section: User Commands (1)<BR>Updated: 14 September 2000<BR><A HREF="#index">Index</A>
|
|
<A HREF="/cgi-bin/man/man2html">Return to Main Contents</A><HR>
|
|
|
|
<A NAME="ixAAB"></A>
|
|
<A NAME="lbAB"> </A>
|
|
<H2>NAME</H2>
|
|
|
|
rawtopgm - convert raw grayscale bytes into a portable graymap
|
|
<A NAME="lbAC"> </A>
|
|
<H2>SYNOPSIS</H2>
|
|
|
|
<B>rawtopgm</B>
|
|
|
|
[<B>-bpp </B>[<B>1</B>|<B>2</B>]]
|
|
|
|
[<B>-littleendian</B>]
|
|
|
|
[<B>-maxval</B>
|
|
|
|
<I>N</I>]
|
|
|
|
[<B>-headerskip</B>
|
|
|
|
<I>N</I>]
|
|
|
|
[<B>-rowskip</B>
|
|
|
|
<I>N</I>]
|
|
|
|
[<B>-tb</B>|<B>-topbottom</B>]
|
|
|
|
[<I>width</I>
|
|
|
|
<I>height</I>]
|
|
|
|
[<I>imagefile</I>]
|
|
|
|
<P>
|
|
<A NAME="lbAD"> </A>
|
|
<H2>DESCRIPTION</H2>
|
|
|
|
Reads raw grayscale values as input.
|
|
<A NAME="ixAAC"></A>
|
|
Produces a PGM file as output. The input file is just a sequence of
|
|
pure binary numbers, either one or two bytes each, either bigendian or
|
|
littleendian, representing gray values. They may be arranged either
|
|
top to bottom, left to right or bottom to top, left to right. There
|
|
may be arbitrary header information at the start of the file (to which
|
|
<B>rawtopgm</B>
|
|
|
|
pays no attention at all other than the header's size).
|
|
<P>
|
|
Arguments to
|
|
<B>rawtopgm</B>
|
|
|
|
tell how to interpret the pixels (a function that is served by a header in
|
|
a regular graphics format).
|
|
<P>
|
|
The
|
|
<I>width</I>
|
|
|
|
and
|
|
<I>height</I>
|
|
|
|
parameters tell the dimensions of the image. If you omit these parameters,
|
|
<B>rawtopgm</B>
|
|
|
|
assumes it is a quadratic image and bases the dimensions on the size of the
|
|
input stream. If this size is not a perfect square,
|
|
<B>rawtopgm</B>
|
|
|
|
fails.
|
|
<P>
|
|
When you don't specify
|
|
<I>width</I>
|
|
|
|
and
|
|
<I>height</I>,
|
|
|
|
<B>rawtopgm</B>
|
|
|
|
reads the entire input stream into storage at once, which may take a
|
|
lot of storage. Otherwise,
|
|
<B>rawtopgm</B>
|
|
|
|
ordinarily stores only one row at a time.
|
|
<P>
|
|
If you don't specify
|
|
<I>imagefile</I>,
|
|
|
|
or specify
|
|
<B>-</B>,
|
|
|
|
the input is from Standard Input.
|
|
<P>
|
|
The PGM output is to Standard Output.
|
|
<P>
|
|
<P>
|
|
<P>
|
|
<A NAME="lbAE"> </A>
|
|
<H2>OPTIONS</H2>
|
|
|
|
<DL COMPACT>
|
|
<DT id="1"><B>-maxval </B><I>N</I>
|
|
|
|
<DD>
|
|
<I>N</I>
|
|
|
|
is the maxval for the gray values in the input, and is also the maxval
|
|
of the PGM output image. The default is the maximum value that can be
|
|
represented in the number of bytes used for each sample (i.e. 255 or
|
|
65535).
|
|
<DT id="2"><B>-bpp </B>[<B>1</B>|<B>2</B>]
|
|
|
|
<DD>
|
|
tells the number of bytes that represent each sample in the input.
|
|
If the value is
|
|
<B>2</B>,
|
|
|
|
The most significant byte is first in the stream.
|
|
<P>
|
|
The default is 1 byte per sample.
|
|
<P>
|
|
<DT id="3"><B>-littleendian</B>
|
|
|
|
<DD>
|
|
says that the bytes of each input sample are ordered with the least
|
|
significant byte first. Without this option,
|
|
<B>rawtopgm</B>
|
|
|
|
assumes MSB first. This obviously has no effect when there is only one byte
|
|
per sample.
|
|
<P>
|
|
<DT id="4"><B>-headerskip </B><I>N</I>
|
|
|
|
<DD>
|
|
<B>rawtopgm</B>
|
|
|
|
skips over
|
|
<I>N</I>
|
|
|
|
bytes at the beginning of the stream and reads the image immediately after.
|
|
The default is 0.
|
|
<P>
|
|
This is useful when the input is actually some graphics format that has
|
|
a descriptive header followed by an ordinary raster, and you don't have
|
|
a program that understands the header or you want to ignore the header.
|
|
<P>
|
|
<DT id="5"><B>-rowskip </B><I>N</I>
|
|
|
|
<DD>
|
|
If there is padding at the ends of the rows, you can skip it with this
|
|
option. Note that rowskip need not be an integer. Amazingly, I once
|
|
had an image with 0.376 bytes of padding per row. This turned out to
|
|
be due to a file-transfer problem, but I was still able to read the
|
|
image.
|
|
<P>
|
|
Skipping a fractional byte per row means skipping one byte per multiple
|
|
rows.
|
|
<DT id="6"><B>-bt -bottomfirst</B>
|
|
|
|
<DD>
|
|
By default,
|
|
<B>rawtopgm</B>
|
|
|
|
assumes the pixels in the input go top to bottom, left to right.
|
|
If you specify
|
|
<B>-bt</B>
|
|
|
|
or
|
|
<B>-bottomfirst</B>,
|
|
|
|
<B>rawtopgm</B>
|
|
|
|
assumes the pixels go bottom to top, left to right. The Molecular Dynamics
|
|
and Leica confocal format, for example, use the latter arrangement.
|
|
<P>
|
|
If you don't specify
|
|
<B>-bt</B>
|
|
|
|
when you should or vice versa, the resulting image is upside down, which
|
|
you can correct with
|
|
<B>pnmflip .</B>
|
|
|
|
<P>
|
|
This option causes
|
|
<B>rawtopgm</B>
|
|
|
|
to read the entire input stream into storage at once, which may take a
|
|
lot of storage. Ordinarly,
|
|
<B>rawtopgm</B>
|
|
|
|
stores only one row at a time.
|
|
<P>
|
|
For backwards compatibility,
|
|
<B>rawtopgm</B>
|
|
|
|
also accepts
|
|
<B>-tb </B>
|
|
|
|
and
|
|
<B>-topbottom</B>
|
|
|
|
to mean exactly the same thing. The reasons these are named backwards is that
|
|
the original author thought of it as specifying that the wrong results of
|
|
assuming the data is top to bottom should be corrected by flipping the result
|
|
top for bottom. Today, we think of it as simply specifying the format of the
|
|
input data so that there are no wrong results.
|
|
<P>
|
|
</DL>
|
|
<A NAME="lbAF"> </A>
|
|
<H2>SEE ALSO</H2>
|
|
|
|
<B><A HREF="/cgi-bin/man/man2html?5+pgm">pgm</A></B>(5),
|
|
|
|
<B><A HREF="/cgi-bin/man/man2html?1+rawtoppm">rawtoppm</A></B>(1),
|
|
|
|
<B><A HREF="/cgi-bin/man/man2html?1+pnmflip">pnmflip</A></B>(1)
|
|
|
|
<P>
|
|
<A NAME="lbAG"> </A>
|
|
<H2>AUTHORS</H2>
|
|
|
|
Copyright (C) 1989 by Jef Poskanzer.
|
|
<BR>
|
|
|
|
Modified June 1993 by Oliver Trepte, <A HREF="mailto:oliver@fysik4.kth.se">oliver@fysik4.kth.se</A>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<P>
|
|
|
|
<HR>
|
|
<A NAME="index"> </A><H2>Index</H2>
|
|
<DL>
|
|
<DT id="7"><A HREF="#lbAB">NAME</A><DD>
|
|
<DT id="8"><A HREF="#lbAC">SYNOPSIS</A><DD>
|
|
<DT id="9"><A HREF="#lbAD">DESCRIPTION</A><DD>
|
|
<DT id="10"><A HREF="#lbAE">OPTIONS</A><DD>
|
|
<DT id="11"><A HREF="#lbAF">SEE ALSO</A><DD>
|
|
<DT id="12"><A HREF="#lbAG">AUTHORS</A><DD>
|
|
</DL>
|
|
<HR>
|
|
This document was created by
|
|
<A HREF="/cgi-bin/man/man2html">man2html</A>,
|
|
using the manual pages.<BR>
|
|
Time: 00:05:26 GMT, March 31, 2021
|
|
</BODY>
|
|
</HTML>
|