opencv错误:错误:OpenCV(4.2.0)/io/opencv_contrib/modules/xfeatures2d/src/sift.cpp:1210:错误:(-213:功能/功能未实现)
Posted
技术标签:
【中文标题】opencv错误:错误:OpenCV(4.2.0)/io/opencv_contrib/modules/xfeatures2d/src/sift.cpp:1210:错误:(-213:功能/功能未实现)【英文标题】:opencv error: error: OpenCV(4.2.0) /io/opencv_contrib/modules/xfeatures2d/src/sift.cpp:1210: error: (-213:The function/feature is not implemented) 【发布时间】:2020-08-27 18:02:11 【问题描述】:Trace
在使用作为依赖项的开源软件库时,我遇到了一些 opencv 错误。我已经尝试了这里列出的一些建议:AttributeError: module 'cv2.cv2' has no attribute 'xfeatures2d' [Opencv 3.4.3]
到目前为止做了什么:
sudo pip 卸载 opencv-python
sudo pip 卸载 opencv-python
pip install opencv-python==3.4.2.16 pip install opencv-contrib-python==3.4.2.16
pip3 install opencv-contrib-python==4.2.0.32
调用“pip3 install opencv-contrib-python==4.2.0.32”后的最新错误是“OpenCV(3.4.4) ../opencv_contrib/modules/xfeatures2d/src/sift.cpp:1205: error: ( -213:功能/特性未实现)此算法已获得专利,在此配置中排除;设置 OPENCV_ENABLE_NONFREE CMake 选项并在函数'create'中重建库"
【问题讨论】:
【参考方案1】:pip3 安装 opencv-contrib-python==4.2.0
对于 Anaconda 用户来说只是这个而不是 pip
conda install -c menpo opencv
【讨论】:
使用“pip3 install opencv-contrib-python==4.2.0.32”,这似乎工作但现在得到** OpenCV(3.4.4)../opencv_contrib/modules/xfeatures2d/src /sift.cpp:1205: error: (-213: The function/feature is not implemented) 此算法已获得专利,不包含在此配置中;设置 OPENCV_ENABLE_NONFREE CMake 选项并在函数 'create' 中重建库 **【参考方案2】:首先是坏消息:你won't be able to get SIFT or SURF from pre-built binaries > 3.4.2。这是因为这些算法已获得专利。
好消息是该专利已于 2020 年 3 月 7 日到期。OpenCV 的开发者是aware of this issue,最终将构建新的二进制文件。
在此之前,您有 3 个选择:
-
等一下
在等待的时候先安装旧版本
使用 OpenCV 开发的免费算法之一
在启用 SIFT 和 SURF 的情况下自行编译 OpenCV
祝你好运
更新
开始
3.4.11 及更高版本(在 3.X 系列中) 4.4.0 及更高版本(在 4.X 系列中)现在包括 SIFT。这在Release Notes
中有说明【讨论】:
以上是关于opencv错误:错误:OpenCV(4.2.0)/io/opencv_contrib/modules/xfeatures2d/src/sift.cpp:1210:错误:(-213:功能/功能未实现)的主要内容,如果未能解决你的问题,请参考以下文章
cv2.error: OpenCV(4.2.0) /io/opencv/modules/imgproc/src/color.cpp:182: error: