В моем previous question я узнал, что мне пришлось установить opencv-contrib
, чтобы использовать OpenCV Python с внешними модулями, такими как SIFT. Однако в моем проекте я хочу использовать ORB или что-то подобное. cv2.ORB()
не работает, равно cv2.xfeatures2d.ORB_create()
или любые другие агглютинации команд.OpenCV не может найти ORB
Как известно, OpenCV имеет довольно плохую документацию для своего Python API.
Как использовать ORB для соответствия функциям в OpenCV Python?
MWE:
#!/usr/bin/python2.7
import numpy as np
import cv2
from matplotlib import pyplot as plt
img = cv2.imread('smallburger.jpg',0)
# Initiate STAR detector
orb = cv2.ORB()
# find the keypoints with ORB
kp = orb.detect(img,None)
# compute the descriptors with ORB
kp, des = orb.compute(img, kp)
# draw only keypoints location,not size and orientation
img2 = cv2.drawKeypoints(img,kp,color=(0,255,0), flags=0)
plt.imshow(img2),plt.show()
выход CLI:
Traceback (most recent call last):
File "./mwe.py", line 9, in <module>
orb = cv2.ORB()
AttributeError: 'module' object has no attribute 'ORB'