| |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
-> 人工智能 -> opencv中的SIFT -> 正文阅读 |
|
[人工智能]opencv中的SIFT |
最近需要使用opencv里的SIFT算法 查了网上的教程,安装了opencv_contrib扩展模块 大致通过如下形式的语句调用: xfeatures2d::SIFT::create() 但实际使用时发现会报错,将SIFT改成SURF反而成功运行了。 查看opencv_contrib/modules/xfeatures2d/src后发现,里面只有surf.cpp,没有sift.cpp 翻遍网上教程都没找到解决方法,直到怀疑opencv的版本问题 我用的opencv+opencv_contrib都是3.4.15的 在opencv的github上查看了opencv_contrib的Releases https://github.com/opencv/opencv_contrib opencv_contrib/modules/xfeatures2d/src中的sift.cpp就消失了 翻看版本变更记录终于发现可能的原因
问题解决,下面总结解决方法: 方法1、使用3.4.10及此前版本的opencv+opencv_contrib,采用网上常见的教程调用方法调用SIFT #include<opencv2/xfeatures2d.hpp> using namespace cv; Ptr<Feature2D> sift = xfeatures2d::SIFT::create(); 方法2、若opencv及opecv_contrib是3.4.11及此后版本,直接在opencv主体调用SIFT即可 #include<opencv2/opencv.hpp> using namespace cv; Ptr<Feature2D> sift =SIFT::create(); 实际上区别仅在于: 3.4.10及此前版本中,SIFT在cv::xfeatures2d::SIFT中 3.4.11及此后版本中,SIFT在cv::SIFT中 |
|
|
上一篇文章 下一篇文章 查看所有文章 |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 | -2024/11/27 12:41:01- |
|
网站联系: qq:121756557 email:121756557@qq.com IT数码 |