opencv-随机数
来源:互联网 发布:黑色星期五海淘 知乎 编辑:程序博客网 时间:2024/05/22 15:07
1.OpenCV中的随机数生成类RNG,其定义在core.hpp中。
<span style="font-size:18px;">class CV_EXPORTS RNG{public: enum { UNIFORM=0, NORMAL=1 }; RNG(); RNG(uint64 state); //! updates the state and returns the next 32-bit unsigned integer random number unsigned next(); operator uchar(); operator schar(); operator ushort(); operator short(); operator unsigned(); //! returns a random integer sampled uniformly from [0, N). unsigned operator ()(unsigned N); unsigned operator ()(); operator int(); operator float(); operator double(); //! returns uniformly distributed integer random number from [a,b) range int uniform(int a, int b); //! returns uniformly distributed floating-point random number from [a,b) range float uniform(float a, float b); //! returns uniformly distributed double-precision floating-point random number from [a,b) range double uniform(double a, double b); void fill( InputOutputArray mat, int distType, InputArray a, InputArray b, bool saturateRange=false ); //! returns Gaussian random variate with mean zero. double gaussian(double sigma); uint64 state;};</span>
2.CvRNG,其定义在types_c.h中。
CvRNG cvRNG( int64 seed=-1 ); 初始化随机数生成器状态
seed : 64-bit 的值用来初始化一个随机序列。函数 cvRNG 初始化随机数生成器并返回其状态。指向这个状态的指针可以传递给函数 cvRandInt, cvRandReal 和 cvRandArr . 在通常的实现中使用一个 multiply-with-carry generator 。
cvGetRows( const CvArr* arr, CvMat* submat,int start_row, int end_row, int delta_row CV_DEFAULT(1));
void cvRandArr( CvRNG* rng, CvArr* arr, int dist_type, CvScalar param1, CvScalar param2 ); 用随机数填充数组并更新 RNG 状态。
3.srand,其定义在stdlib.h中。unsigned cvRandInt( CvRNG* rng ); 返回 32-bit 无符号整型并更新 RNG。
double cvRandReal( CvRNG* rng ); 返回浮点型随机数并更新 RNG。
void srand(unsigned seed),srand函数是随机数发生器的初始化函数。
srand(time(0));Srand是种下随机种子数,你每回种下的种子不一样,用Rand得到的随机数就不一样。为了每回种下一个不一样的种子,所以就选用Time(0),Time(0)是得到当前时时间值(因为每时每刻时间是不一样的了)。
int rand(void),rand函数用来产生随机数,当然是伪随数。
srand((uchar)time(NULL)); //生成0~5之间的随机数for (int i = 0; i < 10; i++){cout << rand() % 6 << ' ';}cout << endl;RNG rng((uchar)time(NULL));for (int i = 0; i < 10; i++){cout << rng.uniform(0,5) << ' ';}cout << endl;
参考文献
【1】http://blog.csdn.net/xiahouzuoxin/article/details/38298269
【2】http://blog.163.com/zhuandi_h/blog/static/180270288201278101357186/
0 0
- OPENCV 随机数
- opencv-随机数
- opencv 随机数
- OpenCV产生随机数
- OpenCV函数生成随机数
- opencv产生随机数
- OpenCV随机数生成
- OpenCV 随机数生成
- opencv 取随机数
- opencv随机数的产生
- OpenCV的随机数发生器
- opencv随机数发生器RNG
- opencv 随机数使用
- OpenCV 随机数生成器 RNG
- OpenCV中cvRNG基本随机数
- OpenCV中随机数的生成
- opencv中RNG生成随机数
- opencv中的随机数生成器RNG
- 图片超出撑破DIV处理技巧
- 多个列表直接在一个页面内的切换,简短的JS代码如下
- 旁路电容/去耦电容
- 搭建基于ROS的导航系统
- MVC项目中与后台协调写出的关于表格数据读取、修改、删除、提交、新增数据的JS事件
- opencv-随机数
- Spring框架运用ajaxFileUpload
- thinkphp常用功能
- 通过距离感应器获取实际距离[FAQ04538][Sensor]java层获得P_sensor距离传感器当前真实值,不止0,1
- JVM内存区域模型
- 根据两点经纬度计算距离
- 一些算法题
- GMM:高斯混合模型的数学推导笔记(上)
- RecyclerView