# Netpbm Program Directory

We have the programs divided into these categories:

- Converters
- Editors
- Generators
- Analyzers
- Miscellaneous

## Converters

pnmtopnm
  convert PNM image to PNM raw or plain
pgmtopgm
  convert PGM or PBM image to PGM
ppmtoppm
  convert PPM, PGM, or PBM image to PPM
pamtopam
  convert PAM image to PAM
pbmtopgm
  convert PBM image to PGM by averaging areas
pgmtoppm
  colorize a PGM into a PPM
ppmtopgm
  convert PPM image to PGM
pamtopnm
  convert a PAM image to PBM, PGM, or PPM
pamtogif
  convert PAM or PNM to GIF
giftopnm
  convert GIF to PNM
pnmtojpeg
  convert PNM to JPEG/JFIF/EXIF format
jpegtopnm
  convert JFIF/JPEG/EXIF file to Netpbm format
pamtojpeg2k
  convert PNM/PAM to JPEG-2000 code stream
jpeg2ktopam
  convert JPEG-2000 code stream to PAM/PNM
pamtopng
  convert Netpbm format to Portable Network Graphics
pnmtopng
  convert Netpbm format to Portable Network Graphics
pngtopam
  convert PNG (Portable Network Graphics) to Netpbm formats
pnmtops
  convert Netpbm formats to Postscript
pstopnm
  convert Postscript to Netpbm formats
pamtotiff
  convert Netpbm formats to TIFF RGB file
tifftopnm
  convert TIFF file to PNM
pnmtotiffcmyk
  convert Netpbm formats to TIFF CMYK file
ppmtobmp
  convert PPM to Windows or OS/2 Bitmap file
bmptopnm
  convert Windows or OS/2 Bitmap file to PPM or PGM
pbmtog3
  convert PBM to Group 3 FAX
g3topbm
  convert Group 3 FAX to PBM
pnmtojbig
  convert PNM to JBIG BIE (compressed bitmap)
jbigtopnm
  convert JBIG BIE (compressed bitmap) to PNM
pnmtoxwd
  convert Netpbm formats to X11 window dump
xwdtopnm
  convert X10 or X11 window dump to Netpbm formats
pbmtoxbm
  convert PBM to X10 or X11 bitmap
xbmtopbm
  convert X10 or X11 bitmap to PBM
ppmtoxpm
  convert PPM to XPM format
xpmtoppm
  convert XPM format to PPM
pbmto10x
  convert PBM to Gemini 10x printer graphics
411toppm
  convert 411 (Sony Mavica) to PPM
pbmto4425
  Display PBM image on AT&T 4425 ASCII terminal with gfx chars
ppmtoacad
  convert PPM to AutoCAD database or slide
ppmtoapplevol
  convert PPM to Apple volume label image
pbmtoascii
  convert PBM to ASCII graphic form
ppmtoascii
  convert PPM to ASCII graphics with ANSI terminal color control
asciitopgm
  convert ASCII character graphics to PGM
pbmtoatk
  convert PBM to Andrew Toolkit raster object
atktopbm
  convert Andrew Toolkit raster object to PBM
pamtoavs
  convert Netpbm image to Stardent AVS
avstopam
  convert Stardent AVS image to PAM
pbmtobbnbg
  convert PBM to BBN BitGraph graphics
bioradtopgm
  convert Biorad confocal image to PGM
brushtopbm
  convert Xerox doodle brushes to PBM
cameratopam
  convert raw camera image to PAM
pbmtocis
  convert PBM to Compuserve RLE image
cistopbm
  convert Compuserve RLE image to PBM
pbmtocmuwm
  convert PBM to CMU window manager format
cmuwmtopbm
  convert CMU window manager format to PBM
ddbugtopbm
  convert Palm DiddleBug image to PBM
pnmtoddif
  convert from Netpbm formats to DDIF
pamtodjvurle
  convert PNM/PAM to DjVu Color RLE format
