openCV python代码中的detectAndComputer方法周围的错误

时间:2019-02-02 14:01:13

标签: python opencv sift

我正在VS Code中使用python 3.6.3,opencv-contrib-python-3.3.1.11。我正在尝试运行以下代码:

import cv2
image1 = cv2.imread('PATH.image1.jpg',0)
image2 = cv2.imread('PATH.image2.jpg',0)

sift = cv2.xfeatures2d.SIFT_create()

kp1, des1 = sift.detectAndComputer(image1,None)
kp2, desc2 = sift.detectAndComputer(image2,None)

我已经阅读了有关openCV早期版本和后来使用户安装opencv contrib的更高版本的SIFT的更改。我的错误不是在create周围,而是在detectAndComputer方法周围。这是错误:

Exception has occurred: AttributeError
'cv2.xfeatures2d_SIFT' object has no attribute 'detectAndComputer'

2 个答案:

答案 0 :(得分:0)

正确的呼叫是kp1, des1 = sift.detectAndCompute(image1,None),而不是detectAndComputer

有关此过程和代码语法here

的一些详细信息

答案 1 :(得分:0)

应该是sift.detectAndCompute而不是sift.detectAndCompute(r)