简体   繁体   English

opencv :: meanStdDev与向量 <vector<double> &gt;

[英]opencv::meanStdDev with vector<vector<double>>

I want to calculate the mean and stdDev of a 2d vector using cv::meanStdDev . 我想使用cv::meanStdDev计算2d向量的均值和cv::meanStdDev But it keeps getting error. 但是它总是出错。 Here is an example of my code 这是我的代码示例

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

If I change it to 1d vector. 如果我将其更改为1d向量。 It works 有用

vector<uchar> v = {1,2,3};
Scalar mean, stddev;
meanStdDev(v, mean, stddev);

The document states that cv::meanStdDev can take vector<vector<_T>> as InputArray. 该文档指出cv::meanStdDev可以将vector<vector<_T>>用作InputArray。 What did I do wrong here? 我在这里做错了什么? Much appreciated. 非常感激。

Nothing in your code/post indicates where that error actually occurs. 您的代码/帖子中没有任何内容指示该错误实际发生的位置。 Try wrapping the call in a try catch block, that may provide more information when you look at the exception in the debugger. 尝试将调用包装在try catch块中,当您在调试器中查看异常时,该块可能会提供更多信息。

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM