我想显示基本矩阵,但出现如下错误:
错误:对“(cv::Mat)(int&,int&)”的调用不匹配

这是我的代码:

vector<Point2f> imgpts1,imgpts2;
    for(unsigned int i=0;i<matches.size();i++)
    {
        imgpts1.push_back(keypoint1[matches[i].trainIdx].pt);
        imgpts2.push_back(keypoint2[matches[i].trainIdx].pt);
    }
    //Mat fundamental=Mat(3,3,CV_32F);
    Mat fundamental=findFundamentalMat(imgpts1,imgpts2,FM_RANSAC,3,0.99);

cout<<"fundamental:"<<endl;
    for(int i=0;i<fundamental.rows;i++)
    {
        for(int j=0;j<fundamental.cols;j++)
        {
            cout<<fundamental(i,j)<<" ";
        }
        cout<<endl;
    }

最佳答案

我找到了解决问题的方法:

Mat fundamental=findFundamentalMat(imgpts1,imgpts2,FM_RANSAC,3,0.99);
    cout<<"fundamental="<<endl<<" "<<fundamental<<endl;

关于c++ - OpenCV:错误:没有匹配的 '(cv::Mat) (int&, int&)'调用,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/20929075/

10-13 08:25