objective-c - iOS 中的 CVSurf (OpenCV) 功能

我对 OpenCV 和 iOS 有疑问。我尝试在我的 Xcode 项目中实现 SURF,但是当我尝试执行它时,会出现以下错误消息:

OpenCV Error: The function/feature is not implemented (OpenCV was built without SURF support) in cvExtractSURF, file /Users/alexandershishkov/opencv2.4.3rc/opencv/modules/legacy/src/features2d.cpp, line 77 libc++abi.dylib: terminate called throwing an exception



我已经从 Github 上的官方存储库和本教程编译 OpenCV:http://docs.opencv.org/trunk/doc/tutorials/introduction/ios_install/ios_install.html#ios-installation

也许你有个主意……我迷路了。

谢谢你。

最佳答案

您需要在这里阅读我的自我回答问题:

openCV 2.4.3 iOS framework compiler trouble recognising some c++ headers

引起你注意的一点可能是 SURF 已被转移到非免费(因为它有许可问题)。所以你需要:

#include <opencv2/nonfree/nonfree.hpp>
#include <opencv2/legacy/compat.hpp>

并且可能
 cv::initModule_nonfree();

如果您使用的是较旧的 C 接口(interface)

如果您希望坚持使用开放许可的标准 openCV 库,可以使用 SURF 的替代方案...

https://stackoverflow.com/questions/14226095/

相关文章:

opencv - 使用Filestrage在OpenCV中保存和读取Mat向量的向量

opencv - Eclipse安装opencv 2.4.3库时出错

opencv - 在OpenCV中编译

image-processing - 使用 openCV 检测图案区域

opencv - OPEN CV程序执行错误?

matlab - 不裁剪的图像重映射

image-processing - 通过 find_contour 获取每个标志的 1 个轮廓并在

python - opencv-python:不是一个numpy数组

c# - 使用 SURF 匹配 OpenCV\EmguCV 中的图像

c++ - 负 RGB 值