1.add_noise_distribution(Image : ImageNoise : Distribution : )
add_noise_distribution-根据图像Image 的Distribution 添加分布的噪声。
得到的灰度值被剪切到相应像素类型的范围内。
该Distribution 存储在长度为513的元组中。
这个元组的各个值定义了噪声的频率,其特定振幅由元组中的位置定义。
中心值,即,元组中位置256处的值定义不变像素的频率。
255位置的值定义了灰度值减少1的像素的频率。
位置254的值定义了灰度值下降2的相应频率,以此类推。
类似地,位置257的值定义了灰度值增加1的像素的频率。
如果在小于256的位置上最多有一个值不等于零,
在大于256的位置上最多有一个值不等于零,则Distribution表示盐和胡椒噪声。
当是椒盐噪声时,如果辣椒的数量由0位置的值表示的,和盐的数量由位置价值512的值表示,
则被处理的像素设置为最低(胡椒)和最大(盐)值,也可以由ImageNoise表示,
例程:
read_image(Image,'mreut')
dev_display (Image)
sp_distribution(10,10,Dist)
add_noise_distribution(Image,ImageNoise,Dist)
dev_display (ImageNoise)
2.add_noise_white(Image : ImageNoise : Amp : )
add_noise e_white为图像Image 添加噪声。
噪声为白噪声,均匀分布于区间[-Amp,Amp],由使用了初始种子时间的C函数“drand48”产生,。
得到的灰度值被剪切到相应像素类型的范围内。
例程:
read_image(Image,'fabrik')
dev_display (Image)
add_noise_white(Image,ImageNoise,90)
dev_display (ImageNoise)
3.gauss_distribution( : : Sigma : Distribution)
gauss_distribution产生高斯噪声分布。
参数Sigma 决定了噪声的标准差。
通常,结果Distribution用作操作符 add_noise_distribution的参数输入。
例程:
read_image(Image,'fabrik')
dev_display (Image)
gauss_distribution(30,Dist)
add_noise_distribution(Image,ImageNoise,Dist)
dev_display (ImageNoise)
4.noise_distribution_mean(ConstRegion, Image : : FilterSize : Distribution)
noise e_distribution_mean计算图像中某一区域的噪声分布。
参数ConstRegion确定具有近似恒定灰度值的图像区域。
理想情况下,灰度值的变化应该只由该区域的噪声引起。
该区域的噪声分布由 mean_image算子对图像进行平滑确定,
并利用该区域的灰度值差作为噪声分布的估计,在Distribution.中返回。
例程:
read_image(Image,'fabrik')
gen_circle (Circle, 200, 200, 100.5)
noise_distribution_mean (Circle, Image, 21, Distribution)
add_noise_distribution (Image, ImageNoise, Distribution)
5.sp_distribution( : : PercentSalt, PercentPepper : Distribution)
sp_distribution生成一个值为0和255的噪声分布。
参数PercentSalt和PercentPepper分别决定了白噪声像素和黑噪声像素的百分比。
这些参数的和必须小于100。
通常,结果Distribution用作操作符 add_noise_distribution的输入。
例程:
read_image(Image,'mreut')
dev_display (Image)
sp_distribution(10,10,Dist)
add_noise_distribution(Image,ImageNoise,Dist)
dev_display (ImageNoise)
|