opencv::meanStdDev 带有矢量<vector<double>>
Posted
技术标签:
【中文标题】opencv::meanStdDev 带有矢量<vector<double>>【英文标题】:opencv::meanStdDev with vector<vector<double>> 【发布时间】:2017-05-24 21:40:07 【问题描述】:我想使用cv::meanStdDev
计算二维向量的均值和标准差。但它不断出错。这是我的代码示例
vector<vector<uchar>> v = 1,2,3, 4,5,6;
Scalar mean, stddev;
meanStdDev(v, mean, stddev);
OpenCV Error: Assertion failed (0 <= i && i < (int)vv.size()) in cv::_InputArray::getMat_, file C:\build\master_winpack-build-win64-vc14\opencv\modules\core\src\matrix.cpp, line 1244
如果我将其更改为一维向量。它的工作原理
vector<uchar> v = 1,2,3;
Scalar mean, stddev;
meanStdDev(v, mean, stddev);
文档指出cv::meanStdDev
可以将vector<vector<_T>>
作为 InputArray。我在这里做错了什么?非常感激。
【问题讨论】:
错误是什么? 我更新了帖子中的错误。 【参考方案1】:您的代码/帖子中没有任何内容表明该错误实际发生的位置。尝试将调用包装在 try catch 块中,当您在调试器中查看异常时,这可能会提供更多信息。
【讨论】:
这似乎是 OpenCV 的 getMat_() 例程中的一个问题。根据 OpenCV 的文档 [docs.opencv.org/2.4/modules/core/doc/… a vector> 应该可以工作,正如您所说的那样。以上是关于opencv::meanStdDev 带有矢量<vector<double>>的主要内容,如果未能解决你的问题,请参考以下文章