org.cybertory.MSS
Class PolynomialNoiseFunction
java.lang.Object
org.cybertory.MSS.PointModifyFunction
org.cybertory.MSS.PolynomialNoiseFunction
- public class PolynomialNoiseFunction
- extends PointModifyFunction
Custom JAI operation that adds noise as the sum of a series of
specified terms of a polynomial formula, each being a normal distribution.
Each term is specified as an instance of PolynomialNoiseTerm
:
noise = Sexp * stddev * Z()
where:
S
- is the (signal) intensity
exp
- is the exponent specified in the PolynomialNoiseTerm
stddev
- is the standard deviation specified in the PolynomialNoiseTerm
Z()
- is a normal distribution centered around zero with a stddev of one
Each component contributes a distribution with a mean of zero, so the sum
also has a mean of zero.
Method Summary |
void |
modifyValues(float[] values)
Override this method if the values for different channels are not
independent of each other. |
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
PolynomialNoiseFunction
public PolynomialNoiseFunction(java.util.Random rand,
PolynomialNoiseTerm[] terms)
PolynomialNoiseFunction
public PolynomialNoiseFunction(java.util.Random rand,
PolynomialNoiseTerm[] terms,
boolean channelsIndependent)
- Constructor, called from RIF
modifyValues
public void modifyValues(float[] values)
- Description copied from class:
PointModifyFunction
- Override this method if the values for different channels are not
independent of each other. The values are modified in place.
- Overrides:
modifyValues
in class PointModifyFunction
- Parameters:
values
- input and output array of channel values for a pixel.