我正在尝试理解并创建自己的泊松噪声发生器。我正在关注此处看到的代码示例:https ://imagej.nih.gov/ij/plugins/download/Poisson_Noise.java
它会产生泊松噪声,但我的理解是这种类型的噪声是由光子样本控制的,我在这里看不到任何地方。我也不明白如何控制噪音的强度。
这是我的代码版本:
double L, p;
int k, var=0;
L = exp (-(float)(src(x,y,0)+src(x,y,1)+src(x,y,2))*0.333); // Red, green and blue channels averaged to one intensity (for now)
k = 0;
p = 1.0;
do
{
k++;
p *= ((float)rand () / (double) RAND_MAX);
}
while (p >= L);
var = k - 1;
pset(x,y,0, var);
pset(x,y,1, var);
pset(x,y,2, var);}
谁能指出我正确的方向?
谢谢!