gpt4 book ai didi

opencv - 在 OpenCV 中生成随机数矩阵

转载 作者:太空宇宙 更新时间:2023-11-03 20:55:57 25 4
gpt4 key购买 nike

我想知道如何生成任意给定大小的随机数矩阵,例如 2x4。矩阵应由范围内的带符号整数组成,例如 [-500, +500]

我已阅读 RNG 的文档,但我不确定我应该如何使用它。我也提到了这个question但这并没有为我提供我正在寻找的解决方案。

我知道这可能是一个愚蠢的问题,但我们将不胜感激。

最佳答案

如果你想让值均匀分布,你可以使用cv::randu

Mat1d mat(2, 4); // Or: Mat mat(2, 4, CV_64FC1);
double low = -500.0;
double high = +500.0;
randu(mat, Scalar(low), Scalar(high));

请注意,上限是唯一的,因此此示例表示 [-500, +500) 范围内的数据。


如果您希望值正态分布,您可以使用cv::randn

Mat1d mat(2, 4); // Or: Mat mat(2, 4, CV_64FC1);
double mean = 0.0;
double stddev = 500.0 / 3.0; // 99.7% of values will be inside [-500, +500] interval
randn(mat, Scalar(mean), Scalar(stddev));

这适用于最多 4 个 channel 的矩阵,例如:

Mat3b random_image(100,100);
randu(random_image, Scalar(0,0,0), Scalar(256,256,256));

关于opencv - 在 OpenCV 中生成随机数矩阵,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35526127/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com