OpenCV 随机数生成
2012-12-11 09:31
218 查看
参考:
http://www.opencv.org.cn/index.php/Cxcore%E6%95%B0%E7%BB%84%E6%93%8D%E4%BD%9C#.E9.9A.8F.E6.9C.BA.E6.95.B0.E7.94.9F.E6.88.90
RNG
初始化随机数生成器状态CvRNG cvRNG( int64 seed=-1 );
seed64-bit 的值用来初始化一个随机序列
函数 cvRNG 初始化随机数生成器并返回其状态。指向这个状态的指针可以传递给函数 cvRandInt, cvRandReal 和 cvRandArr . 在通常的实现中使用一个 multiply-with-carry generator 。
RandArr
用随机数填充数组并更新 RNG 状态void cvRandArr( CvRNG* rng, CvArr* arr, int dist_type, CvScalar param1, CvScalar param2 );
rng被 cvRNG 初始化的 RNG 状态.arr输出数组dist_type分布类型:
CV_RAND_UNI - 均匀分布CV_RAND_NORMAL - 正态分布 或者 高斯分布param1分布的第一个参数。如果是均匀分布它是随机数范围的闭下边界。如果是正态分布它是随机数的平均值。param2分布的第二个参数。如果是均匀分布它是随机数范围的开上边界。如果是正态分布它是随机数的标准差。
函数 cvRandArr 用均匀分布的或者正态分布的随机数填充输出数组。在下面的例子中该函数被用来添加一些正态分布的浮点数到二维数组的随机位置。
RandInt
返回 32-bit 无符号整型并更新 RNGunsigned cvRandInt( CvRNG* rng );
rng被 cvRNG 初始化的 RNG 状态,被 RandSetRange (虽然, 后面这个函数对我们正讨论的函数的结果没有什么影响)随意地设置。
函数 cvRandInt 返回均匀分布的随机 32-bit 无符号整型值并更新 RNG 状态。它和 C 运行库里面的 rand() 函数十分相似,但是它产生的总是一个 32-bit 数而 rand() 返回一个 0 到 RAND_MAX (它是 2**16 或者 2**32, 依赖于操作平台)之间的数。
该函数用来产生一个标量随机数,例如点, patch sizes, table indices 等,用模操作可以产生一个确定边界的整数,人和其他特定的边界缩放到 0.. 1可以产生一个浮点数。下面是用 cvRandInt 重写的前一个函数讨论的例子:
RandReal
返回浮点型随机数并更新 RNGdouble cvRandReal( CvRNG* rng );
rng被 cvRNG 初始化的 RNG 状态
函数 cvRandReal 返回均匀分布的随机浮点数,范围在 0..1 之间 (不包括 1 )。
相关文章推荐
- Opencv-rng随机数生成的使用
- OpenCV 随机数生成
- OpenCV中随机数的生成
- OpenCV中的随机数生成
- OpenCV中的随机数生成
- OpenCV随机数生成
- 数组的生成及其随机数【OpenCV学习笔记2】
- Chance – 功能强大的 JavaScript 随机数生成类库
- 生成[iLow, iHigh]之间的无重复的iCount个int型随机数
- 用haskell生成一个随机数的列表
- OpenCV_读取文件夹下的图片生成视频文件
- c#生成随机数
- opencv生成素描图c++代码实例及运行结果
- opencv生成彩色图c++代码实例及运行结果
- 使用boost库生成 随机数 随机字符串
- 【opencv】openCV生成标定相机用的黑白棋盘
- OpenCV由汉字生成图片(透明)----可以对抗论文查重!!!
- 【OpenCV入门教程之七】 玩转OpenCV源代码:生成OpenCV工程解决方案与OpenCV源码编译
- C\C++ 生成各位数不相等的随机数
- Lua 随机数生成问题