我正在使用 opencv MSER 类,无法编译使用 () 运算符。我不是 C++ 专家,所以在这里发布问题,希望有人可以提供帮助。
MSER 类的定义包括 () 运算符:
class CV_EXPORTS_W MSER : public CvMSERParams
{
public:
...
void operator()( const Mat& image,
CV_OUT vector<vector<Point> >& msers, const Mat& mask ) const;
};
使用 MSER 类的代码片段:
Mat yuv;
vector<vector<Point> > contours;
cv::MSER mser;
mser(yuv, contours, cv::Mat());
在 mser() 行,xcode 给我这个错误:
No matching function for call to object of type 'cv::MSER'
最佳答案
问题出在这一行
vector<vector<Point> > contours;
将其更改为
vector<vector<cv::Point> > contours;
问题是 Cocoa 框架中已经定义了一个 Point,因此编译器正在寻找不存在的运算符版本。
关于opencv - opencv的mser的()运算符如何使用,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/11586499/