pnmgamma(1) - phpMan

Command: man perldoc info search(apropos)  


pnmgamma(1)                          General Commands Manual                          pnmgamma(1)

NAME
       pnmgamma - perform gamma correction on a portable anymap

SYNOPSIS
       pnmgamma [-ungamma] [-cieramp|-srgbramp] [value [pnmfile]]
       pnmgamma [-ungamma] [-cieramp|-srgbramp] redgamma greengamma bluegamma [pnmfile]

DESCRIPTION
       Performs gamma correction on pseudo-PNM images.

       The  PPM  format specification specify that certain sample values in a file represent cer-
       tain light intensities in an image.  In particular, they specify that  the  sample  values
       are  directly proportional to gamma-corrected intensity values.  The gamma correction they
       specify is CIE Rec. 709.

       However, people sometimes work with approximations of PPM and PGM where  the  relationship
       between  the image intensities and the sample values are something else.  For example, the
       sample value might be directly proportional to the intensity with no gamma correction (of-
       ten called "linear intensity").  Or a different gamma transfer function may be used.

       pnmgamma allows you to manipulate the transfer function, thus working with and/or creating
       pseudo-PPM files that are useful for various things.

       For example, if you feed a true PPM to pnmgamma -cieramp -ungamma, you  get  as  output  a
       file which is PPM in every respect except that the sample values are directly proportional
       to the light intensities in the image.  If you feed such a file to pnmgamma -cieramp,  you
       get out a true PPM.

       The situation for PGM images is analogous.  And pnmgamma treats PBM images as PGM images.

       When you feed a linear PPM image to a display program that expects a true PPM, the display
       appears darker than it should, so pnmgamma has the effect of lightening the  image.   When
       you  feed a true PPM to a display program that expects linear sample values, and therefore
       does a gamma correction of its own on them, the display appears lighter than it should, so
       pnmgamma  with  a  gamma value less than one (the multiplicative inverse of whatever gamma
       value the display program uses) has the effect of darkening the image.

PARAMETERS
       The only parameters are the specification of the input image file and  the  gamma  values.
       Every  gamma  transfer  function  pnmgamma  uses  contains an exponent, which is the gamma
       value, and you can choose that value.

       Furthermore, you can choose different values for each of the three RGB components.  If you
       specify only one gamma value, pnmgamma uses that value for all three RGB components.

       If  you  don't specify any gamma parameters, pnmgamma chooses a default.  For the transfer
       functions defined by standards, the default is the value defined by the standard.  If  you
       specify  anything else, you will be varying from the standard.  For the simple power func-
       tion transfer function, the default gamma is 1/.45.

OPTIONS
       -ungamma
              Apply the inverse of the specified transfer function (i.e. go from  gamma-corrected
              nonlinear intensities to linear intensities).

       -cieramp
              Use  the  CIE  Rec. 709 gamma transfer function.  Note that it is true CIE Rec. 709
              only if you use the default gamma value (i.e. don't specify any gamma  parameters).
              This transfer function is a power function modified with a linear ramp near black.

              If  you specify neither -cieramp nor -srgbramp, the transfer function defaults to a
              simple power function.

       -srgbramp
              Use the Internation Electrotechnical Commission (IEC) SRGB gamma transfer  function
              (as  specified  in  the standard IEC 61966-2-1).  Note that it is true SRGB only if
              you use the default gamma value (i.e. don't specify any  gamma  parameters).   This
              transfer  function  is  like  the one selected by -cieramp, but with different con-
              stants in it.

              Note that SRGB is often spelled "sRGB".  In this document, we use standard  English
              typography, though, which doesn't allow for that kind of capitalization.

              If  you specify neither -cieramp nor -srgbramp, the transfer function defaults to a
              simple power function.

WHAT IS GAMMA?
       A good explanation of  gamma  is  in  Charles  Poynton's  GammaFAQ   at  <http://www.poyn-
       ton.com/notes/colour_and_gamma/ColorFAQ.html>    and    ColorFAQ    at   <http://www.poyn-
       ton.com/notes/colour_and_gamma/GammaFAQ.html>

       In brief: The simplest way to code an image is by using sample values  that  are  directly
       proportional  to  the intensity of the color components.  But that wastes the sample space
       because the human eye can't discern differences between low-intensity colors as well as it
       can between high-intensity colors.  So instead, we pass the light intensity values through
       a transfer function that makes it so that changing a sample value by  1  causes  the  same
       level  of  perceived  color change anywhere in the sample range.  We store those resulting
       values in the image file.  That transfer function is called the  gamma  transfer  function
       and the transformation is called gamma correcting.

       Virtually  all image formats, either specified or de facto, use gamma-corrected values for
       their sample values.

       What's really nice about gamma is that by coincidence, the inverse function that you  have
       to  do  to convert the gamma-corrected values back to real light intensities is done auto-
       matically by CRTs.  You just apply a voltage to the CRT's electron  gun  that  is  propor-
       tional  to  the gamma-corrected sample value, and the intensity of light that comes out of
       the screen is close to the intensity value you had before you applied the  gamma  transfer
       function!

       And  when you consider that computer video devices usually want you to store in video mem-
       ory a value proportional to the signal voltage you want to go to the  monitor,  which  the
       monitor  turns  into a proportional drive voltage on the electron gun, it is really conve-
       nient to work with gamma-corrected sample values.

SEE ALSO
       pnm(5)

AUTHOR
       Copyright (C) 1991 by Bill Davidson and Jef Poskanzer.

                                           11 June 2001                               pnmgamma(1)

Generated by $Id: phpMan.php,v 4.55 2007/09/05 04:42:51 chedong Exp $ Author: Che Dong
On Apache
Under GNU General Public License
2024-12-12 17:02 @3.146.178.250 CrawledBy Mozilla/5.0 AppleWebKit/537.36 (KHTML, like Gecko; compatible; ClaudeBot/1.0; +claudebot@anthropic.com)
Valid XHTML 1.0!Valid CSS!