2 回答
TA贡献1848条经验 获得超10个赞
您有多种选择。如果您想使用替换随机采样,只需使用 numpy 的内置随机模块之一(即 numpy.random.random)。您还可以使用 numpy.random.pareto 来获得更戏剧性/突发性的噪音。这些方法生成独立样本。
如果您有一个集合或数组形式的分布,您想从中提取样本而不重复(例如,您有一个数组 [0.1, 0.3, 0.9] 并且只想用这些值生成噪声),则可以使用 python 的内置 random.random.choice([0.1, 0.3, 0.9]) 从您的自定义分布中抽取独立样本。您还可以指定replace=False.
TA贡献1803条经验 获得超3个赞
是的,随机意味着独立。您可以使用 numpy/scipy 生成噪声并将其添加到图像中。或许学习本教程 对你有好处,

代码如下:
import numpy as np
import matplotlib.pylab as plt
#--- data -----
a = 1
xi, yi = np.linspace(-a,a,nx), np.linspace(-a,a,ny)
x, y = np.meshgrid(xi,yi) # 2-dimensional grid
U = np.exp(-x*x - y*y) # picture/signal
V = np.random.randn(nx, ny) # random noise
#--- grafics -----
fig = plt.figure(figsize=(22,11))
ax1 = fig.add_subplot(131)
ax1.imshow(U)
ax2 = fig.add_subplot(132)
ax2.imshow(V)
ax3 = fig.add_subplot(133)
ax3.imshow(U+0.2*V)
plt.show()
fig.savefig('signal_noise.png', transparency=True)
添加回答
举报
