SIFT OpenCV 官方文档:

https://docs.opencv.org/master/da/df5/tutorial_py_sift_intro.html

https://opencv-python-tutroals.readthedocs.io/en/latest/py_tutorials/py_feature2d/py_sift_intro/py_sift_intro.html

AttributeError: module 'cv2' has no attribute 'SIFT'

在用python使用opencv进行SIFT时候,编译出现这样问题:

Traceback (most recent call last):
File "F:\image\test.py", line 7, in <module>
sift = cv2.SIFT()

  

出错代码如下:

import cv2
import numpy as np img = cv2.imread('home.jpg')
gray= cv2.cvtColor(img,cv2.COLOR_BGR2GRAY) sift = cv2.SIFT()
kp = sift.detect(gray,None) img=cv2.drawKeypoints(gray,kp)

  

原因:opencv将SIFT等算法整合到xfeatures2d集合里面了。变更后写法如下:

import cv2
import numpy as np img = cv2.imread('home.jpg')
gray= cv2.cvtColor(img,cv2.COLOR_BGR2GRAY) sift = cv2.xfeatures2d.SIFT_create()
kp = sift.detect(gray,None) img=cv2.drawKeypoints(gray,kp,img)
cv2.imwrite('sift_keypoints.jpg',img)

  

然后又出现错误:

Traceback (most recent call last):
File "F:\image\test.py", line 7, in <module>
sift = cv2.xfeatures2d.SIFT_create()
AttributeError: module 'cv2' has no attribute 'xfeatures2d'

  

再尝试解决:

出错原因:

**原因:**3.X以后OpenCv只包含部分内容,需要神经网络或者其他的函数需要导入opencv_contrib

解决方法:

pip install opencv-contrib-python

注意: 
如果已经安装OpenCv2,则需要先卸载pip uninstall opencv-python再安装

参考资料:https://pypi.python.org/pypi/opencv-contrib-python

再次出错:

cv2.error: OpenCV(3.4.3) C:\projects\opencv-python\opencv_contrib\modules\xfeatures2d\src\sift.cpp:1207: 
error: (-213:The function/feature is not implemented) This algorithm is patented and is excluded in this configuration;
Set OPENCV_ENABLE_NONFREE CMake option and rebuild the library in function 'cv::xfeatures2d::SIFT::create'

  

问题待解决。。。

------------------------------

感谢,按照一楼大神的方法,问题已解决。

版本的问题,直接在终端pip install opencv-contrib-python和你一样的问题,后来重新装了opencv-contrib-python 3.3版本,可以正常使用。
具体来说就是
第一步,卸载原有的opencv-contrib-python
pip3 uninstall opencv-contrib-python(我使用的是python3.6.5)
如果你使用的是python2的版本,使用pip uninstall opencv-contrib-python
第二步,安装新的版本
pip3 install --user opencv-contrib-python==3.3.0.10我使用的是python3.6.5)
如果你使用的是python2的版本,使用pip install --user opencv-contrib-python==3.3.0.10。
如果出现了readtimeouterror就关掉terminal重新输入几次。因为下载源在外网,可能不稳定。

