在Ubuntu 12.04中安装Python的OpenCV时,dist-packages或site-packages中没有模块?

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-packages移动到dist-packagessudo 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都是空的。
发生了什么问题,我该怎么解决?

尝试使用 >>> import cv2。新的Opencv-python是cv2,而不是cv。 - Abid Rahman K
@AbidRahmanK 不行,不起作用。 - asheeshr
1
尝试这个:http://karytech.blogspot.in/2012/05/opencv-24-on-ubuntu-1204.html - Abid Rahman K
每次我尝试安装时,它没有给出任何警告或错误,但是当我尝试在/usr/local/lib中查找库时,除了python-2.7和python-3.2之外,什么也没有! >:( - asheeshr
2个回答

4
我通过重新安装所有软件包和依赖项来解决了问题,使用软件中心,第二次我直接下载OpenCV 2.3和Python 2.7的 OpenCV Python绑定。在Ubuntu 12.04上,OpenCV Python绑定没有适用于3.2版本,它们仅为Raring(Ubuntu 13.04)开发。因此,解决方案是使用backports或在Python 2.7上运行OpenCv。但是,backports只适用于32位操作系统而不是64位。因此,在Ubuntu上运行OpenCV Python的唯一可靠且稳定的方法似乎是在Python 2.7上使用OpenCV 2.3。

2

我也在使用OpenCV2.4.4和Ubuntu 12.04时遇到了空的dist-packages文件夹。结果发现我需要安装python-devpython-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编译所有测试用例。之后,一切正常。
  • 在我的ubuntu(12.04,新安装,具有基本构建和所有软件包均为最新版本),一切都编译得很好,除了“没有名为cv的模块”并且在dist-packagessite-packages中没有cv.so。搜索一番,最终发现,我必须安装python-dev和python-numpy。

2.4版本的支持包因为Raring版本的问题在安装上给您带来了麻烦吗?我遇到了很多错误/问题,每一个我都不得不手动覆盖。 - asheeshr

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接