2014-10-03 50 views
0

所以我试图找出什么是这种等价的:的OpenCV - OpenCV的垫相当于提升矩阵的ARRAY_TYPE

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

但使用OpenCV的垫类?

我想用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()’ 

我试图环绕两个不同的对象我的头,但由于某些原因,甚至阅读文档不提供如何正确解决此问题的见解。

回答

1

而不是matrix_data.size()使用matrix_data.total()size()函数返回类型Size,而它看起来只是查找由total()返回的元素总数。

+0

谢谢。这是我正在寻找的。 – 2014-10-10 19:22:26