pbmtodjvurle
  convert PBM to DjVu Bitonal RLE format
pbmtoepsi
  convert a PBM image to encapsulated Postscript preview bitmap
pbmtoepson
  convert PBM to Epson 9-pin printer graphics
pbmtoescp2
  convert PBM to Epson ESC/P2 printer graphics
escp2topbm
  convert Epson ESC/P2 printer graphics to PBM
ppmtoeyuv
  convert PPM to Encoder/Berkeley YUV format
eyuvtoppm
  convert Encoder/Berkeley YUV format to PPM
pnmtofiasco
  convert Netpbm image to Fiasco (wfa) highly compressed format
fiascotopnm
  convert Fiasco (wfa) highly compressed format to Netpbm image
pamtofits
  convert Netpbm formats to FITS format
fitstopnm
  convert FITS format to PNM
pgmtofs
  convert PGM to Usenix FaceSaver(tm) format
fstopgm
  convert Usenix FaceSaver(tm) format to PGM
pbmtogem
  convert PBM into GEM .img file
gemtopnm
  convert GEM .img format to Netpbm format
pbmtogo
  convert PBM to GraphOn graphics
gouldtoppm
  convert Gould scanner file to PPM
pamtohdiff
  convert PAM image to horizontal difference version of same
hdifftopam
  convert horizontal difference PAM back to original image
hipstopgm
  convert HIPS format to PGM
hpcdtoppm
  convert photo CD to PPM
pamtohtmltbl
  convert PNM/PAM to an HTML table with a colored cell for each pixel
pbmtoibm23xx
  convert from PBM to IBM 23XX printer stream
ppmtoicr
  convert PPM to NCSA ICR graphics
ppmtoilbm
  convert PPM to IFF ILBM
ilbmtoppm
  convert IFF ILBM to PPM
imgtoppm
  convert Img-whatnot to PPM
infotopam
  convert Amiga .info icons to PAM
ppmtoleaf
  convert PPM to Interleaf
leaftoppm
  convert Interleaf to PPM
pgmtolispm
  convert PGM into Lisp Machine format
lispmtopgm
  convert a Lisp Machine bitmap file into PGM format
pbmtolj
  convert PBM to HP LaserJet black and white graphics
ppmtolj
  convert PPM to HP LaserJet color graphics (PCL 5)
pbmtoln03
  convert PGM image to Dec LN03+ Sixel image
pbmtolps
  convert PBM image to Postscript using lines
pbmtomacp
  convert PBM to MacPaint
macptopbm
  convert MacPaint to PBM
pbmtomatrixorbital
  convert a PBM image to a Matrix Orbital LCD image
pbmtomda
  convert from PBM to Microdesign (for Amstrad PCWs)
mdatopbm
  convert from Microdesign (for Amstrad PCWs) to PBM
pbmtomgr
  convert PBM to MGR format
mgrtopbm
  convert MGR format to PBM
ppmtomitsu
  convert from PPM to Mitsubishi S340-10 printer stream
ppmtompeg
  convert series of PPM frames to an MPEG movie
pamtompfont
  convert Netpbm image to Mplayer bitmap font
pbmtomrf
  convert PBM image to MRF (compressed bitmap)
mrftopbm
  convert MRF (compressed bitmap) to PBM
mtvtoppm
  convert MTV ray-tracer output to PPM
ppmtoneo
  convert PPM image to Atari Neochrome (.neo)
neotoppm
  convert Atari Neochrome (.neo) image to PPM
pbmtonokia
  convert PBM to Nokia Smart Messaging Format (SMF)
pamtooctaveimg
  convert PNM/PAM to Gnu Octave image
pnmtopalm
  convert Netpbm formats to Palm pixmap
palmtopnm
  convert Palm pixmap to Netpbm formats
pc1toppm
  convert Atari Degas .pc1 (compressed pi1) to PPM
pcdovtoppm
  convert a photo CD PCD overview file to PPM
