DOC HOME SITE MAP MAN PAGES GNU INFO SEARCH PRINT BOOK
 

djpeg(1)




DJPEG(1)                 USER COMMANDS                   DJPEG(1)


NAME

     djpeg - decompress a JPEG file to an image file


SYNOPSIS

     djpeg [ options ] [ filename ]


DESCRIPTION

     djpeg decompresses the named  JPEG  file,  or  the  standard
     input if no file is named, and produces an image file on the
     standard output.  PBMPLUS (PPM/PGM), BMP, GIF, Targa, or RLE
     (Utah  Raster  Toolkit) output format can be selected.  (RLE
     is supported only if the URT library is available.)


OPTIONS

     All switch names may be abbreviated; for example, -grayscale
     may  be  written -gray or -gr.  Most of the "basic" switches
     can be abbreviated to as little as one  letter.   Upper  and
     lower  case  are equivalent (thus -BMP is the same as -bmp).
     British spellings  are  also  accepted  (e.g.,  -greyscale),
     though for brevity these are not mentioned below.

     The basic switches are:

     -colors N
          Reduce image to at most N  colors.   This  reduces  the
          number  of  colors used in the output image, so that it
          can be displayed on a colormapped display or stored  in
          a colormapped file format.  For example, if you have an
          8-bit display, you'd need to reduce  to  256  or  fewer
          colors.

     -quantize N
          Same as -colors.   -colors  is  the  recommended  name,
          -quantize is provided only for backwards compatibility.

     -fast
          Select recommended processing  options  for  fast,  low
          quality  output.   (The  default options are chosen for
          highest quality output.)  Currently, this is equivalent
          to -dct fast -nosmooth -onepass -dither ordered.

     -grayscale
          Force gray-scale output even if  JPEG  file  is  color.
          Useful  for viewing on monochrome displays; also, djpeg
          runs noticeably faster in this mode.

     -scale M/N
          Scale the output image by a factor M/N.  Currently  the
          scale factor must be 1/1, 1/2, 1/4, or 1/8.  Scaling is
          handy if the image is larger than  your  screen;  also,
          djpeg runs much faster when scaling down the output.

                   Last change: 22 August 1997                  1

DJPEG(1)                 USER COMMANDS                   DJPEG(1)

     -bmp Select  BMP  output  format  (Windows  flavor).   8-bit
          colormapped  format is emitted if -colors or -grayscale
          is specified, or if the JPEG file is gray-scale; other-
          wise, 24-bit full-color format is emitted.

     -gif Select GIF output format.  Since GIF does  not  support
          more  than  256  colors, -colors 256 is assumed (unless
          you specify a smaller number of colors).

     -os2 Select BMP output  format  (OS/2  1.x  flavor).   8-bit
          colormapped  format is emitted if -colors or -grayscale
          is specified, or if the JPEG file is gray-scale; other-
          wise, 24-bit full-color format is emitted.

     -pnm Select PBMPLUS (PPM/PGM) output  format  (this  is  the
          default  format).   PGM  is emitted if the JPEG file is
          gray-scale or if -grayscale is specified; otherwise PPM
          is emitted.

     -rle Select RLE output format.  (Requires URT library.)

     -targa
          Select Targa output format.  Gray-scale format is emit-
          ted  if the JPEG file is gray-scale or if -grayscale is
          specified; otherwise, colormapped format is emitted  if
          -colors is specified; otherwise, 24-bit full-color for-
          mat is emitted.

     Switches for advanced users:

     -dct int
          Use integer DCT method (default).

     -dct fast
          Use fast integer DCT (less accurate).

     -dct float
          Use floating-point DCT method.   The  float  method  is
          very slightly more accurate than the int method, but is
          much  slower  unless  your  machine   has   very   fast
          floating-point hardware.  Also note that results of the
          floating-point  method   may   vary   slightly   across
          machines,  while  the  integer  methods should give the
          same results everywhere.  The fast  integer  method  is
          much less accurate than the other two.

     -dither fs
          Use Floyd-Steinberg dithering in color quantization.

     -dither ordered
          Use ordered dithering in color quantization.

                   Last change: 22 August 1997                  2

