高版本opencv无法使用sift

AttributeError: module ‘cv2.cv2’ has no attribute ‘xfeatures2d’

最近学习图像处理的知识需要用到sift特征,但是憨憨的安装了最新版的opencv以后,调用sift的时候出现了以下错误:

AttributeError: module 'cv2.cv2' has no attribute 'xfeatures2d'

出错的原因是高版本中sift被删掉了,我原来安装的是opencv-contrib-python==3.4.2.17版本,于是乎降了一个版本试试,在终端:

pip install opencv-contirb-python==3.4.2.16

当然如果还没有安装opencv的话可以用pip先安装一下,contrib库多是一些不稳定或者拓展的库函数。这里版本好像不一定非要对应,因为我用的是3.4.2.17版的,后面发现是可以成功调用sift的。

pip install opencv-python==3.4.2.17

再一试:
高版本opencv无法使用sift_第1张图片
成功了!

你可能感兴趣的:(python,opencv)