NAME
pamaddnoise - add noise to a Netpbm image
SYNOPSIS
pamaddnoise { [-type gaussian]
[-sigma1 value]
[-sigma2 value] | -type multiplicative_gaussian
[-mgsigma value] | -type impulse
[-tolerance ratio] | -type laplacian
[-lsigma value] | -type poisson
[-lambda value] } [-seed int]
[netpbmfile]
DESCRIPTION
This program is part of Netpbm(1).
pamaddnoise adds the specified noise type to a Netpbm image. pamaddnoise treats a PPM image as 3 independent planes, not as a plane of colors in a color space.
OPTIONS
In addition to
the options common to all programs based on libnetpbm (most
notably -quiet, see
Common Options ),
pamaddnoise recognizes the following command line
options:
-type noise_type
Select type of noise by name. The following noise types are available: gaussian, multiplicative_gaussian, impulse, laplacian, poisson. Only enough letters to be unique are required for the noise type option. The default noise type is gaussian.
gaussian
To each sample
value is added the value of a two Gaussian random variables.
The variance of one is independent of the sample value,
while the variance
of the other is proportional to the sample value. You
control these
variances with options -sigma1 and -sigma2
(and can eliminate
either by setting the variance to 0). The mean of the
Gaussian
distributions is 0.
multiplicative_gaussian
impulse
This is
’salt and pepper’ noise. Samples are changed
randomly
to zero or full brightness or left alone. This is also know
as salt and
pepper noise, as in a grayscale picture, it adds white
pixels and black
pixels, which look like salt and pepper, respectively.
Control this with
options -tolerance and -salt.
laplacian
poisson
-lambda value
This is valid only with -type=poisson. It is the expected value of the Poisson distribution for a sample value of maximum intensity. The expected value for other intensities is proportional; e.g. for half intensity, it is half this value.
The default value is 12.
-lsigma value
This is meaningful only for laplacian noise.
The default value is 10.0.
-mgsigma value
This is valid only for multiplicative gaussian noise.
The default value is 0.5.
-seed int
This is the random number
generator seed value. Use this to get
repeatable results.
-sigma1 value
This is valid only for gaussian
noise. It is the standard deviation
of the Gaussian random variable that is multiplied by the
square root of
each sample value and added to that sample value.
The default value is 4.0.
-sigma2 value
This is valid only for gaussian
noise.
It is the standard deviation of the Gaussian random variable
that is
added directly to each sample value.
The default value is 20.0.
-tolerance fraction
This is valid only for impulse
noise.
fraction is the fraction of samples that are changed
in the output. Whether each is changed to salt or pepper is
controlled by
-salt.
The default value is 0.10.
-salt=fraction
This is valid
only for impulse noise. fraction is the
fraction of the pixels that are changed that are changed to
salt (maxval);
the rest are changed to pepper (0).
The default is 0.5 (half salt, half pepper).
This option was
new in Netpbm 11.04 (September 2023). Before that, the
noise is always half salt and half pepper.
REFERENCES
• |
"Adaptive Image Restoration in Signal-Dependent Noise" by R. Kasturi Institute for Electronic Science, Texas Tech University, 1982 | ||
• |
"Digital Image Processing Algorithms" by Ioannis Pitas, Prentice Hall, 1993 ISBN 0-13-145814-0 |
SEE ALSO
pgmnoise(1), pgmmedian(1), pnm(1), pam(1),
HISTORY
pamaddnoise was added to Netpbm in Version 10.29 (August 2005). It had been distributed by Mike Burns via his own web site before that (and continued to be so).
Burns’ version, and the one in Netpbm 10.29, was called pnmaddnoise and worked only on PNM images. In Netpbm 10.30, it was converted to handle PAM images and renamed to pamaddnoise.
AUTHOR
Copyright (C) 1995 by Mike Burns <burns [AT] cac.edu>
DOCUMENT SOURCE
This manual page was generated by the Netpbm tool ’makeman’ from HTML source. The master documentation is at