如何使用opencv的mser()运算符
我使用的是opencv MSER类,无法编译使用()运算符。我不是C++专家,所以帖子问题在这里,希望有人能帮忙。 定义的MSER类包括()运算符:如何使用opencv的mser()运算符,opencv,overloading,operator-keyword,mser,Opencv,Overloading,Operator Keyword,Mser,我使用的是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&a
class CV_EXPORTS_W MSER : public CvMSERParams
{
public:
...
void operator()( const Mat& image,
CV_OUT vector<vector<Point> >& msers, const Mat& mask ) const;
};
问题在于这条线
vector<vector<Point> > contours;
矢量轮廓;
换成
vector<vector<cv::Point> > contours;
矢量轮廓;
问题是Cocoa框架中已经定义了一个点,因此编译器正在寻找一个不存在的运算符版本。该()运算符使MSER成为函子。但是我认为您的问题只是一些错误/缺少的头。由于此文件中的其他函数正确使用了opencv,我认为opencv头文件包含正确代码>
vector<vector<Point> > contours;
vector<vector<cv::Point> > contours;