pnmhistmap - draw a histogram for a PGM or PPM file


pnmhistmap [ -black ] [ -white ] [ -max N ] [ -verbose ] [ pnmfile ]


Reads a portable anymap as input, although bitmap (PBM) input produces an error message and no image. Produces an image showing a histogram of the color (or gray) values in the input. A graymap (PGM) input produces a bitmap output. A pixmap (PPM) input produces pixmap output with three overlaid histograms: a red one for the red input, a green one for the green input, and a blue one for the blue input. The output is fixed in size: 256 pixels wide by 200 pixels high.



    Ignores the count of black pixels when scaling the histogram.


    Ignores the count of white pixels when scaling the histogram.

The -black and -white options, which can be used seperately or together, are useful for images with a large percentage of pixels whose value is zero or 255, which can cause the remaining histogram data to become unreadbaly small. Note that, for pixmap inputs, these options apply to all colors; if, for example, the input has a large number of bright-red areas, you will probably want to use the -white option.

-max N

    Force the scaling of the histogram to use N as the largest-count value. This is useful for inputs with a large percentage of single-color pixels which are not black or white.


    Report the progress of making the histogram, including the largest-count value used to scale the output.

All flags can be abbreviated to their shortest unique prefix.


Assumes maxval is always 255. Images with a smaller maxval will only use the lower-value side of the histogram. This can be overcome either by piping the input through "pnmdepth 255" or by cutting and scaling the lower-value side of the histogram. Neither is a particularly elegant solution.

Should allow the output size to be specified.


pgmhist(1), ppmhist(1), pgm(5), ppm(5)


Wilson H. Bent. Jr. ( ).