RANSAC实现需要一个随机数生成器,原来是用的gsl里面的rng,今天改用std::tr1中的C++标准rng吧:
#include
<
iostream
>
#include
<
random
>
#include
<
ctime
>

using
namespace
std;
using
namespace
std::tr1;

int
main(
int
argc,
char
*
argv[])
{
minstd_rand rng;
rng.seed(static_cast<unsigned long>(time(0)));
uniform_int<unsigned int> dist(0, 99);

for (int i=0; i<10 ; i++)
{
cout << dist(rng) << endl;
}

return 0;
}
这就是个最简单的例子,在0~99之间按均匀分布生成随机数。
#include
<
iostream
>
#include
<
random
>
#include
<
ctime
>

using
namespace
std;
using
namespace
std::tr1;
int
main(
int
argc,
char
*
argv[])
{
minstd_rand rng;
rng.seed(static_cast<unsigned long>(time(0)));
uniform_int<unsigned int> dist(0, 99);
for (int i=0; i<10 ; i++)
{
cout << dist(rng) << endl;
}
return 0;
}
这就是个最简单的例子,在0~99之间按均匀分布生成随机数。
本文介绍了一个使用C++标准库中的随机数生成器(minstd_rand)来为RANSAC算法生成随机数的例子。该示例展示了如何设置随机数生成器的种子,并利用uniform_int分配器在指定区间内生成均匀分布的整数。


373

被折叠的 条评论
为什么被折叠?



