问题
I am using OpenCV version 3.2.0 and xfeatures2d is not found on this. Is there any way I can install this to the same version of OpenCV?
>>> import cv2
>>> help(cv2.xfeatures2d)
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
AttributeError: 'module' object has no attribute 'xfeatures2d'
回答1:
I encountered the same problem. SURF and SIFT are not a part of the main repo module of OpenCV. Instead, they are available in opencv_contrib folder. The README file of opencv_contrib gives clear instructions on how to install the modules in opencv_contrib.
cd <opencv_build_directory>
cmake -DOPENCV_EXTRA_MODULES_PATH=<opencv_contrib>/modules <opencv_source_directory>
make -j5
Also note that if you are using OpenCV 3.2, these modules will be installed on Python3.
回答2:
http://www.pyimagesearch.com/2015/06/22/install-opencv-3-0-and-python-2-7-on-ubuntu/ This link has all the steps required to install opencv 3 along with opencv_contrib.
In case the xfeatures2d doesn't work even after finishing all the steps mentioned in the above link, then clone https://github.com/opencv/opencv_contrib.git for opencv_contrib.
来源:https://stackoverflow.com/questions/42623833/xfeatures2d-not-found-in-opencv-on-ubuntu