pnmtopclxl
  convert PNM to HP PCL-XL (PCL 6) printer language
ppmtopcx
  convert PPM to PC Paintbrush format
pcxtoppm
  convert PC Paintbrush format to PPM
pamtopdbimg
  convert Netpbm formats to Palm Pilot Image Viewer format
pdbimgtopam
  convert Palm Pilot Image Viewer format to Netpbm formats.
pamtopfm
  convert PAM/PNM to HDRshop PFM (Portable Float Map)
pfmtopam
  convert HDRshop PFM (Portable Float Map) to PAM
ppmtopi1
  convert PPM to Atari Degas .pi1
pi1toppm
  convert Atari Degas .pi1 to PPM
pbmtopi3
  convert PBM to Atari Degas .pi3
pi3topbm
  convert Atari Degas .pi3 to PBM
ppmtopict
  convert PPM to Macintosh PICT (aka Picture aka Quickdraw)
picttoppm
  convert Macintosh PICT (aka Picture aka Quickdraw) to PPM
ppmtopj
  convert PPM to HP PaintJet file
pjtoppm
  convert HP PaintJet file to PPM
ppmtopjxl
  convert from PPM to HP Paintjet XL PCL printer stream
pbmtopk
  convert PBM image to packed format (PK) font
pktopbm
  convert packed format (PK) font to PBM image
pbmtoplot
  convert PBM into Unix plot file
pbmtoppa
  convert PBM to HP PPA (Printer Performance Architecture) printer stream
pbmtopsg3
  convert PBM images to Postscript using G3 fax compression.
psidtopgm
  convert PostScript "image" data to PGM
pbmtoptx
  convert PBM to Printronix graphics
ppmtopuzz
  convert PPM to X11 "puzzle" file
qrttoppm
  convert QRT ray-tracer output to PPM
pnmtorast
  convert Netpbm formats to Sun raster file
rasttopnm
  convert Sun raster file to Netpbm formats
rlatopam
  convert Alias/Wavefront RLA and RPF to PAM
pnmtorle
  convert PNM to Utah Raster Toolkit (urt/rle) file
rletopnm
  convert Utah Raster Toolkit (urt/rle) file to PNM
sbigtopgm
  convert Santa Barbara Instrument Group CCD file to PGM
pgmtosbig
  convert PGM to Santa Barbara Instrument Group CCD file
st4topgm
  convert Santa Barbara Instrument Group ST-4 camera CCD file to PGM
pgmtost4
  convert PGM to Santa Barbara Instrument Group ST-4 camera CCD file
pnmtosgi
  convert from Netpbm formats to SGI format
sgitopnm
  convert from SGI format to Netpbm formats
pnmtosir
  convert from Netpbm formats to Solitaire Image Recorder file (MGI Type 11 or 17)
sirtopnm
  convert from Solitaire Image Recorder file to Netpbm formats.
ppmtosixel
  convert PPM to DEC sixel format
sldtoppm
  convert an AutoCAD slide file into a PPM
spctoppm
  convert Atari compressed Spectrum to PPM
spottopgm
  convert SPOT satellite image to PGM
ppmtospu
  convert PPM to Atari uncompressed Spectrum
sputoppm
  convert Atari uncompressed Spectrum to PPM
pamtosrf
  convert Netpbm formats to SRF
srftopam
  convert SRF to PAM
pbmtosunicon
  convert PBM to Sun icon
sunicontopnm
  convert Sun icon to Netpbm
pamtosvg
  convert Netpbm image to Scalable Vector Graphics (SVG); trace image
svgtopam
  convert an SVG (Scalable Vector Graphics) image to Netpbm format
ppmtoterm
  display PPM image on ANSI standard text terminal
pamtotga
  convert PAM to TrueVision Targa file
tgatoppm
  convert TrueVision Targa file to PPM
thinkjettopbm
  convert HP Thinkjet printer stream to PBM
pamtouil
  convert PAM to Motif UIL icon file
