我已经opencv
用这个命令为 Anaconda 安装了:
conda install opencv
当我python3.6
在终端中运行时,我可以导入cv2
有任何问题的模块。
所以opencv
已经成功安装了 Anaconda 的路径。
Python 3.6.1 |Anaconda custom (64-bit)| (default, May 11 2017, 13:09:58)
[GCC 4.4.7 20120313 (Red Hat 4.4.7-1)] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> import cv2
但是当我导入cv2
时python3.5
:
Python 3.5.3 (default, Jan 19 2017, 14:11:04)
[GCC 6.3.0 20170118] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> import cv2
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
ImportError: No module named 'cv2'
所以我不能opencv
在系统的python中使用。
这就是问题所在;如何cv2
在系统的 python 中导入 Anaconda 的模块(尤其是)?
如何创建从 Anaconda 模块到系统 python 路径的符号链接?
那是行不通的,它与模块搜索路径无关。
假设您设法设置了正确的模块搜索路径或将模块路径链接
cv2
到系统 Python 的当前模块搜索路径中的某个位置。现在 Python 3.5.3 将尝试加载为 Python 3.6.1 编译的本机模块。不幸的是,不同的 Python 版本具有不同的 ABI(应用程序二进制接口),这意味着为一个 Python 版本编译的本机模块往往无法在不同的 Python 版本中工作。Python 版本之间的差异越大,这种情况就越有可能发生。版本字符串中点后数字的更改已被视为“重大”更改。您需要再次编译和安装该模块以获得所需的 Python 版本和安装。请参阅如何在 Ubuntu 16.04 LTS 上为 Python 3.5 安装 OpenCV 3.1?
将 Anaconda 的站点包添加到 PYTHONPATH:
(您必须适应您的 Anaconda 安装和 python 版本)。
编辑:我用我在 Anaconda 之外没有的 numpy 进行了测试。不能保证所有库都能正常工作,因为它们可能是特定于版本的。