我得到一个OpenCV Mat对象的地址。初始化对象后,我想打电话给下面的方法调用opencv方法时编译错误
Mat::Mat(const Mat& m, const Range* ranges)
但我得到的编译错误。我很久没有完成C++了。谁能帮忙?
CODE
void HelloWorld::callBack(jlong addrRgba, float dt) {
long lrgba = (long) mRgba;
Mat bgraMat = *(Mat*) lrgba;
Mat rgbMat = new Mat(&bgraMat, Range::all()); //cant get this to work
}
错误味精
error: no matching function for call to 'cv::Mat::Mat(cv::Mat*, cv::Range)'
什么'范围:: all'回报?看起来像是'Range'而不是'const Range *'。 – 2013-03-11 09:42:46
根据 http://opencv.willowgarage.com/documentation/cpp/basic_structures.html#range“静态方法Range :: all()返回一些特殊变量,意思是”整个序列“或”整个范围“,就像Matlab中的”:“或Python中的”...“OpenCV中的所有方法和函数都支持这个特殊的Range :: all()值” – asloob 2013-03-11 09:48:02
“错误告诉你你认为你需要什么函数;你正在传递一个指针和一个值。文档说你*实际上*需要一个对象和一个指针。 – 2013-03-11 09:53:40