我使用opencv 2.4.3使用以下代码执行向量到矩阵转换:
struct Component { cv::Rect Box; double area; double circularity; } int main ( ... ) { cv::vector < Component > components; cv::Mat componentMat ( components,true ); std::cout << componentMat; return 0; }
但是它发出一个错误,说:
OpenCV Error: Unsupported format or combination of formats() in unknown function,file ...\opencv\modules\core\src\out.cpp,line 111
我在这里做错了什么?有没有其他方法将此向量转换为矩阵形式?谢谢.
解决方法
在
the documentation中,有一个Mat构造函数的引用,它们表示支持哪种类型的向量:
“The constructor can handle arbitrary types,for which there is
properly declared DataType,i.e. the vector elements must be
primitive numbers or uni-type numerical tuples of numbers. Mixed-type
structures are not supported,of course.”