如何在 C++ 中的 OpenCV 3.0.0、Visual Studio 2013 中检测关键点、计算描述符并匹配这些描述符?
Posted
技术标签:
【中文标题】如何在 C++ 中的 OpenCV 3.0.0、Visual Studio 2013 中检测关键点、计算描述符并匹配这些描述符?【英文标题】:How to detect keypoints, compute descriptors and match those descriptors in OpenCV 3.0.0, Visual Studio 2013, in C++? 【发布时间】:2016-03-06 11:21:53 【问题描述】:我看过 OpenCV 的文档。在那里,SurfFeatureDetector
、SurfDescriptorExtractor
和 BruteForceMatcher
正在被使用。
但是当我尝试我的代码时,它显示 -
错误:标识符“SurfFeatureDetector”无法识别。
其他两个情况相同。
在浏览了一些主题和论坛之后,我尝试包含一些头文件,例如 - #include <opencv2 nonfree="" features2d.hpp="">
和其他一些文件,但这些文件不存在。所以显示另一个错误说 -
错误:无法打开源文件“opencv2/nonfree/features2d.hpp”
在 OpenCV 3.0.0 中有没有其他方法可以做到这些?
【问题讨论】:
Nonfree module is missing in OpenCV 3.0的可能重复 【参考方案1】:我遇到了类似的问题,当我在系统上本地构建 Opencv 而不是使用预构建的库时,它得到了解决。您可以参考此线程在您的系统上构建 Opencv Where is the lib folder (or its replacement) in the current OpenCV?
在 opencv3.0 中,SURF/SIFT/BruteForceMatcher 已移至单独的 opencv_contrib 存储库,您可以下载它并更改 cmake 路径以便 Visual Studio 识别这些功能。虽然它确实是在我的系统上本地构建后出现的,没有做任何额外的修改。
本地构建后可以在以下路径中找到 build_folder/install/include/opencv2/features2d.hpp
【讨论】:
以上是关于如何在 C++ 中的 OpenCV 3.0.0、Visual Studio 2013 中检测关键点、计算描述符并匹配这些描述符?的主要内容,如果未能解决你的问题,请参考以下文章
在 OpenCv 3.0.0 中使用百分比随机读取一些图像 [关闭]