Introduction to SIFT (Scale-Invariant Feature Transform)的更多相关文章

  1. SIFT(Scale-invariant feature transform) & HOG(histogram of oriented gradients)

    SIFT :scale invariant feature transform HOG:histogram of oriented gradients 这两种方法都是基于图像中梯度的方向直方图的特征提 ...

  2. Computer Vision_33_SIFT:LIFT: Learned Invariant Feature Transform——2016

    此部分是计算机视觉部分,主要侧重在底层特征提取,视频分析,跟踪,目标检测和识别方面等方面.对于自己不太熟悉的领域比如摄像机标定和立体视觉,仅仅列出上google上引用次数比较多的文献.有一些刚刚出版的 ...

  3. Computer Vision_33_SIFT:Remote Sensing Image Registration With Modified SIFT and Enhanced Feature Matching——2017

    此部分是计算机视觉部分,主要侧重在底层特征提取,视频分析,跟踪,目标检测和识别方面等方面.对于自己不太熟悉的领域比如摄像机标定和立体视觉,仅仅列出上google上引用次数比较多的文献.有一些刚刚出版的 ...

  4. Image Processing and Computer Vision_Review:Local Invariant Feature Detectors: A Survey——2007.11

    翻译 局部不变特征探测器:一项调查 摘要 -在本次调查中,我们概述了不变兴趣点探测器,它们如何随着时间的推移而发展,它们如何工作,以及它们各自的优点和缺点.我们首先定义理想局部特征检测器的属性.接下来 ...

  5. Paper | Recovering Realistic Texture in Image Super-resolution by Deep Spatial Feature Transform

    目录 故事背景 空域特征转换 超分辨率网络 发表在2018年CVPR. 摘要 Despite that convolutional neural networks (CNN) have recentl ...

  6. SIFT算法详解(转)

    http://blog.csdn.net/zddblog/article/details/7521424 目录(?)[-] 尺度不变特征变换匹配算法详解 Scale Invariant Feature ...

  7. 【转】 SIFT算法详解

    尺度不变特征变换匹配算法详解Scale Invariant Feature Transform(SIFT)Just For Fun zdd  zddmail@gmail.com 对于初学者,从Davi ...

  8. [Computer Vision] SIFT特征学习笔记

    SIFT(Scale Invariant Feature Transform),尺度空间不变特征,目前手工设计的最好vision特征. 以下是学习http://blog.csdn.net/zddblo ...

  9. SIFT

    简介 SIFT(scale invariant feature transform)——尺度不变特征转换,用来检测和描述局部特征,运用范围包括object recognition(目标检测), rob ...

随机推荐

  1. Si4455 低电流 Sub-GHz收发器

    Silicon Labs 的 Si4455 是易于使用的低电流 Sub-GHz EZRadio® 收发器.覆盖所有主要波段,结合了即插即用的简单性和需要处理各种不同应用的灵活性.紧凑的 3 mm x ...

  2. System.Threading.Tasks.Task 任务引起的IIS应用程序池崩溃

    转载:http://www.cnblogs.com/aaa6818162/p/4421305.html 问题现象 IIS应用程序池崩溃(Crash)的特征如下: 1. 从客户端看,浏览器一直处于连接状 ...

  3. linux 多线程查看工具

    参考: http://www.oschina.net/translate/command-line-tools-to-monitor-linux-performance?cmp&p=1 htt ...

  4. 1Password:让一个密码记住所有密码

    在这个信息大爆炸的时代,我们总有着各种各样的缘由,接触到各种各样的网站和爱屁屁,随之而来的,产生了大量的账号和密码. 每次新注册一个网站的时候,总会纠结一番:到底是新编一个密码呢?还是沿用之前的那一个 ...

  5. Silverlight:《Pro Silverlight5》读书笔记 之 Layout

    Layout The Layout Containers The Panel Background By default, the Background of a layout panel is se ...

  6. MRIcro tutorial -- mricro 教程

      MRIcro tutorial 参考网址:http://www.mccauslandcenter.sc.edu/mricro/mricron/ http://www.cabiatl.com/mri ...

  7. 优化png图片的历程

    一.使用yslow一个tool  找到一个叫做smush的工具,点击就可以进入工具的页面. 然后你就能够压缩,下载压缩后的图片. 可是终于我还是没有选择这个方案.由于压缩的图片大小还是太大了,我认为还 ...

  8. Js的在线代码编辑器:CodeMirror

    github地址:https://github.com/codemirror/CodeMirror/tree/master/demo 里面包含需要的js.css文件以及大量的示例 官网:https:/ ...

  9. 数学图形(1.40)T_parameter

    不记得在哪搞了个数学公式生成的图形. vertices = t = to (*PI) r = 2.0 x = r*(*cos(t) - cos(*t)) y = r*(*sin(t) - sin(*t ...

  10. Android Studio调试报错am startservice

    今天下载了一个Android studio2.3.0版本,想调试一下自己的一个项目,但是发现项目编译运行正常,但是一调试就报错: 09/14 16:19:13: Launching app$ adb ...