cvRandSetRange() cvRand()

cvRandSetRange()
修改CvRandState數據結構的參數內容,均勻分佈的話可以每個信道的上下界常態分佈可以修改每個通道的平均數,標準偏差.
cvRandSetRange(CvRandState數據結構,均勻分佈上界,均勻分佈下界,目標信道數據)
cvRandSetRange(CvRandState數據結構,常態分佈平均數,常態分佈標準偏差,目標信道數據)
其中CvRandState產生隨機向量的結構數組,cvRandInitCvRandState的初始化
cvRandInit( &rng_state,0, 1, 0xffffffff , CV_RAND_UNI )

初始化CvRandState資料結構,可以選定隨機分佈的種類,並給他定種子,有兩種情形

cvRandInit(CvRandState資料結構,隨機上界,隨機下界,均勻分佈的參數,指定分佈類型(CV_RAND_UNI))

cvRandInit(CvRandState資料結構,平均數,標準差,正態分佈參數,正態分佈類型(CV_RAND_NORMAL))

如:
CvRandState rng;
cvRandInit( &rng, 0, 1, -1, CV_RAND_UNI );
同時cvRandSetRange可以在不重新初始化rng狀態(CV_RAND_UNI/CV_RAND_NORMAL)的情況下改變已經初始化的rng範圍及相關參數。
例如:
cvRandSetRange( &rng, 0, 0.1, 0 );
rng.disttype = CV_RAND_NORMAL;//上邊設置rng爲CV_RAND_UNI狀態,現在改爲CV_RAND_NORMAL

cvRand(&RandState1,Image1);
cvRand()將CvMatIplImage數據結構隨機化,用被設定過的CvRandState數據結構來隨機.
cvRand(CvRandState數據結構,CvMatIplImage數據結構)

發佈了4 篇原創文章 · 獲贊 4 · 訪問量 4萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章