5

按照此处给出的步骤,我已经完成了安装过程,但是 Python (IDLE) 给了我一个 ImportError。指南建议:

Python 可能会返回类似“ No module named cv”的错误,问题是 python 模块安装在/usr/local/lib/python2.6/site-packages. 但是,在 Debian 和 Ubuntu 上,Python 只查找/usr/local/lib/python2.6/dist-packages

您可以使用三种方法修复它(仅使用其中一种,第一种是最好的):

  1. cv.so文件从移动site-packagesdist-packages

    sudo mv /usr/local/lib/python2.6/site-packages/cv.so /usr/local/lib/python2.6/dist-packages/cv.so

但是,2.7 和 3.2 的 site-packages 和 dist-packages 都是空的。

出了什么问题,我该如何解决?

4

2 回答 2

4

我通过使用软件中心再次安装所有软件包和依赖项解决了这个问题。OpenCV Python 绑定可直接从我第二次使用的软件中心获得 OpenCV 2.3 和 Python 2.7。

3.2 的 OpenCv python 绑定不适用于 12.04。它们仅针对 Raring (Ubuntu 13.04) 开发。因此,解决方案是使用 backports,或者在 Python 2.7 上使用 OpenCv

反向移植也有一个问题,因为它们仅适用于 32 位操作系统系统,而不适用于 64 位系统。

因此,在 Ubuntu 上运行 OpenCV Python 的唯一安全稳定的方法似乎是在 Python 2.7 上使用 OpenCV 2.3

于 2013-01-03T10:22:23.290 回答
2

我还使用 OpenCV2.4.4 和 Ubuntu 12.04 获得了空的 dist-packages 文件夹。事实证明,我需要安装python-dev并且python-numpy为了使 cv.so 编译到 dist-packages 中。

sudo apt-get install python-dev python-numpy

之后,cmake再次使用构建OpenCV,一切都会好起来的

更新 它几乎取决于您的系统。

  • 在我的 Lion (10.8) 上,我安装了 java,并且 openCV 抱怨无法构建单元测试并停止在 92%。原来我必须手动创建build文件夹并将junit jar放入lib文件夹,才能让opencv编译所有测试用例。之后,一切正常
  • dist-packages在我的 ubuntu 上(12.04,全新安装和 build-essential 并且所有软件包都是最新的),一切都编译得很好,除了“没有名为 cv 的模块”并且and中没有 cv.so site-packages。四处寻找,最后发现我必须有 python-dev 和 python-numpy
于 2013-03-05T20:02:19.647 回答