vidtoppm
  convert Parallax XVideo JPEG to sequence of PPM files
pbmtowbmp
  convert PBM to WAP (Wireless App Protocol) Wireless Bitmap
wbmptopbm
  convert WAP (Wireless App Protocol) Wireless Bitmap to PBM
pamtowinicon
  convert PAM to Windows icon file
ppmtowinicon
  convert PPM to Windows icon file (obsoleted by pamtowinicon).
winicontopam
  convert Windows icon file to PAM
winicontoppm
  convert Windows icon file to PPM (obsoleted by winicontoapm).
ximtoppm
  convert Xim to PPM
pamtoxvmini
  convert from Netpbm formats to Xv "thumbnail" picture
xvminitoppm
  convert Xv "thumbnail" picture to PPM
pbmtoybm
  convert PBM into Bennet Yee "face" file
ybmtopbm
  convert Bennet Yee "face" file into PBM
ppmtoyuv
  convert PPM to Abekas YUV format
yuvtoppm
  convert Abekas YUV format to PPM
ppmtoyuvsplit
  convert PPM to 3 subsampled raw Stanford MPEG YUV files
yuvsplittoppm
  merge 3 subsampled raw YUV files to one PPM
yuy2topam
  convert YUY2 format to PAM
zeisstopnm
  convert a Zeiss confocal file to Netpbm format
pbmtozinc
  convert PBM to Zinc Interface Library icon
pamtoqoi
  convert from Netpbm formats to Quite OK Image format
qoitopam
  convert from Quite OK Image format to PAM
rawtopgm
  convert raw grayscale bytes to PGM
rawtoppm
  convert raw RGB bytes to PPM
ppmtoarbtxt
  convert PPM to just about any text-based format, using a grammar file
anytopnm
  convert any graphics format to Netpbm format

## Image Generators

All of these generate Netpbm format output.

pbmmake
  create a blank PBM image of a specified size
pgmmake
  create a PGM image of a specified size and shade of gray
ppmmake
  create a PPM image of a specified size and color
pgmramp
  generate a grayscale ramp (gradient)
pamgradient
  create a four-corner gradient image
pampaintspill
  smoothly spill colors into the background
ppmpat
  create a pretty PPM image
ppmrainbow
  create a spectrum-like image with colors fading together.
ppmrough
  create PPM image of two colors with a ragged border between them
pamcrater
  create cratered terrain by fractal forgery
ppmforge
  fractal forgeries of clouds, planets, and starry skies
pbmnoise
  create a PBM image of white noise
pgmnoise
  create a PGM image of white noise
pbmtext
  render text into a PBM image
pbmtextps
  render text into a PBM image using a Postscript interpreter
pbmupc
  create a Universal Product Code PBM image
pamstereogram
  create a single image stereogram from a height map
pamsistoaglyph
  convert a single-image stereogram to a red/cyan anaglyphic image
ppmwheel
  generate a hue-value color wheel
ppmcie
  generate a CIE color map PPM image
pbmpage
  create a printer test pattern page in PBM format
pamseq
  create a PAM image of all possible tuple values. E.g. a color map containing all possible colors of given maxval
pamgauss
  create a PAM image of a Gaussian (bell curve; normal curve) function.
ppm3d
  generate a blue/green 3D glasses image from two images

## Image Editors

All of these work on the Netpbm formats

pamdepth
  change the maxval in an image
pamscale
  scale/resample an image with high precision
pnmscalefixed
  scale an image quickly with low precision
pamstretch
  scale up an image by inserting interpolated pixels
pamstretch-gen
  scale by non-integer values using pamstretch and pamscale
pamenlarge
  enlarge an image N times
pbmpscale
  enlarge a PBM image with edge smoothing
pbmreduce
  reduce a PBM N times, using Floyd-Steinberg
pamcut
  select a rectangular region from an image
pnmcrop
  crop all like-colored borders off an image
pnmpad
  add borders to an image
