.TL
Pbmtopgm User Manual
.SH 1
pbmtopgm
.LP
.LP
Updated: 05 Feb 2003
Table Of Contents
.SH 2
NAME
.LP
pbmtopgm - convert PBM image to PGM by averaging areas
.SH 2
SYNOPSIS
.LP
\fBpbmtopgm \fR
\fIwidth\fR
\fIheight\fR
[\fIpbmfile\fR]
.SH 2
DESCRIPTION
.LP
.LP
This program is part of Netpbm.
.LP
\fBpbmtopgm\fR reads a PBM image as input. It outputs a PGM image
in which each pixel's gray level is the average of the surrounding
black and white input pixels. The surrounding area is a rectangle of
\fIwidth\fR by \fIheight\fR pixels.
.LP
In other words, this is a convolution. \fBpbmtopgm\fR is similar
to a special case of \fBpnmconvol\fR.
.LP
You may need a \fBpnmsmooth\fR step after \fBpbmtopgm\fR.
.LP
\fBpbmtopgm\fR has the effect of anti-aliasing bitmaps which
contain distinct line features.
.LP
\fBpbmtopgm\fR works best with odd sample width and heights.
.LP
You don't need \fBpbmtopgm\fR just to use a PGM program on a PBM
image. Any PGM program (assuming it uses the Netpbm libraries to read
the PGM input) takes PBM input as if it were PGM, with only the
mininum and maximum gray levels. So unless your convolution rectangle
is bigger than one pixel, you're not gaining anything with a
\fBpbmtopgm\fR step.
.LP
The opposite transformation (which would turn a PGM into a PBM) is
dithering. See \fBpamditherbw\fR.
.SH 2
SEE ALSO
.LP
\fBpamditherbw\fR,
\fBpnmconvol\fR,
\fBpbm\fR,
\fBpgm\fR
.SH 2
AUTHOR
.LP
.LP
Copyright (C) 1990 by Angus Duggan.
.LP
Copyright (C) 1989 by Jef Poskanzer.
.LP
Permission to use, copy, modify, and distribute this software and
its documentation for any purpose and without fee is hereby granted,
provided that the above copyright notice appear in all copies and that
both that copyright notice and this permission notice appear in
supporting documentation. This software is provided "as is"
without express or implied warranty.
.br
\l'5i'
.SH 2
Table Of Contents
.LP
.IP \(bu
NAME
.IP \(bu
SYNOPSIS
.IP \(bu
DESCRIPTION
.IP \(bu
SEE ALSO
.IP \(bu
AUTHOR
.LP
|