web-dev-qa-db-fra.com

Opencv 3.0 - l'objet module n'a pas d'attribut 'xfeatures2d'

Je suis passé d'OpenCV 2.4.9 à 3.0 pour utiliser les fonctions drawMatches et drawMatchesKnn. J'ai appris qu'il ne vient pas avec des algorithmes non libres comme SIFT, SURF. J'ai donc installé opencv_contrib à partir de https://github.com/Itseez/opencv_contrib en suivant les étapes

cmake -DOPENCV_EXTRA_MODULES_PATH=/home/zealous/Downloads/opencv_contrib-master/modules /usr/local ..

make -j5

make install

J'ai aussi recoupé les modules de opencv , xfeatures2d était là. Puis quand j'ai essayé de faire

>>> import cv2
>>> help(cv2.xfeatures2d)

Cela me donne l'erreur suivante

Traceback (most recent call last):
  File "<pyshell#5>", line 1, in <module>
    help(cv2.xfeatures2d)
AttributeError: 'module' object has no attribute 'xfeatures2d'

Qu'est-ce que je fais mal ici. Juste pour info que j'utilise la version bêta d'OpenCV 3.0. OpenCV a-t-il désactivé python wrappers pour xfeatures2d ou je ne l'ai pas installé correctement?

29
Pawan

J'écris une réponse à ma propre question, car cela pourrait aider quelqu'un à régler le même problème.

Le paquet opencv que j'essayais a été téléchargé depuis opencv site officiel. Je viens de télécharger le dernier code de github pour opencv et je l'ai installé. Cela fonctionne bien maintenant avec opencv-contrib.

5
Pawan