PyCharm:为SIFT,SURF

时间:2018-05-22 12:27:47

标签: python-3.x opencv pycharm ubuntu-16.04 opencv-contrib

我想使用SIFT,SURF等功能。我在使用OpenCV 3.4.1的虚拟机上使用Ubuntu 16.04并使用PyCharm作为IDE。

我可以打开Pycharm,创建一个项目,转到文件 - 设置 - 项目解释器并下载我需要的模块。我已经下载了opencv-python和opencv-contrib-python。

但我仍然无法使用上述功能。

请帮忙。感谢。

2 个答案:

答案 0 :(得分:3)

使用OpenCV 3,非免费模块,即 SIFT和SURF ,已获得各自创作者的专利,已从默认的OpenCV安装中移出,进入opencv_contrib包。 opencv_contrib 中的实现默认情况下未安装,您需要在编译和安装OpenCV时明确启用它们以获取对它们的访问权限。

要访问OpenCV 2.4.X(默认情况下安装了这些实现的版本)中的原始SIFT和SURF实现,您需要下拉 opencv和来自GitHub的opencv_contrib存储库,然后从源代码编译和安装OpenCV3。

尽管我想为您提供执行此操作的步骤,但我还是要赞扬一个在线可用的教程。因此,请遵循此sweet tutorial - Install OpenCV 3.0 and Python 3.4+ on Ubuntu,您应该能够使用这些实现。另外,我建议查看ORB这是SIFT和SURF的更快,免费的替代方案,但不确定它是否符合您的目的。

如果您真的不想使用终端,请打开一个新项目,转到 - >

设置 - >项目 - >项目口译员 - > +

通过搜索找到所需的模块,您应该可以使用它们。

答案 1 :(得分:2)

我在尝试使用SIFT和SURF时遇到了与opencv相同的问题。我尝试了很多方法,包括添加opencv-contrib甚至使用Visual Studio编译opencv,但这些选项都不适合我。我建议使用anaconda并使用本文中显示的方法安装opencv。

How do I install Python OpenCV through Conda?

使用后安装

  

conda install -c menpo opencv

我无需使用“ set OPENCV_ENABLE_NONFREE”的烦人消息就可以使用

编辑: 我需要在树莓派上安装,Anaconda在树莓派上无法正常工作。我进行了一些研究,发现如果您运行以下命令,应该可以修复“ NON_FREE /受专利保护”错误。

  

pip install opencv-contrib-python == 3.4.0.12