pamsistoaglyph man page

pamsistoaglyph — convert a single-image stereogram to a red/cyan anaglyphic image


pamsistoaglyph [--invert] [--sep=number] [--minsep=number] [--gray=number] [in_netpbmfile

All options can be abbreviated to their shortest unique prefix. You may use either white space or an equals sign between an option name and its value.


This program is part of Netpbm(1).

pamsistoaglyph reads a Netpbm image as input and produces a Netpbm image as output.

pamsistoaglyph takes a single-image stereogram (SIS) such as those produced by pamstereogram(1) and converts it to a red/cyan anaglyphic image such as those produced by ppm3d(1). Many people have trouble tricking their eyes into focusing beyond the image in front of them and are therefore unable to perceive the 3-D shape hidden within a single-image stereogram.  Anaglyphic stereograms are easier to perceive in 3-D but require a pair of red/cyan glasses such as those often used to watch 3-D movies. The goal of pamsistoaglyph is to help people who have trouble viewing single-image stereograms see the intriguing 3-D effect.

pamsistoaglyph can convert single-image random-dot stereograms (SIRDS), wallpaper stereograms, and even dual-image stereograms to anaglyphic images.


For most images, no command-line options need to be specified. The following options are available, however, for unusual circumstances:


Swap the left- and right-eye
   images. pamsistoaglyph assumes that its input
   represents a wall-eyed stereogram and generates the anaglyphic
   image accordingly. If the generated image appears to recede into
   the page where it should pop out of the page (and vice versa),
   this typically implies that the input image represents a
   cross-eyed stereogram. Use --invert to correct
   the image depth.


Specify the distance in pixels between the left- and right-eye
   images. Essentially, this corresponds to the distance between
   repetitions of the background pattern.  The --sep
   option should rarely be necessary
   as pamsistoaglyph is fairly good at determining
   automatically the eye-separation distance.


This option is similar to --sep but
   constrains pamsistoaglyph only to
   a minimum eye-separation distance. Any distance larger
   than number is acceptable.  The --minsep
   option should rarely be necessary
   as pamsistoaglyph is fairly good at determining
   automatically the eye-separation distance.  The default value for
   the minimum eye-separation distance is 10% of the image width;
   this value seems to work well in practice.


Limit the number of gray levels to use when searching for the
   optimal eye-separation
   distance.  Because pamsistoaglyph looks for
   repeated patterns, it is vulnerable to being confused by slight
   variations in color.  By reducing the input image to grayscale and
   capping the number of gray levels,
   pamsistoaglyph ameliorates the effects of
   unintentional color variations (such as those caused by conversion
   from a low-quality JPEG image, for example). The default of 63
   seems to work well so the --gray option should
   rarely be necessary.


The registration algorithm used by pamsistoaglyph was developed specifically for this program. As far as the author knows, there are no existing algorithms for converting stereograms to anaglyphs.  The algorithm works as follows:


Scott Pakin wrote pamsistoaglyph in April 2009.  It first appeared in Netpbm in Release 10.47 (June 2009).


Copyright (C) 2009 Scott Pakin,

See Also

Document Source

This manual page was generated by the Netpbm tool 'makeman' from HTML source.  The master documentation is at

Referenced By


5 April 2009 netpbm documentation