EnglishFrenchSpanish

OnWorks favicon

pnmnorm - Online in the Cloud

Run pnmnorm in OnWorks free hosting provider over Ubuntu Online, Fedora Online, Windows online emulator or MAC OS online emulator

This is the command pnmnorm that can be run in the OnWorks free hosting provider using one of our multiple free online workstations such as Ubuntu Online, Fedora Online, Windows online emulator or MAC OS online emulator

PROGRAM:

NAME


pnmnorm - normalize the contrast in a Netbpm image

SYNOPSIS


pnmnorm [-bpercent N | -bvalue N] [-wpercent N | -wvalue N] [-keephues] [-brightmax]

[ppmfile]

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

DESCRIPTION


Reads a PNM image (PBM, PGM, or PPM). Normalizes the contrast by forcing the lightest
pixels to white, the darkest pixels to black, and linearly rescaling the ones in between;
and produces the same kind of file as output. This is pretty useless for a PBM image.

The program first determines a mapping of old brightness to new brightness. For each
possible brightness of a pixel, the program determines a corresponding brightness for the
output image.

Then for each pixel in the image, the program computes a color which has the desired
output brightness and puts that in the output. With a color image, it is not always
possible to compute such a color and retain any semblance of the original hue, so the
brightest and dimmest pixels may only approximate the desired brightness.

Note that for a PPM image, this is different from separately normalizing the individual
color components.

OPTIONS


By default, the darkest 2 percent of all pixels are mapped to black, and the lightest 1
percent are mapped to white. You can override these percentages by using the -bpercent
and -wpercent flags, or you can specify the exact pixel values to be mapped by using the
-bvalue and -wvalue flags. Appropriate numbers for the flags can be gotten from the
ppmhist tool. If you just want to enhance the contrast, then choose values at elbows in
the histogram; e.g. if value 29 represents 3% of the image but value 30 represents 20%,
choose 30 for bvalue. If you want to lighten the image, then set bvalue to 0 and just
fiddle with wvalue; similarly, to darken the image, set wvalue to maxval and play with
bvalue.

The -keephues option says to keep each pixel the same hue as it is in the input; just
adjust its intensity. By default, pnmnorm normalizes contrast in each component
independently (except that the meaning of the -wpercent and -bpercent options are based on
the overall intensities of the colors, not each component taken separately). So if you
have a color which is intensely red but dimly green, pnmnorm would make the red more
intense and the green less intense, so you end up with a different hue than you started
with.

If you specify -keephues, pnmnorm would likely leave this pixel alone, since its overall
intensity is medium.

-keephues can cause clipping, because a certain color may be below a target intensity
while one of its components is saturated. Where that's the case, pnmnorm uses the maximum
representable intensity for the saturated component and the pixel ends up with less
overall intensity, and a different hue, than it is supposed to have.

This option is meaningless on grayscale images.

Before March 2002, there was no -keephues option.

The -brightmax option says to use the intensity of the most intense RGB component of a
pixel as the pixel's brightness. By default, pnmnorm uses the luminosity of the color as
its brightness.

This option is meaningless on grayscale images.

Before March 2002, there was no -brightmax option.

Use pnmnorm online using onworks.net services


Free Servers & Workstations

Download Windows & Linux apps

  • 1
    Phaser
    Phaser
    Phaser is a fast, free, and fun open
    source HTML5 game framework that offers
    WebGL and Canvas rendering across
    desktop and mobile web browsers. Games
    can be co...
    Download Phaser
  • 2
    VASSAL Engine
    VASSAL Engine
    VASSAL is a game engine for creating
    electronic versions of traditional board
    and card games. It provides support for
    game piece rendering and interaction,
    and...
    Download VASSAL Engine
  • 3
    OpenPDF - Fork of iText
    OpenPDF - Fork of iText
    OpenPDF is a Java library for creating
    and editing PDF files with a LGPL and
    MPL open source license. OpenPDF is the
    LGPL/MPL open source successor of iText,
    a...
    Download OpenPDF - Fork of iText
  • 4
    SAGA GIS
    SAGA GIS
    SAGA - System for Automated
    Geoscientific Analyses - is a Geographic
    Information System (GIS) software with
    immense capabilities for geodata
    processing and ana...
    Download SAGA GIS
  • 5
    Toolbox for Java/JTOpen
    Toolbox for Java/JTOpen
    The IBM Toolbox for Java / JTOpen is a
    library of Java classes supporting the
    client/server and internet programming
    models to a system running OS/400,
    i5/OS, o...
    Download Toolbox for Java/JTOpen
  • 6
    D3.js
    D3.js
    D3.js (or D3 for Data-Driven Documents)
    is a JavaScript library that allows you
    to produce dynamic, interactive data
    visualizations in web browsers. With D3
    you...
    Download D3.js
  • More »

Linux commands

Ad