DJPEG(1)                 USER COMMANDS                   DJPEG(1)

     -dither none
          Do  not  use  dithering  in  color  quantization.    By
          default,  Floyd-Steinberg  dithering  is  applied  when
          quantizing colors; this is slow  but  usually  produces
          the  best  results.   Ordered  dither  is  a compromise
          between speed and quality; no  dithering  is  fast  but
          usually  looks awful.  Note that these switches have no
          effect  unless  color  quantization  is   being   done.
          Ordered dither is only available in -onepass mode.

     -map file
          Quantize to the colors  used  in  the  specified  image
          file.  This is useful for producing multiple files with
          identical color maps, or for forcing a  predefined  set
          of  colors  to  be used.  The file must be a GIF or PPM
          file. This option overrides -colors and -onepass.

     -nosmooth
          Use a faster, lower-quality upsampling routine.

     -onepass
          Use one-pass instead of  two-pass  color  quantization.
          The  one-pass  method  is faster and needs less memory,
          but it produces a  lower-quality  image.   -onepass  is
          ignored  unless you also say -colors N.  Also, the one-
          pass method is always used for gray-scale  output  (the
          two-pass method is no improvement then).

     -maxmemory N
          Set limit for amount of memory  to  use  in  processing
          large  images.  Value is in thousands of bytes, or mil-
          lions of bytes if "M" is attached to the  number.   For
          example,  -max 4m selects 4000000 bytes.  If more space
          is needed, temporary files will be used.

     -outfile name
          Send output image to the named file,  not  to  standard
          output.

     -verbose
          Enable debug printout.  More  -v's  give  more  output.
          Also, version information is printed at startup.

     -debug
          Same as -verbose.


EXAMPLES

     This example decompresses the JPEG file  foo.jpg,  quantizes
     it  to  256 colors, and saves the output in 8-bit BMP format
     in foo.bmp:

          djpeg -colors 256 -bmp foo.jpg > foo.bmp

                   Last change: 22 August 1997                  3

DJPEG(1)                 USER COMMANDS                   DJPEG(1)


HINTS

     To get a quick preview  of  an  image,  use  the  -grayscale
     and/or  -scale  switches.   -grayscale  -scale  1/8  is  the
     fastest case.

     Several options are available that trade off  image  quality
     to gain speed.  -fast turns on the recommended settings.

     -dct fast and/or -nosmooth gain speed at a  small  sacrifice
     in   quality.    When  producing  a  color-quantized  image,
     -onepass -dither ordered is fast but much lower quality than
     the  default  behavior.   -dither  none  may give acceptable
     results in two-pass mode, but is seldom  tolerable  in  one-
     pass mode.

     If you are fortunate enough to have very fast floating point
     hardware, -dct float may be even faster than -dct fast.  But
     on most machines -dct float is slower than -dct int; in this
     case it is not worth using, because its theoretical accuracy
     advantage is too small to be significant in practice.


ENVIRONMENT

     JPEGMEM
          If this environment variable is set, its value  is  the
          default  memory  limit.   The  value  is  specified  as
          described for the -maxmemory switch.  JPEGMEM overrides
          the  default  value specified when the program was com-
          piled, and itself is overridden by  an  explicit  -max-
          memory.


SEE ALSO

     cjpeg(1), jpegtran(1), rdjpgcom(1), wrjpgcom(1)
     ppm(5), pgm(5)
     Wallace, Gregory K.  "The  JPEG  Still  Picture  Compression
     Standard",  Communications  of the ACM, April 1991 (vol. 34,
     no. 4), pp. 30-44.


AUTHOR

     Independent JPEG Group


BUGS

     Arithmetic coding is not supported for legal reasons.

     To avoid the Unisys LZW patent, djpeg produces  uncompressed
     GIF  files.   These  are larger than they should be, but are
     readable by standard GIF decoders.

     Still not as fast as we'd like.

                   Last change: 22 August 1997                  4


Man(1) output converted with man2html