Command:

Pamfunc User Manual(0) Pamfunc User Manual(0)NAMEpamfunc - Apply a simple monadic arithmetic function to a Netpbm imageSYNOPSISpamfunc{-multiplier=realnum|-divisor=realnum|-adder=integer|-subtractor=integer|-min=wholenum|-max=wholenum-andmask=hexmask-ormask=hexmask-xormask=hexmask-not-shiftleft=count-shiftright=count} [filespec] All options can be abbreviated to their shortest unique prefix. You may use two hyphens instead of one. You may separate an option name and its value with white space instead of an equals sign.DESCRIPTIONThis program is part of Netpbm(1).pamfuncreads a Netpbm image as input and produces a Netpbm image as output, with the same format, maxval, and dimensions as the input.pamfuncapplies a simple transfer function to each sample in the input to generate the corresponding sample in the output. The options determine what function.pamarithis the same thing for binary functions -- it takes two images as input and applies a specified simple arithmetic function (e.g. addition) on pairs of samples from the two to produce the single output image.OPTIONS-multiplier=realnumThis option makes the transfer function that of multiplying byrealnum.realnummust be nonnegative. If the result is greater than the image maxval, it is clipped to the maxval. Where the input is a PGM or PPM image, this has the effect of dimming or brightening it. For a different kind of brightening, see ppmbrighten(1)andppmflash(1) Also, see ppmdim(1),whichdoesthesame thing aspamfunc-multiplieron a PPM image with a multiplier between 0 and 1, except it uses integer arithmetic, so it may be faster. And ppmfade(1)cangenerateawhole sequence of images of brightness declining to black or increasing to white, if that's what you want.-divisor=realnumThis option makes the transfer function that of dividing byrealnum.realnummust be nonnegative. If the result is greater than the image maxval, it is clipped to the maxval. This is the same function as you would get with-multiplier, specifying the multiplicative inverse ofrealnum.-adder=integerThis option makes the transfer function that of addingwholenum. If the result is greater than the image maxval, it is clipped to the maxval. If it is less than zero, it is clipped to zero. Note that in mathematics, this entity is called an 'addend,' and an 'adder' is a snake. We use 'adder' because it makes more sense.-subtractor=integerThis option makes the transfer function that of subtractingwholenum. If the result is greater than the image maxval, it is clipped to the maxval. If it is less than zero, it is clipped to zero. Note that in mathematics, this entity is called a 'subtrahend' rather than a 'subtractor.' We use 'subtractor' because it makes more sense. This is the same function as you would get with-adder, specifying the negative ofinteger.-min=wholenumThis option makes the transfer function that of taking the maximum of the argument andwholenum. I.e the minimum value in the output will bewholenum. Ifwholenumis greater than the maxval, though, every sample in the output will be maxval.-max=wholenumThis option makes the transfer function that of taking the minimum of the argument andwholenum. I.e the maximum value in the output will bewholenum. Ifwholenumis greater than the maxval, the function is idempotent -- the output is identical to the input.-andmask=hexmaskThis option makes the transfer function that of bitwise anding withhexmask.hexmaskis in hexadecimal. Example: 0f See section Maxval for the special meaning of maxval with respect to bit string operations such as this. This option was new in Netpbm 10.40 (September 2007).-ormask=hexmaskThis option makes the transfer function that of bitwise inclusive oring withhexmask. This is analogous to-andmask. This option was new in Netpbm 10.40 (September 2007).-xormask=hexmaskThis option makes the transfer function that of bitwise exclusive oring withhexmask. This is analogous to-andmask. This option was new in Netpbm 10.40 (September 2007).-notThis option makes the transfer function that of bitwise logical inversion (e.g. sample value 0xAA becomes 0x55). See section Maxval for the special meaning of maxval with respect to bit string operations such as this.pnminvertdoes the same thing for a bilevel visual image which has maxval 1 or is of PBM type. This option was new in Netpbm 10.40 (September 2007).-shiftleft=countThis option makes the transfer function that of bitwise shifting left bycountbits. See section Maxval for the special meaning of maxval with respect to bit string operations such as this. This option was new in Netpbm 10.40 (September 2007).-shiftright=countThis option makes the transfer function that of bitwise shifting right bycountbits. This is analogous to-shiftleft. This option was new in Netpbm 10.40 (September 2007).MAXVALFor the arithmetic functions, the maxval has no meaning. The function applies to the sample value as an inte- ger. (Note that this differs from the usual interpretation of PAM samples as being a fraction of a maxval, butdoesproduce more intuitive result: 2 times 5 is 10. But with the bit string operations, the maxval has a special meaning. The functions in question are:-andmask,-ormask,-xormask,-not,-shiftleft, and-shiftright. With these, each sample value the input image, and in the output image, represents a bit string, not a number. The maxval tells how wide the bit string is. The maxval must be a full binary count (a power of two minus one, such as 0xff) and the number of ones in it is the width of the bit string. For a masking function, the mask value you specify must not have more significant bits than the width indicated by the maxval. For a shifting operation, the shift count you specify must not be greater than the width indicated by the max- val. The maxval of the output image is the same as that of the input image.SEEALSOppmdim(1), ppmbrighten(1), pamdepth(1), pamarith(1), pamsummcol(1), pamsumm(1), ppmfade(1), pnminvert(1), pam(1), pnm(1),HISTORYThis program was added to Netpbm in Release 10.3 (June 2002). netpbm documentation July 2007 Pamfunc User Manual(0)