pnmmargin
  add a margin to an image
pamflip
  perform one or more flip operations on an image
pnmrotate
  rotate an image
pamcat
  concatenate images
pamcomp
  create composite (overlay) of images
pnmcomp
  obsolete version of pamcomp (kept because it may have fewer bugs)
pnmpaste
  paste a rectangle into an image
pnmstitch
  stitch together panoramic (side-by-side) photographs
pamarith
  apply simple arithmetic binary function to samples in two images
pammixmulti
  mix multiple images.
ppmmix
  mix (overlay) two images.
pamfunc
  apply simple arithmetic function to samples in an image
pambrighten
  brighten or dim an image -- change saturation and value
ppmflash
  brighten an image
pamaltsat
  change saturation of an image in alternative way
ppmdim
  dim an image - different way from pambrighten
ppmdist
  map colors to high contrast grayscales arbitrarily
pnmhisteq
  histogram equalize image to increase contrast
pnmnorm
  normalize contrast (adjust levels)
pamlevels
  adjust levels of color components
pamrecolor
  alter colors without affecting luminance
ppmntsc
  adjust colors so they are legal for NTSC or PAL television
pnminvert
  invert an image (exchange black and white)
pnmgamma
  perform gamma correction on an image
ppmdither
  ordered dither for color images
pamditherbw
  dither a grayscale image to black and white (convert PGM to PBM)
pbmclean
  remove lone pixels (snow) from a PBM image
pamthreshold
  threshold a grayscale image to black and white (convert PGM to PBM)
pnmnlfilt
  filter an image by replacing each pixel with a function of nearby pixels
pnmconvol
  general MxN convolution on an image. Can blur an image.
pnmsmooth
  smooth an image
pgmmedian
  apply a median filter to an image
pammasksharpen
  sharpen an image via an unsharp mask
pnmalias
  antialias an image
pamedge
  edge-detect (outline) an image
ppmrelief
  run a Laplacian Relief filter on a PPM
pamshadedrelief
  generate shaded relief image from an elevation map
pgmenhance
  edge-enhance a PGM image
pgmmorphconv
  perform morphological convolutions on a PGM image: dilation and erosion.
pgmbentley
  bentleyize a PGM image
ppmchange
  change all of one color to another in PPM image
pamhue
  shift all the hues in an image
pnmquant
  quantize colors/shades in a color or grayscale image down to fewer
pnmquantall
  quantize colors on many files
pnmremap
  replace colors in an image with those from a color map
pamlookup
  map an image to a new image by using it as indices into a table
pamunlookup
  inverse of pamlookup - generates the index image
ppmshift
  shift lines of PPM image left or right a random amount
ppmspread
  move pixels of PPM image a random amount
pnmshear
  shear an image
pamrubber
  rubber sheet deforming, distortion, stretching of an image
pamhomography
  stretch/shrink a quadrilateral region of an image to another quadrilateral shape
pamaddnoise
  add noise to an image
pamwipeout
  replace detail with smooth gradient from one edge to the other
pamperspective
  change perspective distortion in an image
pgmabel
  create cross-section of an image using Abel integration for deconvolution
pnmmercator
  turn a rectangular projection map into a Mercator projection
ppmglobe
  turn a cylindrical projection into strips that can be glued onto a sphere
pnmtile
  replicate an image into a specified size
pamdice
  slice an image into many horizontally and/or vertically
pamundice
  assemble an image from tiles (opposite of pamdice)
pammixinterlace
  mix adjacent lines to merge interlaced images
pamdeinterlace
  remove every other row from an image
ppmshadow
  add a shadow to an image so it looks like it's floating
pgmdeshadow
  deshadow a PGM image
ppmdraw
  draw text, lines, shapes, etc. on an image
ppmlabel
  add text to an image
pamtris
  triangle rasterizer
pamsummcol
  summarize (sum, average, etc) an image by column
ppmfade
  produce series of images fading from one to another
