我试图用matchShapes方法匹配两个轮廓,但是我总是断言失败。
我知道这一定与错误的Mat格式有关,但我似乎无法解决。
findContours运行得很好:
vector<vector<cv::Point> > contours;
cv::findContours(incomingimage,
contours,
CV_RETR_EXTERNAL,
CV_CHAIN_APPROX_SIMPLE);
vector<vector<cv::Point> > contourstwo;
cv::findContours(incomingimagetwo,
contourstwo,
CV_RETR_EXTERNAL,
CV_CHAIN_APPROX_SIMPLE);
我从这些方法中得到了很好的输出,但是
matchShapes(Mat(contours), Mat(contourstwo), CV_CONTOURS_MATCH_I3, 0);
退货
OpenCV错误:断言失败
我在这里有点黑暗。
任何帮助将不胜感激。
非常感谢你。
最佳答案
我也是openCV的初学者,但我现在想出了解决方法
(经过多次反复试验)。
请试试这个
matchShapes(contours[0], contourstwo[0], CV_CONTOURS_MATCH_I3, 0);
关于opencv - OpenCV || matchShapes findContours断言失败,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9368418/