Reputation: 500
I'm using OpenCV 3.0.0 in ubuntu linux console.
I need to use SURF, but i've read that it's not included in the main OpenCV installation, so i've followed the opencv_contrib GIT steps:
1) I successfully cloned opencv_contrib in my ubuntu
2) I run "cmake -D OPENCV_EXTRA_MODULES_PATH=/home/ubuntu/opencv/opencv_contrib/modules/ /home/ubuntu/opencv/". No errors. Everything fine.
3)make -j5. I get exactly the same errors than when i didn't cloned opencv_contrib ( error: no matching function for call to ‘cv::xfeatures2d::SURF::SURF(int&)’)
I've read here that some versions of opencv_contrib dosen't work with opencv 3.0.0
Any idea if this is my problem? Am i doing something wrong?
Thank you in advance
Upvotes: 0
Views: 2140
Reputation: 39796
with opencv3.0, you can't make an instance of SURF or SIFT on the 'stack' anymore.
use:
#include "opencv2/xfeatures2d"
cv::Ptr<cv::xfeatures2d::SURF> surf = cv::xfeatures2d::SURF::create(...);
surf->detect(...);
and link: opencv_xfeatures2d300
(and i don't think, the mentionend github issue is related to your problem)
Upvotes: 1