pamshuffle
  move pixels around randomly
pamoil
  turn a PNM or PAM image into an oil painting
ppmtv
  make an image lined so it looks like an old TV

## Image Analyzers

These all work on the Netpbm formats as input.

pamfile
  describe an image's vital characteristics
pamtable
  print an image's raster in decimal
pamslice
  print a row or column of an image in decimal
pamfind
  tell where all tuples of a certain value are in an image
pnmpsnr
  measure difference between two images
pgmhist
  print a histogram of the values in a PGM image
ppmhist
  print a histogram of a PPM
pnmhistmap
  draw a histogram of a PGM or PPM
pnmcolormap
  choose the N best colors to represent an image; create a colormap
pamsumm
  summarize (sum, average, etc.) all samples in an image
pamgetcolor
  display the average colors from specified regions in an image
pgmtexture
  calculate textural features on a PGM image
pamsharpness
  measure the sharpness of an image
pamsharpmap
  create map of sharpness in an image
pamtilt
  measure the tilt of an image, i.e. document skew
pgmminkowski
  compute Minkowski integral over a PGM image
pbmminkowski
  compute Minkowski integral over a PBM image
pammosaicknit
  validate a mosaic knitting pattern

## Miscellaneous

pamchannel
  extract individual planes (channel, e.g. R, G, or B) from an image
pamstack
  stack the planes of multiple PAM images into a single output image
ppmtorgb3
  separate a PPM into three PGMs
rgb3toppm
  combine three PGMs into one PPM
pampick
  pick images out of a multi-image Netpbm image stream
pamsplit
  split a multi-image Netpbm file into multiple 1-image files
pamrestack
  rearrange (reflow) pixels into different size rows
pamexec
  run a shell command on each image of a multi-image stream
pamendian
  swap bytes in multi-byte samples of a PAM image
pamfix
  salvage a Netpbm image whose file is truncated or has invalid sample values
pamvalidate
  copy Netpbm image stream, if and only if entire stream is valid Netpbm.
pbmmask
  create a mask bitmap from a regular bitmap
ppmcolormask
  create mask of areas of a certain color in an image
pambackground
  create mask of the background of an image
pambayer
  interpret Bayer patterns
pnmmontage
  build multiple Netpbm images into a single montage image
pbmlife
  apply Conway's rules of Life to a PBM image
pampop9
  simulate a multi-lens camera such as the Pop9
ppmdmkfont
  create Ppmdfont "standard"
ppmddumpfont
  dump a Ppmdfont file
ppmdcfont
  turn a Ppmdfont file into C source for a builtin font
pnmindex
  build a visual index of a bunch of Netpbm images
pgmkernel
  generate a convolution kernel
ppmsvgalib
  display a PPM image on a Linux virtual console using Svgalib
pamx
  display a Netpbm image in an X Window System window

### Obsolete Names

There used to be programs by the following names. Each has been either renamed to a more illustrative name, or superseded by a more general function. In most cases, Netpbm is installed with symbolic links that allow old programs and procedures to use these names but run the replacement programs. In some cases, programs by these names still exist but are just simple backward compatibility wrappers around the replacement program.

- ppmtotga
- pnmnoraw
- gemtopbm
- pnminterp
- pgmoil
- ppmtojpeg
- bmptoppm
- pgmnorm
- ppmnorm
- pnmfile
- pnmarith
- pgmedge
- ppmtouil
- pnmtoplainpnm
- pnmflip
- pnmtofits
- pnmtotiff
- pnmsplit
- pnmdepth
- pnmcut
- pnmscale
- pgmtopbm
- ppmtogif
- pngtopnm
- icontopbm
- pbmtoicon
- ppmquant
- ppmquantall
- pamfixtrunc
- pgmcrater
- pamrgbatopng
- pbmtox10bm
- pgmslice
- pnmenlarge
- ppmtomap
- pcdindex
- ppmbrighten
- ppmcolors
- pamcat