如何用imagej为图像添加噪声

如何用imagej为图像添加噪声,第1张

图像添加噪声的⽅法(补充ing)1.随机修改⼀部分像素点的灰度值为指定值

def noise(img,proportion=0.05):

'''

随机的修改⼀定数量像素点的灰度值

:param img:

:param proportion: 噪声点占全部像素点的⽐例

:return:

第 1 页

'''

height,width =img.shape[:2]

num = int(height*width*proportion)#多少个像素点添加噪声

for k in range(0, num):

# get the random point

xi = int(np.random.uniform(0, img.shape[1]))

xj = int(np.random.uniform(0, img.shape[0]))

一般加入白噪声,只得是加入高斯白噪声

利用randn产生高斯分布噪声加到原来的图像上就可以了

假设你原来的图像的数据存在矩阵变量a中

那么

noise=A*randn(size(a))

其中A是需要加噪声的方差值,A的取值确定噪声的幅度大小

一般比图像信号幅度小得多

b=a+noise

就是加了噪声之后的图像

关于origin怎么给数据加噪声相关资料如下

打开origin

image:输入图像数据,类型应为ndarray,输入后将转换为浮点数。

mode:选择添加噪声的类别。字符串str类型。应为以下几种之一:

mode 噪声类型 备注

gaussian 高斯噪声

localvar 高斯白噪声 在“图像”的每个点处具有指定的局部方差

poisson 泊松分布噪声

salt 盐噪声 随机用1替换像素。属于高灰度噪声

pepper 胡椒噪声 随机用0或-1替换像素,属于低灰度噪声

s&p 椒盐噪声

speckle 使用image + n*image的乘性噪声 n是具有指定均值和方差的均匀噪声

seed :类型为int。 将在生成噪声之前设置随机种子,以进行有效的伪随机比较。

clip:类型为bool。若为True(default)则在加入‘speckle’, ‘poisson’, 或 ‘gaussian’这三种噪声后进行剪切以保证图像数据点都在[0,1]或[-1.1]之间。若为False,则数据可能超出这个范围。

mean:类型为float。 表示随机分布的均值,用于‘gaussian’和‘speckle’,默认为0。

var: 类型为float。 表示随机分布的方差,(标准差^2)用于’gaussian’和‘speckle’。 默认为0.01。

local_vars:类型为ndarray。表示图像每个像素点处的局部方差,正浮点数矩阵,和图像同型,用于‘localvar’。

amount:类型为float。表示 椒盐噪声像素点替换的比例,在[0,1]之间。用于‘salt’, ‘pepper’,和 ‘salt &pepper’. 默认为0.05

salt_vs_pepper:类型为float。表示盐噪声和胡椒噪声的比例,在[0,1]之间。数字越大代表用1替换越多(more salt). 默认 为 0.5

输出(返回值)out:类型为ndarray。


欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/bake/11551742.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-05-16
下一篇2023-05-16

发表评论

登录后才能评论

评论列表(0条)

    保存