【发布时间】:2014-02-21 07:38:21
【问题描述】:
我想播种 randn 函数,但我做不到。
srand(time(NULL));
Mat mymat = Mat::zeroes(1024,1024,CV_32F);
randn(mymat,0,1);
它不应该给我随机的垫子,命名为mymat,谁的mean = 0,和variance = 1?但是,它在每次运行时都会给出相同的mymat。
这是randn 的链接,它声称 srand 可以工作。
我尝试给出不同的数字而不是时间(NULL),但都具有相同的输出随机数。我从另一台机器上检查了同样的东西,它与第一台机器给出了相同的输出。所以播种不起作用。
谢谢,
【问题讨论】:
-
您提供的链接说您应该调用
srand()对于该示例实现,而不是srand()将初始化randn()一般 .不幸的是,它并没有告诉您初始化randn()的保证方法。
标签: c++ opencv random random-seed