关键点匹配学习入门:解决module 'cv2.cv2' has no attribute 'xfeatures2d' 问题

突然想起来想要复现关键点匹配算法,试试CV上运行这个大概能实现什么功能,心里有个印象

先找到大概的经验贴:opencv+python实现图像匹配----模板匹配、特征点匹配
发现博主的代码能拿来用,我先看看用在我的图片里面效果如何
运行报错
python3.8 用了很久,居然出现这个问题,我下意识想着应该是版本问题或者函数名变了

通过查阅这个资料发现了解决方法:
python3.6 windows安装opencv-contrib-python安装及提取图像的SIFT特征
发现已经有人出现过这种情况,原因是版本更新后python-opencv并没有包含SIFT的API

上面的我尝试后无法解决问题,想起来我的Anaconda里面还有一个环境安装了另一个版本的python,或许可以尝试以下,于是尝试在该环境里面安装opencv,看看旧版本 3.6 能不能用。

打开 Anaconda Prompt :

conda env list ➡ pip install opencv-contrib-python==4.1.0.25

上面的版本号是从这里看来的:
解决AttributeError: module ‘cv2.cv2’ has no attribute ‘xfeatures2d’
如果没有Anaconda,查看这个博客:
Anaconda环境下安装 opencv
Anaconda详细安装及使用教程(带图文)

问题在于,还是安装不了,很明显,版本不兼容,直接 pip install opencv-python也不行

于是,我打开 Anaconda Navigator 安装 opencv-python ,等了十多分钟,最后搞定了
接下来可以尝试调整参数,试试具体效果了。

具体介绍的帖子:
1. 学习笔记 2.2— SIFT特征匹配详细原理+Python实现【含实例
2. OpenCV成长之路(9):特征点检测与图像匹配

你可能感兴趣的:(python,opencv,算法,图像识别,计算机视觉)