c++ - OpenCV - OpenCV Mat 等效于 boost 矩阵 array_type

标签 c++ opencv boost matrix

所以我想弄清楚这等价于什么:

boost::numeric::ublas::matrix<T>::array_type& matrix_data = prev_matrix.data();

但使用 OpenCV Mat 类?

我正在尝试使用 cv::Mat 来替换最初使用 boost 矩阵的现有代码库,这部分让我有些困惑。

我有以下内容:

cv::Mat& matrix_data(prev_matrix); <--prev_matrix is also a cv::Mat now

for (unsigned int i = 0; i < matrix_data.size(); ++i) <--- line that has an error
{
    matrix_data[i] = value;
}

但我收到以下错误:

error: no match for ‘operator<’ in ‘i < cv::Mat::MSize::operator()() const()’

我正在努力思考这两个不同的对象,但出于某种原因,即使阅读文档也无法深入了解如何正确解决此问题。

最佳答案

使用 matrix_data.total() 代替 matrix_data.size()size() 函数返回类型 Size,而您似乎只是在寻找 total() 返回的元素总数。

关于c++ - OpenCV - OpenCV Mat 等效于 boost 矩阵 array_type,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26185589/

相关文章:

C++:Boost 文件系统 copy_file 出错

c++ - std::variant 与里面的 std::nullptr_t 比较

c++ - lld-link错误编译 Chrome 与ffmpeg附加调用

python - 为什么这个使用 openCV 的简单 python 脚本不能工作?

python - python套接字腌制numpy数据不显示

python - 如何使用 OpenCV 从网络摄像头读取视频?

c++ - unordered_map,无匹配函数调用错误

c++ - 查找失败时 boost string_algo 返回值

c++ - 是否可以在 googletest 的 Predicate Formatter 中使用 ASSERT_NEAR

javascript - 在 C++ 代码中处理 HTML 按钮单击事件