如何在matlab中将高斯噪声添加到3D数据
How to add Gaussian noise to 3D data in matlab
在实验过程中,需要对3D数据(点云或网格)添加不同级别的高斯噪声,但只求2D高斯噪声函数。我们如何向 3D 数据添加高斯噪声?
不用任何函数也可以做到,只需要使用正态分布的随机数(https://es.mathworks.com/help/matlab/ref/randn.html)。
一个高斯噪声可以定义如下:
[M, N, P] = size(data);
noise = sqrt(sigma)*randn(M, N, P);
其中 sigma 是噪声的方差(功率),M、N、P 是 3D 数据矩阵的维度。
正确创建噪音后,只需将其添加到数据中即可:
y = data + noise;
如有错误,请检查噪声的维度,它们必须与数据相同。
在实验过程中,需要对3D数据(点云或网格)添加不同级别的高斯噪声,但只求2D高斯噪声函数。我们如何向 3D 数据添加高斯噪声?
不用任何函数也可以做到,只需要使用正态分布的随机数(https://es.mathworks.com/help/matlab/ref/randn.html)。 一个高斯噪声可以定义如下:
[M, N, P] = size(data);
noise = sqrt(sigma)*randn(M, N, P);
其中 sigma 是噪声的方差(功率),M、N、P 是 3D 数据矩阵的维度。
正确创建噪音后,只需将其添加到数据中即可:
y = data + noise;
如有错误,请检查噪声的维度,它们必须与数据相同。