python cv2找不到但已安装

时间:2016-02-19 17:26:27

标签: python python-2.7 opencv homebrew

我在opencv2 python lib上安装了cv2

pip install cv2

我也使用

在我的机器上安装了opencv

brew install opencv

它安装正确,如果我再尝试再次运行,我会

Requirement already satisfied (use --upgrade to upgrade): cv2 in /Library/Python/2.7/site-packages

然而,当我尝试导入它时,我收到一个错误,即它找不到。为了简单起见,我将通过终端运行python:

Python 2.7.10 (default, Jul 14 2015, 19:46:27)
[GCC 4.2.1 Compatible Apple LLVM 6.0 (clang-600.0.39)] on darwin
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
>>>

3 个答案:

答案 0 :(得分:0)

在Mac上使用vector安装opencv时,还需要完成一些其他步骤。

创建指向已编译库的符号链接

brew

然后,更新您的ln -s /usr/local/Cellar/opencv/<opencv_version>/lib/python2.7/site-packages/cv.py cv.py ln -s /usr/local/Cellar/opencv/<opencv_version>/lib/python2.7/site-packages/cv2.so cv2.so 以包含网站包

PYTHONPATH

归功于jjyap

请注意,这对于export PYTHONPATH=/usr/local/lib/python2.7/site-packages:$PYTHONPATH 版本是正确的。对于opencv 2,还有一些其他步骤需要完成,例如构建opencv以及此处所述的额外模块 - opencv_contrib

答案 1 :(得分:0)

在MacOS中出现了完全相同的问题。尝试使用ls /Library/Python并得到ls: permission denied,因此我对该文件夹没有读取权限。

所以我更改了文件夹的权限:

sudo find  ~/Library/Python -type d -exec chmod 755 {} \;

它奏效了。

答案 2 :(得分:-1)

在我看来,必定存在一些路径错误。 您可以import sysprint '\n'.join(sys.path)解决或检查此问题 他们可能找到不同的地方。 我在过去遇到过类似的问题,因为我在Mac上用原始的python安装了另一个自带的python,它们是不同的。

<强> 更新

抱歉,我认为我错了,pip install cv2安装了不同的软件包,正如Forge的第一条评论所述

第二次更新

尽管我在初步答案中错了,但更新后的问题与我类似。我认为检查上面指定的路径很有用。

第三次更新

我发现你没有链接opencv包的另一件事。 实际上它只是一个小桶装置。您需要对其进行关联,然后您可以查看thisthis