在初始化粒子时,我需要向它添加一些高斯噪声。例如
particle.x(i) = rect(1)+mgd(1,1,0,10);
这里rect(1)
给出位置,mgd 函数提供噪声
mgd 函数的详细信息如下:
- 功能
x=mgd(N,d,rmean,covariance)
- 生成多元高斯分布
- 用法
x=mgd(N,d,mu,sigmax)
- 此函数
N
从 d 维高斯分布生成样本
我的N
和 d 的值始终为 1,如何mgd
在 opencv c++ 中实现该功能?
在初始化粒子时,我需要向它添加一些高斯噪声。例如
particle.x(i) = rect(1)+mgd(1,1,0,10);
这里rect(1)
给出位置,mgd 函数提供噪声
mgd 函数的详细信息如下:
x=mgd(N,d,rmean,covariance)
x=mgd(N,d,mu,sigmax)
N
从 d 维高斯分布生成样本我的N
和 d 的值始终为 1,如何mgd
在 opencv c++ 中实现该功能?
OpenCV 带有一个很好的随机数生成器类和许多有用的函数。要使用随机高斯噪声初始化 d 维向量,只需执行以下操作:
int d = 10; // dimension
float m = 0, cov = 0.1; // mean and covariance
vector<float> X(d,.0f); // your d-dimensional vector
cv::randn(X,m,cov); // <-
干杯!