我早些时候能够运行相同的Python脚本,不确定为什么我从上周开始出现这个错误。我重新安装了opencv和opencvcontrib,但仍然没有运气。
这是我的代码:
from future import print_functionimport
cv2 image = cv2.imread("IMG_3992.jpg")
gray = cv2.cvtColor(image, cv2.COLOR_BGR2GRAY)
cv2.imshow("Original", image)
detector = cv2.AKAZE_create() (kps, descs) = detector.detectAndCompute(gray, None)
print("keypoints: {}, descriptors: {}".format(len(kps), descs.shape))
cv2.drawKeypoints(image, kps, image, (0, 255, 0))
cv2.imshow("Output", image)
cv2.imwrite('AKZ_3992.jpg',image) cv2.waitKey(0)
你能帮我吗?提前谢谢。。
花絮。。
您说过:Python 2.7.11 >>> cv2.__version__ '2.4.12'
因此,您正在运行OpenCV 2.4.12,但cv2.AKAZE_create()
属于添加到OpenCV 3.0及更高版本中的一组功能。在此版本之前,它不存在。
因此,解决方案是升级您的OpenCV版本。
进一步阅读:加速的快速显式扩散非线性尺度空间中的特征